2011/07/25

「達人プログラマー」朗読会

新人に向けて、@kakutaniが「達人プログラマー」を朗読するありがたい会が始まったので、横に着席して仕事をしていました。

「達人プログラマー」は学生のころパラパラ読んで、よくわからなくてそれっきりだったのですが、22刷の技術書なんてそうはないので、もう一度ちゃんと読もうかなぁ。

達人プログラマー―システム開発の職人から名匠への道
達人プログラマー―システム開発の職人から名匠への道

2011/07/24

新人に向けてオブラブLTをもう少し詳しくお話ししました

今年は新人向けに「先輩のありがたい話」シリーズというのをやっていますが、その一コマとしてオブラブのLTをもう少し詳しくお話しました。

あわせて読みたい
新人向けにWeb日記勉強会をした - HsbtDiary

アプレンティスシップパターンについてkwsk

アプレンティスシップパターンについては、まだインターネットの海に放てるほど消化できてないのですが、何を話したかざっくりと言うというと
  • 私がなぜこの本が好きなのか
  • 私が好きなパターン「壊していいオモチャ」
  • みなさんに贈るパターン「得意領域への撤退」

これから長い技術者人生の中で、自分の無力さが嫌になることや、周りの環境が嫌になることもあるでしょう。だけど、それはみんな同じだし、この本がそれを乗り越える手助けになるかもしれない。という話をしたような気がします。

私が「独り言」を大切にした理由が、アプレンティスシップパターンで整理できた

アプレンティスシップパターンの中では「ストラディバリの工房」が例に出されています。(ストラディバリは非リア充だったらゲームや漫画でよく出てくるから知ってるし、リア充は普通に知っているから説明は不要だよね、と言おうとしたら結構知らなくてびっくりした)

みなさんご存知の通り、ストラディバリの弟子は師匠の作った楽器を超えるものを作ることができませんでした。その理由は、ストラディバリ本人の暗黙知の中に、ストラディバリウスをそれとたらしめる秘密があったということです。書籍でも補足していますが、彼が弟子に技術を伝承しようとしなかったという意味ではなく、彼が教える必要がないと思ったことや、本当に無意識に行っていたことこそが、重要だったのではなかったのかということです。

これを読んで、私の「独り言」は正しい方法だったと確信しました。

私たちは、たった1行コードを書くだけでも、自分の中にある知識を(意識的に、若しくは無意識で)総動員してキーボードを叩いているはずです。その知識のどこか一つでも欠けていたら、もしくは別の道に進んだら、完成するコードがまったく別のものになるでしょう。

なので、決定事項として「こう書くのがいい」と言うだけじゃ意味がないんです。自分の考えた道筋をすべて話すんです。(時間と自分のモチベーションが保つ範囲でね)

(と、書いていて気付いたんですが、話す側が内容を選ばない方がいい。ってことなのかなぁ)

新人と思って油断していたら

途中、「社内だし、新人相手だし」と油断して自分の身の丈を超える話をしてしまって、あわててごまかして次に行こうと思ったら、@shimosukにしっかりつっこまれて背筋が伸びる思いでした。

そういうところをしっかりつっこめるのはえらいなぁと。(さすが@kakutaniが見ているだけのことはある!)私がそういうことができるのようになったのは、今は無きLLWG合宿で@kakutaniに「新人のくせになに遠慮してるの?」と言われたのがきっかけだったな。

人に(教える|教わる)ってことがどういうことなのか

新人それぞれが、なにか考えるきっかけになってくれれば幸いです。

アプレンティスシップ・パターン ―徒弟制度に学ぶ熟練技術者の技と心得
アプレンティスシップ・パターン ―徒弟制度に学ぶ熟練技術者の技と心得

2011/07/22

なぜ私はこんなにも「アジャイルサムライ」が好きなのか

読者の声に載せていただいたので、まずはそれを。
アジャイル宣言の背後にある原則から実践的なプラクティスまで、先駆者達の暗黙知にしか見えなかったものが余すところなく書かれています。アジャイルサムライにとっての五輪の書と言える一冊。

社内の人が関わった本がでるのが楽しみ

私は、永和の人が関わった本が出るのをいつも楽しみでしかたないんです。なぜかって、そのとき先輩や同僚が仕事で実際に使ってるネタとか、大切にしていることが本という形になって世に出るんですよ。わくわくしますよね。この本を始めて読んだときも、監訳者の2人が今まさに仕事でネタにしていることが満載で、すごくすごくわくわくしながら読み進めたのを覚えています。

