PoohSunny's blog

生きるために食べるのか、食べるために生きるのか。

Scrumは、おバカさんでも、うまくいく

私はScrum好きです。でもなぜScrumなぜ好きなの?っていうとタイトルの通りです。

どういうことか。

まずはこれを見てみてください。Scrum生みの親 Ken Schwaberのプレゼンテーションです。 最初は認定スクラムマスター研修でみた気がするのですが、以来時々みています。 13分33秒くらいからが好きなところ。


Scrum et al.

14:22くらいからを特に話題にしたいので、雑に日本語にします。

スクラムはおバカさんともうまくいきます。
おバカさんを集めグループを作ったとしましょう。
コンピュータサイエンスやソフトウェアエンジニアリングの技術を学んだことはないでしょう。
お互いを嫌っていて、ビジネスドメインを理解せずツールも使い慣れない。
そうすれば毎インクリメントで「ゴミ」ができます!(会場笑い)

こんな感じ。でもこの後がとても興味深いです。

これは良いことです!
あなたは毎スプリントの終わりに、自分たちがどこにいるのかを知りたかったはず。
(中略)
透明性です。つまり全ての人が、今どこにいるのかをいつも知っている、という状態です。

そっか。これが透明性の確保ということなのか、というのが最初にみたときの感想でした。 最終的には価値を出すのにコミットするためですが、そのための方法として検査、適応、透明性を確保する。この無理のない感じが好きです。 以来、これがScrumを導入しようとするときの私の一番のモチベーションになっています。

おまけ:心理的安全性の確保

透明性を実現しようとすると、とっても大きなマインドチェンジが必要になると経験上思っています。 それは、「うまくいかなかったことでも積極的に明らかにしていく」ということです。

誰だって失敗談をせっせと話すのとか、うまくいかなかったこと、苦しかったことを共有するのは心理的にも辛いと思うんです。

でも、それをすることでチームの現在地がわかる、なので安心して共有していきましょ! という空気作りするのがとても大事ですし、導入時はそこに気を遣っています。今だと心理的安全性の確保とも言えるかもしれません。

透明化して安心して改善していける強いチーム作っていきましょう。

Rakuten Technology Conference 2017 に参加してきた。 #rtech_unconf

行ってきたので参加レポートです。

Mob Programming at Hunter Industries

Agile2017でお会いして、ランチタイムに色々とお話させていただいたChrisさんのセッションを聞きに行きました。

前日のこれに参加予定だったのですが、急遽仕事で行けなくなってしまって哀れな気分だったので、久々にお会いできて嬉しかった。

メモと気づき

  • ScrumじゃなくてKanban利用。
    • やっぱりそうよね。
  • 自分がその時学びがない、もしくは貢献できないのであれば別なモブに移動。
    • 複数モブやってるとこれができるね。Hunterは面接時もモブプロするらしいので、文化情勢はそこでしているそう。
  • "Slowly moving forward but never stop."
  • もともと4人のシニアエンジニアがいてその人たちにAsk for helpしていた。
  • モブやってると、数人で一台のコンピューターだからお金かけられる。それを利用して複数のIDEを入れてる。ドライバーが変わればIDEやキーバーインドの設定を変える。モブタイマーが自動的に切り替えてくれる。
  • いつでもマスターにpush
  • 見積もらないから実装する時間がいっぱいある。
    • noestimates との合わせ技。この辺はやっぱりHunterを見学して見たいと強く思うポイント。
  • consistent progressを大事にしていて、プロダクトの持続的成長がポイント。予算があってのプロジェクト型ではない。
  • ドキュメンティングは色々難しいけど、ベストなのはAutomated Scriptになって「動く」こと

Chrisさんありがとうございました!

Tech Family Park / テックファミリーパーク

今回は人生初の家族連れ参加だったので、私がChrisのセッションを聞いている間に嫁子どもはテックファミリーパークに行ってました。

CoderDojo Futakotamagawa (CoderDojo 二子玉川)さんのコーナーでずっとレゴにプログラミングして遊ばせてもらっていたようです。

f:id:swimming_pooh:20171105091837j:plain

