「アジャイルプラクティス」完読 アジャイルLV3ですね自分は。(達人はLV40オーバー) | Beautiful Dreamer != SE

Beautiful Dreamer != SE

つれづれなるままに

アジャイルプラクティス完読

なんやかんやと時間がかかりました(細切れ時間で5日使った)


アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣/Venkat Subramaniam
¥2,520
Amazon.co.jp

やっぱりおもしろい。

原著もいいということもあるだろうけど

監訳をしてくれた

角谷さんと木下さんが

アジャイル実践者ということがやはり重要なのでしょうかね?



それと「悪魔の声」と「天使の声」の展開が

読んでいてとてもしっくり来るというか

納得感があり、良い刺激とリズムです。


例えば

[悪魔]

人のコードに問題を見つけても、自分の胸の内にしまっておくんだ。

言われたことだけおとなしく従っておけ。


[天使]

正しいことをしましょう。

時にはそれが難しいこともあるでしょう。

だからこそ勇気が必要なのです。



「こんな気分」の項は

雰囲気としての現実身をイメージしやすく


「バランスが肝心の項」は

導入に当たって、盲目的にならずに着実に進んでいくために

考慮すべき事項が盛り込まれています。


バランスとリズムがとてもよい本だと思いました。


達人プログラマに並ぶバイブルとなりそうです。

来年から会社の机に並べておこうと。

日々自分を見つめなおす1冊になりそうです。

来年の目標はここに書かれていることが習慣化して

思考に染み付いていることですね。



まずは、できるところから一歩ずつやっていこう。

職場で薦めてみたところ

1人目に貸す予定ができたのがまずはうれしいです。



自分がまずはやらなけらばと思うこととしては

・チームに投資、学習成果の共有

・いついかなる時でもプロジェクトをリリース可能な状態にしておくのです

・アプリケーションのデプロイを自動化しましょう

・作る前から使いましょう(TDD)

・残作業を計測しましょう(かんばん&バーンダウンチャート)
・コードを書くときは編集、ビルド、テストのサイクルを短く

・スタンドアップミーティングをしなさい



======================================================

アジャイルプラクティス

  • ソフトウェア開発
    • 継続的なもの
    • プロジェクトですらない
  • アジャイルツール
    • wiki
    • バージョン管理
    • ユニットテスト
    • ビルドの自動化
  • 初心
    • 仕事
      • 成果を上げるのが仕事
      • 問題の修正が最優先
        • 非難してもバグは直りません
      • その他
        • まったくミスをしないのであれば、おそらく一生懸命やっていない
        • 「自分のせいじゃない」ということが正しいことはまずない
        • 誤解したことより、どこが誤解しやすかったか?
    • 応急処置→明瞭さがなくなる
    • 人ではなくアイディアを批判する
      • 主体性
      • ちょっとした思いやり
      • 礼儀正しさ
    • タイムボックスを設定
    • 議論
      • 反対フェーズ
      • 賛成フェーズ
    • 正しいことをしましょう
      • 誠実に
      • 勇気を出し
      • 真実を伝える
  • 育む
    • イテレーティブに学習
      • 毎日少しずつ
      • 掘り下げたいテーマ
      • ヒント
        • 話題収集
        • コミュニティー
        • カンファレンス
        • 貧欲に読む
    • チームに還元
      • 学習成果の共有
      • あなた自身とチームのレベルを引き上げましょう
    • 時がきたら習慣を捨てる
      • 高い代償を払ったメンタルモデルを軽々とは捨てられない
    • わかる
      • 問題を解決するためには全体像を把握しなければならない
      • なぜと問い続けなさい
      • 根本の理解
  • アジャイルであること
    • 強調性
    • フィードバック
    • はやめに、こまめに
    • 「偉大なプログラマ」になる必要は無い、「偉大な習慣を身につけたプログラマ」
  • アジャイルマニフェスト
    • 人と人との交流
    • 動作するソフトウェア
    • 顧客との強調
    • 変化に適応
  • ユーザーが求めるもの
    • 顧客が判断する
      • 自分達が判断すべきではないことは何かを決定する
      • プロジェクト用語集
    • 設計
      • 自分でもよく分かっていないものを、厳密にしても意味がない
      • 戦略的設計
        • 正しい方向を指し示す地図
      • CRCカード
      • 計画づくりが肝心。計画自体や計画の内容よりも。
    • 設計ツール
      • ホワイトボード
      • スケッチブック
      • 付箋紙
  • フィードバック
    • ユニットテスト
      • フィードバックコーディング
      • メリット
        • すばやいフィードバック
        • 堅牢なコード
        • 設計ツール
        • 開発者の自信
        • 問題解決の探索装置
        • 信頼のおけるドキュメント
        • 学習教材
      • ユニットテストは投資
      • ユニットテストへの抵抗感が多いほどまずい設計になっていることが多い
    • 作る前から使う
    • 重要なビジネスロジックのテスト
    • ありのままの進捗を計測
      • 残作業を計測
    • ユーザーの声
      • 理由はどうあれすべてチームの問題だ
      • あらゆる不満に真実が潜んでいる
      • 「それは仕様です」は終わっている回答
  • コラボレーション
    • アーキテクトもコードを書くべき
    • フィードバックが無い=進化の停止
    • メンターになる
      • みんなに問題を解決する機会を与えなさい
      • 分け与えてこそ知識は増える
    • 共同所有


この2冊は久々に読み返してみよう。


達人プログラマー―システム開発の職人から名匠への道/アンドリュー ハント
¥3,990
Amazon.co.jp

ハッカーと画家 コンピュータ時代の創造者たち/ポール グレアム
¥2,520
Amazon.co.jp