やっとアジャイルについて話すことができるかもしれない

アジャイルジャパン2011のサテライト富山でお話させてもらいましたが、私はずっとアジャイルな開発をしてきたつもりでいました。でも、その時のスライドを見ていただければわかるかと思いますが、どうしたらアジャイルって言っていいのか、どうなるとアジャイルじゃないのか、その辺が実はさっぱりわからなかったんですよ。

でも、もう大丈夫!私にはアジャイルサムライがあるから!

とはいえ、まだスタートラインに立っただけです。私のサムライ戦記はまだ真っ白ですからね。

身震いする技術書に出会ったことはありますか?

私はあります。それも2冊。1冊目は「アジャイルな見積りと計画づくり」で、2冊目が本書です。

「アジャイルな見積りと計画づくり」では、「規模を見積もり、期間は算出する」というのが出てきたときに、「これか!こういうことなのか!」とものすごい衝撃を受けたのを覚えています。それまで、規模の見積りというのを、みんながいいと言うのでなんとなくやっていましたが、なぜそれがいいのかをついに知ることができたんです。

それと同じくらい心を動かされたのが、著者のJonathanの最後の一文でした。「ここで、この最後でその一文か!」と、朝の総武線で思わず声を出しそうになったのを覚えています。

ぜひ、最初から読みすすめて、Jonathanからの最後のメッセージをかみしめてください。

「あとがき」は最後に読もう

Jonathanからの一文に勝るとも劣らないのが「監訳者からのあとがき」です。が、ちゃんと「あとがき」は最後に読みましょう。
本編を全部読んで、最後のJonathanからの「この先どこへ向かえばいいのか?」も読んで、その上で翻訳の特典である「あとがき」を読みましょう。

システム開発の現場が少しでもいい方向へ向かいますように

そのために、システム開発に携わる一人でも多くの人に本書が届くことを祈っています。

アジャイルサムライ−達人開発者への道−
アジャイルサムライ−達人開発者への道−

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~
アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~

2011/07/19

RubyKaigi2011に行ってきました

2日目はだいたいフルに、3日目は息子と一緒にちょっとだけ。

はじめてのRubyKaigi

実は初参加だったのです。なんで今まで行かなかったかと言うと、社内のみんなが行くから「俺は行かないぜ」という中二病だったのかなぁ。特に理由はないです。

じゃあ何で今回行こうと思ったかというと、「The Gate - 角谷信太郎」という文字を見てしまったから。最近の角谷さんのプレゼンを見ていて、このタイトルを見て行かない人とかいるんですかね。

というのは半分は冗談で(たしかに最後の決め手はそれでしたが)、海外の人の発表を見たい、社内の人の社外向けの発表をちゃんと見たい、という2つの欲求が両方満たされるKaigiがそこにあったから。

どうでしたか?

本当に、心から、スタッフの皆さんが楽しんでいるように感じられる、だけどそこに内輪感を(私は)感じない、とてもいい空間でした。

英語の発表は、私の残念な英語力ではサブスクリーンに頼ってばかりでしたが、海外の人のプレゼンの巧さはよくわかりました。スライド1枚に込められたメッセージを熱く語る姿はとてもかっこよくて、いや日本の方のプレゼンももちろん凄かったんですが、また違う凄さがあるなぁと感じました。

いろいろな宿題と贈り物を頂きました

松田さんのセッションでは「これからもRuby, Railsを使ってプログラムを書くことを生業としていくのか」という自分の進む道の選択を迫られ、Wen-Tien Changさん以降のテストのセッションでは、これから大切にしていきたいテストのトピックをもらいました。

角谷さんのセッションはまだ整理できていません。ただ、みなさんの宿題の答えを楽しみにしています。

明日から

宿題の答えを探す旅に出ます。探さないでください。

「門」をお探しの方へ

株式会社永和システムマネジメントでは、Ruby Programmerを募集しているそうです。
もしお近くに「門がない」「建てるのは大変」と嘆いている方がいらっしゃいましたら、こちら「門」はいつでも開いておりますので御気軽にお声がけください。
http://bit.ly/esm-hiring-rubyists

