ダグラスの日記

これはみんなの為のブログであり、誰のためのブログでもない

エンジニアの心構えを読んだ~Write Code Every Day~

 

読んだ。

 

speakerdeck.com

 

 

関連リンク

 

snowlong.hatenablog.com

 

johnresig.com

 

以下、アジェンダなどをツリー化。

 

学び方を学ぶ

    • 学びと脳
      • 感覚記憶、短期記憶、長期記録
    • 脳内インデックスを育てる
    • How
      • 月に1冊のペースで技術書を読む
      • 手を動かして学ぶ
        • 「わかる」は後からついてくる
          • やる→できる→わかる→できる・・・
        • 写経
      • 毎年少なくとも言語を1つ学習する
      • 身の回りをプログラミング対象にする
        • 例:書籍「を」プログラミング対象にする
      • アウトプットを行う
        • アウトプットとフィードバックループ
        • Blog記事を書く
        • 情報発信、blog、発表、公開などは、数学の(未解決問題の)証明ではなく、料理のようなもの
        • 雑誌記事、書籍の執筆
        • 技術同人誌の登場
        • 講演する(まずは内輪から)
        • 動画配信
        • コードを公開する

 現役プログラマでいるために

毎日コードを書く

  • JQuery作者John Resigは週末に自分のプロダクト開発を頑張ろうとしたが、失敗
    • 平日と同じ馬力では書けない
    • 全ての週末が空いているわけでは無い
    • 一週間は長い。コードを忘れてしまう
  • そこでやったことは・・・
4つのルール
  1. 毎日コードを書くことブログ、ドキュメント、その他は、コードを書いたらやって良い
  2. 意味のあるコードを書くこと。インデントやフォーマットの修正、可能ならばリファクタリングもコード書きにはカウントしない
  3. 深夜24時前に終わらせること。
  4. 書いたコードをGitHubで全てOSSにすること
John Resigに起こった変化(1)
  • 必要最小限のコードへの集中
    • 1日30分~1時間程度で意味のあるコードを書くことが強いられる(休日にはもっとかけられる)
  • プログラミングの習慣化
    • GitHubに草を生やすのが目的ではない。
    • 自分で自分自身のために生活習慣を変えることが大事
  • 不安との戦い
    • 以前は「十分」に進んでいるか
    • 「十分」に完成しているか不安だった
    • 毎日コードを書いてみて、進んでいるという実感は、実際の進捗と同じぐらい重要だという気付きを得た
John Resigに起こった変化(2)
  • 週末の過ごし方
    • 以前は開発のすべてを週末にかけて失敗していた
    • いまや週末はそれほど重要でなくなり、リアルライフを充実できるようになった
  • バックグラウンド処理
    • 散歩中、シャワー中、常にコードのことをバックグラウンドで考えるようになり、良いアイデアが浮かぶようになった
  • コンテクストスイッチ
    • 以前は週に一回の開発だったので、コンテクストスイッチのコストがあった
    • 今は毎日なのでそれがない
john Resigに起こった変化(3)
  • ワークライフバランス
    • 仕事/生活/自分のプロジェクトのバランスの取り方が分かったのが最大の収穫だった
    • 毎日やるという事は、バランスを取るという事
  • まわりからの理解
    • 「毎日コードを書く」という習慣を公言したことで、パートナーからの理解も得られるようになった
  • どれだけコードを書いたか
    • この習慣を続けると、書くコードやアウトプットは自分でも覚えられないくらいの量になり、充実感を得られる

年下から学ぶ

  • 過剰適合とタコツボ化
  • ベンチマーキングとアンラーニング
    • 定期的に自分のスキルを棚卸する
    • 積極的に外部に出て、自分のスキルを相対化する
    • 使う道具を定期的に変える
    • 未知のコミュニティに参加する
    • 若者から学ぶ
    • 若者と同じ土俵で競う
  • ペアプログラミングはベテランにとってはアンラーニングのチャンス

過去から未来を見る

  • 技術は振り子、技術は螺旋
  • 講演「技術選定の審美眼」
  • T字型ではなく、複数の専門性の柱を

大事なことに集中する

  • エッセンシャル思考

おわりに