自分が実行ボタンを押したものがその通り動くのが面白かったのか、ただ箸が転げてもおかしい年頃だからなのか、動くレゴをみて子どもたちがゲラゲラ笑っていて私もとても嬉しかったです。 1時間以上滞在してスタッフのみなさんすいませんという感じだったのですが、最後の方は動かすステップ数も増えていて、短時間でも随分成長するなぁ子どもの楽しむってことと、成長のスピードってすごいなぁと改めて感じました。

スタッフのみなさん、長時間遊んでいただきありがとうございました!!

ランチ

f:id:swimming_pooh:20171028130535j:plain

ゴチになりましたぁ!!!

ランチの内容だけでなく、スタッフの方の動きにも嫁が感動しておりました。 子どもの分も含めちょっと重いトレイを運んで席探ししようとしていたら、親切なスタッフの方がトレイを持ってくれて、空き席までご案内いただいていました。 子連れランチは大抵地獄なのですが、お心遣いいただいたおかげで随分スムーズでした。ありがとうございました。

全体を通して

子どもの機嫌の関係であまり長居はできなかったのですが、会いたい方には会えたし、スタッフの方にもとてもよくしていただいたので大満足でした。

家族でのカンファレンス参加も新鮮で、自分の人生の中で一つの目標にしてたのですが、こんなに早くかなって幸せです。(子どもが小学生過ぎないと厳しいかなと思ってました。)

お会いしたみなさん、スタッフのみなさん、ありがとうございました!!

自分を育ててくれたオブジェクト指向の本たち

チームメンバーと1 on 1してて、オブジェクト指向とか良い設計とか体系的に学びたいんだけどどうすれば。。。 って話が出て、どちらも体系的に学ぶ方法は知らないので、自分が何を読んで勉強してきたかを話をしていた。 おそらく再利用するから考え直して棚卸ししとく。

最初の一歩

一番最初は会社に入った先輩に勧められて読んだこれら。

増補改訂版Java言語で学ぶデザインパターン入門

増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編

特にマルチスレッド編の方は、当時それを読むのに十分な知識がなくて挫折した記憶がある。 (後にいろんな苦労をして読み直して良い本だったと気づいた)

つかいどころ模索期

デザインパターンは頭に入れたけど、どうも普段の仕事に応用できない、って課題感があって悩んでいた時に助けてもらった本たち。

Java言語で学ぶリファクタリング入門

まずこれで自分の書いたコードや、今仕事で使っているコードのどこがよくないか、どうしたらいいのかを教えてもらい(この本はその時のも問題意識にぴったりハマってた)、少しずつ仕事コードへの適用を始めた。 で、もっといろんな部分に適用できないかな、自分の引き出し増やしたいなと考えてこれを辞書的に読み始めた(当時は新装版じゃなかったけど)。

新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)

これは読んでると何かしら仕事に活かせる部分があって、行きや帰りの電車ですこーしずつ読み進めてた。

仕事で少しずつデザインパターンを適用するようになって、本格的にこれを読むようになる。適用しどころが何となくわかり始めるのもこの頃

オブジェクト指向における再利用のためのデザインパターン

そしてしばらく麻疹にかかった感じになっていく。

実践期

自分でどうも無理してデザパタを使っているような感じが来て、良い設計って何だーって悩んでいた時に読んでなるほどって思った本。

アジャイルソフトウェア開発の奥義 第2版 オブジェクト指向開発の神髄と匠の技

その中での言及があった(多分)ので、一緒にこれも読んでた。

Clean Code アジャイルソフトウェア達人の技

これを読んでこうやって実践するのかーってのが知識としてしっくり来た感じ。その後この本と出会ってそれが深まったように思う。 ファサードパターンの使い方に感動したなーという遠い思い出。

オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)

一周回って学習期

その後、オブジェクト指向は禁止するべきを読んで、がびーんってなって慌てて読んだ。

オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング)

エキサイティングだったけど辛かった。なお先述のブログの注釈を後に読んで再度がびーんとなるのだが、その時にはこの本を一周していた。

まだ未読だけど読んでみたい本

現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法

これはKindleで予約して(もう配信されてるはず)、積読状態。読む。

あとこのブログを書くに際して再度先述のブログエントリー読み直したのだけど、そこに載ってたこれも読みたい。

オブジェクト指向をきちんと使いたいあなたへ (Software Design別冊)

最後に

おすすめ本あれば教えてください!!