2011/07/11

2011年スタイラス大戦

誕生日プレゼントにiPad用に3つのスタイラスをいただいたので(ありがとうございます!)、軽くレビューなどしてみます。

スマートペン(パワーサポート)

「スタイラスって何がいいのかなぁ」と探していたころによく高評価だったやつです。ペン先がとにかく柔らかくて、私はあまり好みじゃありませんでした。ただ、反応がすごくいいので、筆圧が弱めの人はいいと思います。
スマートペン シルバー PBJ-91
スマートペン シルバー PBJ-91

iPad/iPhone/iPod touch専用タッチペン(プリンストンテクノロジー)

@kakutaniからオススメしてもらったやつです。今回紹介する中では一番ペン先が硬いです。私の筆圧に丁度いい具合なので、普段はこれを使っています。

プリンストンテクノロジー iPad/iPhone/iPod touch専用タッチペン (ブラック) PIP-TP2B
プリンストンテクノロジー iPad/iPhone/iPod touch専用タッチペン (ブラック) PIP-TP2B

BAMBOO Stylus(Wacom)

一番後発で話題のスタイラスですね。ペン先の細さと持った時の質感は圧倒的です。ペン先の硬さは丁度中間です。私の書き方だと書き始めに反応しないことがよくあるので、今は予備用に持ち歩いています。

Wacom iPad/IPad2/iPhone4対応 描画、ポインティングに最適なタッチペン Bamboo Stylus CS-100/K0
Wacom iPad/IPad2/iPhone4対応 描画、ポインティングに最適なタッチペン Bamboo Stylus CS-100/K0

おわりに

いくらレビューサイトを見ても、結局は自分の筆圧や書き方次第ですね。試し書きできるお店を探したのですが見つかりませんでした。
もしスタイラスを買おうと思っている方で試してみたい人がいましたら、上野もしくは津田沼周辺でお貸しできますのでお気軽にお声がけください!

2011/07/06

オブラブ2011夏イベントでLTをしました

今回はベストトーカーを狙ってタイトルと内容を決めたのですが、あと一歩届きませんでした。(他のみなさんのLTが本当にすばらしかったので納得の結果でした。が、少しだけ悔しいです。)


5分という時間では昔話ができなかったので、ここで書いておきます。

大学時代 & 大学院時代、SAやTAで約4年間、のべ100人以上がうちの大学のプログラミング教育を受けて、どう成長したか、どこで躓いたかを見てきました。(うちの大学のプログラミング教育は、教員の方々がすごく頑張っていたので、そこらの大学には負けないと思っています。詳しい話は私なんかが話すべきことではないので割愛)

全員がプログラミングを好きになってくれたわけではないですし、もちろん挫折してしまう人もいました。
私自身もその教育を受けてきて、そして会社に入って、実際にシステムを作り、それを維持していくことの難しさを感じ、同時にそれは今の教育機関では教えることができないことであると感じました。

これを感じることができたのは、大学時代にプログラミングにふれていたからで、それ自体は良いとも悪いとも言えないことです。また、プログラミングにふれていない人が実際の開発現場に放り込まれたときに、何を感じ、どうやって仕事を覚えていくのかは、まったくの想像できないということもわかりました。

そんな中で、私が2年目になったころ、プログラミング未経験の新人のOJT担当になりました。「プログラミングを教えてほしい」というだけであればある程度うまくやる自信がありました。しかし、自分自身も仕事をしながら、なおかつ新人に「プログラミング」と「システムを作るということ」を一緒に教えなければいけない、これは大変なことです。

(このへんで書きたいことがスライドに書いてあること)

@chibiyaso はすごく大変だったに違いありません。なにせ先輩はずっと独り言いってるし…そんな中でも、なんとか半年がんばってくれて、その結果うちの文化に馴染んでくれたと思える一言(スライドにでてるやつね)を残してくれたことが、とても嬉しかったのを今でも覚えています。(これを言ったのは社内の集まりでレガシーシステムの話をしていたときだったみたい。私はいなかったので人伝で聞いた)

で、今回のLTはこの頃の気持ちとやったことを整理し、プログラミング初等教育、新人教育とTDDの一週目のまとめとして発表しました。
会場で聞いてくださったみなさんの心に残ったものが少しでもあれば嬉しいです。(あと、感想やダメ出しをお待ちしております!)