タグ

ブックマーク / yashigani.hatenablog.com (15)

  • これからマネージャーになるエンジニアのあなたへ - yashiganiの英傑になるまで死ねない日記

    こんにちは、新米ディレクターのid:yashigani_wです。 この記事ははてなディレクターアドベントカレンダー2日目の記事です。昨日はid:moretのそろそろ5年生なので右も左もわからない新卒のころの自分にアドバイスする - el cineでした。 私は8月にアプリケーションエンジニアからディレクターになりました。 はてなではディレクター職には担当するサービスの成長に責任を持つプロダクトオーナーとしての役割と、担当するチームの成果を最大化するマネージャーとしての役割が求められます。 マネージャーというと、多くのエンジニアはあまりなりたがらないとおもいますが、それはマネージャーに求められる責任を具体的にイメージできないことや未知の仕事に対する不安からではないでしょうか? この記事は私の経験から、これからマネージャーになるエンジニアに向けてマネージャーがまず意識すべきことと、最初に陥るで

    これからマネージャーになるエンジニアのあなたへ - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2016/12/02
    インポスター症候群と呼ぶのですね
  • 筋の悪いコードレビュー - yashiganiの英傑になるまで死ねない日記

    たまにコードレビューのしかたを紹介するエントリーを目にすることがある。その中でも反響があるものは実際によくまとまっており、なるほどと感心することもよくある。しかし、中にはコーディングスタイルやイディオム、ちょっとしたテクニックを使うように目を光らせるように助言されているものがある。誤解を恐れずに書くと、それらのトピックは無視できるようなものばかりであり、そのような指摘ばかりつけるのはあまり褒められたものではないなと感じる。これは私自身にも言えることだが、瑣末ことを指摘しすぎてしまうあまり、質的な議論が霞んでしまうことがままある。レビュイーにとって、指摘が学びになることは確かに存在するのだが、コードレビューの目的はあるべき実装を議論するものであり、老婆心からそれを繰り返すことは必ずしも良いレビューとは言えない。 では、当に良いコードレビューとはなにか。それは、コーディングスタイルのような

    筋の悪いコードレビュー - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2016/07/06
    "コーディングスタイルのような事項の指摘ではなく、アプリケーションにとってその実装が好ましいかどうかを議論するものだろう" 耳が痛い
  • 人の挨拶を嗤うな - yashiganiの英傑になるまで死ねない日記

    挨拶がないことや挨拶もできないのかと怒る人がたまにいる。けど、そういう人に限って自分から挨拶しないという経験則があって、挨拶する側じゃなくて挨拶される側の理論だなと耳にするたびにおもう。唯一例外は学校の先生で、彼らは挨拶しろと怒鳴りつけて、実際に挨拶してる。これは信条の話だが、コミュニケーション不全の原因を相手に押しつけるべきではない。挨拶されないのはされない側にされないなりの理由があるわけで、怒るくらい気に入らないなら人を変える前に自分を変えるべき。平たく言うと、挨拶しない側にとって存在感が無い。挨拶されるために自分を変えるのはいかにもコスパが悪いと感じるかもしれないが、気になるあの子に声かけられるために自分を変える、と言いかえるとなんか尊い感じがする。そういう感じ。 挨拶されないことに怒るより、自分から挨拶したほうが生まれる不幸は少ない。とやかく怒らずに普通に挨拶をすればよい。それを踏

    人の挨拶を嗤うな - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2016/06/30
  • UITableViewでレイアウトの違うセルをどう扱うか #関モバ - yashiganiの英傑になるまで死ねない日記

    毎月恒例の関モバ #8に参加しました. kanmoba.connpass.com 今回は,UITableViewで複数のレイアウトを持つセルをどう扱うかというトークをしました. speakerdeck.com 骨子としては,UITableViewで複数のレイアウトを持つセルを実装するとき,いくつかの方法がありますがコードでレイアウトをいじるとAuto Layoutの指定が複雑になるので,レイアウトのパターンごとにxibを分けるといいというものです. 複数のxibを使うことについて少し補足 UITableViewにおいてxibを増やす場合,xibの登録やセルのリユースなどセルを使うための決め事が複雑になることが問題になります. セルを複数のView Controllerで使いまわしたい場合,それぞれで同じ実装をすることが強いられます. そこで,このトークでは実装パターンとしてEntryCel

    UITableViewでレイアウトの違うセルをどう扱うか #関モバ - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2016/03/17
  • CFNetworkのラッパーを書いた - yashiganiの英傑になるまで死ねない日記

    シンプルなCFNetworkラッパーを公開します 色々事情があって,CFNetworkのラッパーを書いて棄てたので公開します. CFNetworkとは Cocoa/Cocoa touchではNSURLConnectionっていうクラスがあって,基的にはそれを使ってHTTPなどの通信をします. Foundationクラスはより低レイヤのCore Foundationのラッパーなので,NSURLConnectionも実体はCFNetworkになってます.つまり,CFNetworkを使えばオリジナルなNSURLConnectionを作れるということです. 当初はいい感じにまとめて,ARC対応のポストASIHTTPRequestのポジションを狙おうと思ってたんだけど,ちょっとヘビーすぎて諦めました.ASIHTTPRequestはマジでお化けプロダクトです.すごすぎる. どういうときに使うべきかっ

    CFNetworkのラッパーを書いた - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2015/09/29
  • Lazy stored propertyについて発表しました #関モバ - yashiganiの英傑になるまで死ねない日記

    この間の関西モバイルアプリ研究会#4でLazy stored propertyについて発表しました. speakerdeck.com Lazy stored propertyについて大まかな使いドコロと,テスタブルな設計をする際にこいつを使うと依存の注入に使いやすいのではないか,というアイディアについて話しました. 簡単にまとめると,Lazy stored propertyを使えば,初めてアクセスするときまでインスタンスの生成が遅延されるので,それまでにテストの準備ができるよねということです. lazy は最もすきなキーワードなのでめっちゃオススメです! 追記 Twitterで@starfruits_jさんと@matuyujiさんにimplicitly unwrapped optionalなpropertyをlazyにしたときにnilを代入することで再度初期化処理が走ることを教えていただき

    Lazy stored propertyについて発表しました #関モバ - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2015/07/31
    Lazy programmerになりたい
  • 初めてエンジニア面接をすることになって準備したことと反省 - yashigani?.days

    photo by MDGovpics 技術面接を担当する機会があった. 今まで,面接されることはあってもする側になるのは初めて. 短い時間でよい成果を得るため,事前に色々と準備をしてから望むことにした. 最初に 面接といえば質問だ. 逆に言うと質問の集合が面接と言っても差し支えない. そこでなにを質問すべきか考えた. 採用面接の目的は一緒に働く仲間(を増やす|になる)ということだ. つまり,お互いに一緒に働きたいと感じるエンジニアなのかを判断できればパーフェクトコミュニケーションと言えるだろう. 事前準備 会話は3往復くらいさせると深く人となりがわかるらしい. なにも用意しないとそんなのは絶対無理なので,事前に質問を用意しておく. エンジニアの場合,応募資料はだいたい以下の2つがある. ブログやGitHubなどインターネットでの活動 職務経歴書 この2つからエンジニア像を作りつつ,質問した

    初めてエンジニア面接をすることになって準備したことと反省 - yashigani?.days
    koogawa
    koogawa 2015/03/01
    メモる
  • Hatena Engineer Seminar #4で「はてなのiOSアプリとSwift」という発表をしました #hatenatech - yashiganiの英傑になるまで死ねない日記

    2/7に開催されたHatena Engineer Seminar #4 @Tokyoで「はてなのiOSアプリとSwift」という発表をしてきました. 現在,はてなのiOSアプリ開発ではSwiftを標準的に採用しており,その経験を紹介した形です. 発表スライドはこちらから御覧ください. Swift with apps by Hatena // Speaker Deck 補足 例に使っているコードについて 例としてあげたSwiftのコード例は冗長なものですが,型推論できずコンパイルできなかったので意図に助長な実装にしています. 推論がキチンと働けばsortedに与えるclosureの引数は省略することができます. func latestHotentry(bookmarks bs: [Bookmark]) -> Bookmark? { // 仕様どおりに型推論されればこれでよい return b

    Hatena Engineer Seminar #4で「はてなのiOSアプリとSwift」という発表をしました #hatenatech - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2015/02/10
  • Share ExtensionでOpen URLするとかなんとか - yashiganiの英傑になるまで死ねない日記

    注意: beta 5時点での情報です iOS8で追加される待望のApp Extensionですが,あくまでExtensionなのでContaining appを呼び出したくなることがあると思います. App Extension Programming Guideにもあるように,App ExtensionとContaining appとの連携にはShared resourcesのほかにOpen URLを利用します. Open URLというと従来より形式化された手法ですので,とくにはまりどころは無いと思っていたのですが,はまりどころがあったので紹介させていただきます. App ExtensionにはUIApplicationが無い Open URLといえばご存知のようにUIApplicationを取得すればお気楽に実装できるのですが,App ExtensionにはUIApplicationのo

    Share ExtensionでOpen URLするとかなんとか - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2014/08/14
    “UIWebViewこそ人類に残された最後の希望”
  • 株式会社はてなに入社しました - yashiganiの英傑になるまで死ねない日記

    7/1付けで株式会社はてなに入社しました( 15ヶ月ぶり2回目) モバイルアプリエンジニアとしてやらせていただきます. 株式会社はてなのアイオーエスデバイス向けアプリ,オレニマカセローという心持ちです. よろしくお願いします! はてな広告 このエントリははてなの業務時間外に歓迎会でビールを飲みまくったあげくアニソンを聴かされまくった筆者によって書かれました. 株式会社はてなでは真のCocoaエンジニアを募集しています. http://hatenacorp.jp/recruit/career/sp-application-engineer

    株式会社はてなに入社しました - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2014/07/02
  • フェンリル株式会社を退職しました - yashiganiの英傑になるまで死ねない日記

    photo by RelaxingMusic 6月をもって3年半ほど在籍したフェンリル株式会社を退職します. ふりかえり 入社当初は受託開発の部署に配属されたのですが,実績のわりには人数も少なく「えらいところにきてしまった」感があったことが記憶に残っています. 当時はスマートフォンアプリが黎明期なだけでなく,クライアントを含めて初めてのことばかりだったにも関わらず,中途採用とはいえほとんど新卒だった自分(新卒の年の11月に転職した)には戸惑うことも多く,手探りで仕事をしていました. 今でこそCocoaの人ですが,この頃はAndoirdアプリも担当していたので,最新技術を追いかけるのが大変だったり,iOSと比べるとAndroidアプリどんなけ大変やねん!と心を闇に染めたり,ひとつの案件のアプリを両方向けに書いたりで挑戦的なことが多かったです(結果的にAndroidの悪口言いたいだけみたいにな

    フェンリル株式会社を退職しました - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2014/06/17
    おつかれさまでした!
  • 副業&リモートワークやってみた - yashiganiの英傑になるまで死ねない日記

    photo by Paul Mayne ひょんなことから,知人より「アプリ作ってくんない?」とオファーがあったので,しばらくほいほいとやってました. 副業というやつです. しかも,開発は基リモートでっていうんで,ちょうど流行に乗っちゃったりしちゃった感じです. リモートワークは,Rebuild.fmでも話題になってたし,副業ってのもあんまりしてる人はいないと思うし,興味ある人はいると思うので体験談を共有しておきます. 背景 作ったもの photo by Sean MacEntee 新しいサービスを始めたい,というのでそれのクライアントアプリを開発しました. アプリとは別にサーバのバックエンドも同時開発しましたが,そっちは別に担当する人がいました. 規模感は要件が決まっていれば,フルタイムだと1ヶ月くらいで完成させて,ブラッシュアップまでさせられるくらいの規模です. しかし,今回のプロジェ

    副業&リモートワークやってみた - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2014/05/02
    リモートワークに興味があるのでとても参考になりました
  • Objective-Cが好きになるTips & Hackを勝手に補足 - yashiganiの英傑になるまで死ねない日記

    TLで見かけたこのスライド,いいところをついていてちょっとObjective-Cをやったことのある人が,もっと興味を持つきっかけを作るにはすごく良いスライドだと思った. Objective-C が好きになる Tips & Hack from Taketo Sano けど,内容を見た感じ初学者を対象としているわりに,ここで取り上げられているTipsやHackの負の側面に対するフォローが無い. 一応「やるかやらないかはあなた次第」とあるが,なぜというところが抜けているので初学者には判断できないと思う. 特に紹介されている例はあまり行儀の良い方針では無いように感じたので,これを初学者がそっくりそのまま真似をするのはあまりよろしくない. 反響も結構あるようで気になったので,勝手にこのTipsやHackの負の側面(行儀の良くない面)について補足をしておく. カテゴリメソッドの命名について このスライ

    Objective-Cが好きになるTips & Hackを勝手に補足 - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2014/02/27
  • UI変更バトルに勝利するための方法考えた - yashiganiの英傑になるまで死ねない日記

    UI変更批判バトルと複数のバージョンのウェブサービスを同時に配信することについて - hitode909の日記 を読んで,同じようなこと前から考えていて昨日ひょんなことからブレイクスルーがあったので共有します. ウェブサービス,UI変えると,改悪とか,元に戻してとか,そういう意見が出る. ウェブサービスだけじゃなくてアプリでも同じような問題抱えていて,アプリの場合はストアの評価システムみたいなのがあって,そこにこういう意見が書かれまくる. アプリの場合はウェブサービスと違って,ユーザの選択でアップデートしないとかもできるので,余計に状況が悪くて「こんなことならアプデしなけりゃよかった」とかも平気で言われる. 実際iOS 7が出たときに担当しているアプリで同じようなこと経験したことがあって,iOS 7のあたらしくなったiPhoneにいつも使っているアプリが完全に対応したら最高のユーザ体験だろ

    UI変更バトルに勝利するための方法考えた - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2013/12/25
    "リリースしてしまったものについては,「これが至高である」みたいな態度をしつつ,絶対に先祖返りさせることなく真摯にユーザの声を聞いていくしかない"
  • 子どもを守るためのライブラリをリリースしました - yashiganiの英傑になるまで死ねない日記

    最近歩きながらスマホを使う人よく見ますね. 夢中で駅のホームに落ちちゃったとかいう話題もあって,社会問題化しつつあります. そんな歩きスマホは自分の身が危険に晒されるだけではありません. みなさんの目線より50cmくらい低いところを一生懸命歩いている,子どもたちにとってもすごく危険なんです. ご存知でしょうか? 大人は普通に歩いてても,子どもにぶつかるってパターンはすごく多いです. ただでさえ危険なのに,歩きスマホしてる大人は彼らにとっては脅威以外の何者でもありません. そこで,iPhone 5sより搭載された M7 を利用した,歩きスマホを警告するライブラリ Stop-Walking-iPhone をリリースしました. yashigani/Stop-Walking-iPhone · GitHub アプリこのライブラリを組み込めば,あなたのユーザが歩きスマホで子どもを傷つける機会を減らすこ

    子どもを守るためのライブラリをリリースしました - yashiganiの英傑になるまで死ねない日記
    koogawa
    koogawa 2013/12/15
    なるほど、CMMotionActivityでWalkingとRunningを検知してるのか!ソース読ませていただいたけど、とても勉強になる
  • 1