武蔵流プログラマからの提言 − デスマーチ経験者はこう語った
「デスマーチと戦う武蔵流プログラマ やまざき のページ」

TopPage
(サイトマップ)


Book
(書籍)


「火事場プロジェクトの法則」
サポートページ


「LHAとZIP」
サポートページ



Document
(文章)

デスマーチの記録に見る
運命の分かれ道
NEW!

武蔵流プログラマからの提言

武蔵流プログラマが斬る Eclipse

コードデザイン最前線
1
2 3 4 5 6 7 8 9
10 11 12 13 ML

C++で読む
デザインパターン


ポインタ不要論

データ圧縮の基礎

プログラマへの
アドバイス


データ指向の話1 2

インターフェースの話


Diary & Books
(日記と本屋)

やまざきの
はてなダイアリ
(日記)
[] [PC] [資産運用]
[デスマ] [映画] [2足ロボ]

やまざきの本屋


SoftWorks
(ソフトウェア)


(1) DeepFreezer
(ディープ・フリーザー)
高速アーカイバ

(English Page)

(2) Closedown-Planet
(クローズダウン・プラネット)
アクションパズルゲーム


(3) PieceMaker
(ピース・メーカー)
ファイル分割/結合


(4) WakuPita
(枠ピタ)
ウィンドウ移動便利ツール

(English Page)

(5) ググ郎
(Bookmarklet)
選択文字列をGoogleで検索

NEW!


Developing
(開発中)


(1) DeepFreezer2
yz2dlg.dll alpha6


C Magazine特集yz2


Hobby & Favorite
(道楽/お気に入り)


2LegRobo
MindStorms



p.s.
(雑談)


Profile

i_want^^;


やまざきが書いた本


[システム開発]
火事場プロジェクトの法則
どうすればデスマーチをなくせるか?
2006/09/13 発売


LHAとZIP
圧縮アルゴリズム×プログラミング入門

奥村さんと共著です。
2003/12/01 発売


やまざきが寄稿した本


SEの読書術
「本質を読む」力を磨く10の哲学 2006/02発売。



開発の現場 Vol.002
「反デスマーチ大研究」という記事。2005/09/13発売。



Software People Vol.3
「武蔵流プログラマからの提言」という記事。2003/10/31発売。



Eclipse パーフェクトマニュアル vol.1
「武蔵流プログラマが斬る Eclipse」という記事。2003/06/05発売。



武蔵流プログラマからの提言

デスマーチ経験者はこう語った
武蔵流プログラマ
山崎 敏
YAMAZAKI Satoshi
 ●忙しい

 忙しい,忙しすぎる.いったいいつまでこの忙しさが続くのだろうか….まず,この書類を書きあげて,そして次は会議,会議が終わったら出張…,あー,外は台風だ.新幹線は動いているだろうか…,それよりもこの時間に自由席は空いてるだろうか.ここは自腹で指定席…いやグリーン車でゆっくり休みたい.もう体が悲鳴をあげている.最後に休暇を取ったのはいつだっただろうか…先週の休みは休日出勤だし,一昨日からは会社に泊まり続けている.いや,泊まるという言葉は不適切かもしれない.実際には完全に徹夜状態で寝てないのだから….あー,もうなにも考えることができない.ただ,目の前にある仕事に反応している機械のようだ.私の意思はどこに行ってしまったのか.いや,それ以前に私に意思はあるのだろうか.私の人生は….私の家族は….友達はどうしているだろうか….あー,そんなことを考えている時間はない.とにかくこの仕事を片付けなければ….うっ!な,なんだ!!胸が苦しい.い,いったい何が…….

 ●新しい武器

 これから書こうとしていることは「新しい武器」の話です.いや,「新しい考え方」の話と言ったほうがいいかもしれません.いやいや,包み隠さずにいえば「新しい人生」の話になると思います.
 この武器を自分のモノにできれば,自分が変わるでしょう.自分が変わるということは世界の見え方が変わるということです.世界の見え方が変わるということは,世界が,そして現実が変わるということになります.
 どうですか?そんなおおげさなことが,ここに書かれている数ページの文字列から起こるのでしょうか?その答えはみなさんで確かめてみてください.

 ●武蔵流とは
 
 武蔵流のネタ元は「アジャイル本(注1)の付録Bです.筆者はこのアジャイル本を読んで,いや,この本の付録Bを読んで感じました.「そうだ,これだ!」「これを探し求めていたんだ」と.
 それはその後,筆者が「武蔵流」と名乗るきっかけとなる宮本武蔵の『五輪書』の要約でした.そこにはこのように書かれていました.

(1) 武器や流派にこだわるな
(2) 実践し定期的に観察せよ
(3) 勝て!


 たった3行の短い言葉です.五輪書をどのように要約すると,この3行になるのかわかりません.しかし筆者は,重い真理のようなものを見たのです.
 筆者は,十数年間,システム開発という名のプロジェクトをいくつもこなしてきました.その間,「本当に顧客のためになっているのだろうか…」「社会に貢献していると言えるのだろうか…」「こんなに苦労しても報われていないんじゃないか…」「いったい誰のための人生なのだろうか…」「なにかおかしいのではないか…」と,ネガティブな言葉がどこからともなく現れては消えていきました.
 それから数年後,武蔵流の言葉に出会いました.そして「そういうことだったのか」と,今まで悩んでいたことの答えをつかんだのです.その後,自分の中でこれらの言葉を整理し,いろいろなモノが見えるようになりました.「流れ」が見えるようになり,いろいろな世界も見えるようになりました.ここでは,この筆者が見えるようになったモノについてみなさんと共有したいと思います.

注1)『アジャイルソフトウェア開発』,Alistair Cockburn 著,ピアソン・エデュケーション,2002,ISBN4-89471-579-1

 ●システム開発に置き換えると
 
 まず,Cockburnによる要約をシステム開発の言葉に置き換えてみます.

(1) ツールや方法論にこだわるな
(2) 実際に動かしてテストせよ
(3) 成功しろ!


 このような言葉になると思います.範囲をシステム開発に限定しなくても,プロジェクトと呼ばれるようなすべての仕事に当てはまる言葉だと思います.
 Cockburnは「ソフトウェア開発ゲームに勝つこととは,ソフトウェアの納品を意味する」と述べています.この言葉の通りに解釈すれば,「勝て」とは「納品しろ」となるでしょう.しかし筆者は「納品すること」がそのまま「勝つこと」にならないところをいくつか思い当たるのです.納品できたからといってそれが本当に顧客を満足させているのか?開発費の問題はどうか?開発者の体力面や精神面ではどうなのか?さらには開発者や開発チーム,そして会社としてのスキルは向上しているのか?と.このような意味を含み,筆者は「納品しろ」ではなく「成功しろ」という広い意味の言葉を選択したわけです.
 
 ●ツールや方法論にこだわるな
 
 まず,「ツールや方法論にこだわるな」です.この言葉は比較的にわかりやすい言葉であると思います.我々のような職人気質のプログラマは,ついつい目の前にある「技」や「テクニック」に固執してしまいがちになります.たとえば得意なプログラミング言語であったり,よく使うOSであったり,他には,オブジェクト指向の考え方であったり,構造化設計の考え方であったり,よく見るとたくさんの「技」があふれています.
 ここに1つの言葉があります.

「ハンマーを持つ者はすべてが釘に見える」(注2)

これは,ある得意な技(ハンマー)を持つ人は,すべての問題がその技によって解決できると思い込んでしまうことを危惧する言葉です.実際には,ハンマーによって解決できる問題もありますし,ハンマーでは解決できない問題もあります.得意技を持つことで,解決できない問題は常に存在するという現実が見えなくなり,視野が狭くなってしまうことを警告している言葉なのです.具体的にシステム開発の言葉にあてはめるのであれば,

「Javaが得意な人は,すべてをJavaでプログラミングしようとする」

とか

「オブジェクト指向が得意な人は,すべてをオブジェクトで解決しようとする」

となるでしょう.
 確かに,オブジェクト指向で解決できる問題は多くあります.しかし,オブジェクト指向によって解決することが望ましくないケースも少なからずあるわけです.
 プログラミング言語や方法論は,「ツール」の1つです.武器や流派の1つであると言えます.戦術と戦略で分けて考えるなら戦術の1つです.

「見たいように見るな!ありのままを見ろ!」

ということのようです.

注2)Baruchの考察といわれています(Baruch's Obserbation:If all you have a hammer, everything looks like a nail.).

 ●パラダイムシフト
 
 「パラダイム」とは,ある問題の枠や,考え方の枠のことです.別な言い方をすれば「視点」になるでしょう.「箱」とか「器」と考えるとわかりやすいかもしれま
せん.そのパラダイムが変化することを「パラダイムシフト」といいます.
 まず,パラダイムの身近な例を挙げてみます.パラダイムを「場所」で考えるとわかりやすいと思います.みなさんが,自宅の自分の部屋にいるときと部屋の外にいるときではパラダイムが異なります.部屋の中にいるときに起こる問題や解決策と,部屋の外にいるときに起こる問題や解決策が異なるのです.部屋の中にいるなら「眠い」という問題をベットに入ることで解決することができるでしょう.しかし,部屋の中にいながら「シャワーを浴びたい」という問題は解決することができません.部屋の外であればバスルームに行けますが,今度は眠いという問題が解決できなくなります.このように問題や解決策には枠が存在していて,その枠のことをパラダイムというのです.部屋の中から外に出たときにこのパラダイムがシフトしているのです.
 大きなパラダイムの例では,飛行機があります.ライト兄弟が飛行機を発明したことで,人類は多くの問題を解決しました.しかしその反面,飛行機によって新たな問題(たとえば飛行機事故など)も発生しました.
 飛行機などのモノの他にもパラダイムはあります.コロンブスが新大陸を発見したり,ニュートンやアインシュタインが新たな理論を発見することでも,世界が持つパラダイムが変わります(注3)

 プログラミング言語というツールもパラダイムです.その言語で解決できる問題と,その言語では解決できない固有の問題があるのです.オブジェクト指向などの考え方や方法論もパラダイムです.その方法論で解決できる問題と,新たに発生する問題があるのです.
 パラダイムはどこにでもあります.すぐ近くにも遠くにも,小さいのも大きいのも,物理的に存在するのも,頭の中や心の中に存在するのも,さまざまです.しかし,そのパラダイムが見えている人はあまりいません.

 パラダイムがあることが問題なのではありません.パラダイムの存在を認識しないことが問題になるわけです.これらの,たくさんのパラダイムの存在と,パラダイムがシフトすることで問題の意味そのものがシフトするということが「見えていないモノ」の1つなのです.
 新しいパラダイムを発見したとき,すべての問題がそのパラダイムによって解決できるかのように考えてしまいがちです.しかし,パラダイムとは枠です.もしくは箱です.枠が広がってもその枠には必ず淵があり,その枠の外側にはそのパラダイムでは解決できないあらたな領域が広がっているのです.ただ,その時点ではそこまで見えていないだけなのです.


No Silver Bullet(銀の弾はない)


 そうです,どんな問題でも解決できる「銀の弾」は存在しないのです.
 日本にもいい言葉があります.このパラダイムシフトの問題を的確に現していると思える四字熟語です.それは


適材適所


です.筆者はこの適材適所な視点が大切であると感じるのです.1つの小さな物事にこだわり過ぎてはいけないと思うのです.井の中の蛙になってはいけないと,モノではなく世界そのものを見るようにしないと,視野を広く持ちパラダイムを超えたマクロな視点から物事をとらえるべきであると思うのです.
 台所の食器棚を見てください.たくさんの「器」があります.大きいのや小さいのや,深いのや浅いのまで,それぞれの用途にあった器があります.1種類の器では解決できる問題が限られてしまうのです.隣の町に行くのなら自転車や電車,自動車を使うだろうし,隣の国に行くのなら飛行機や船でしょう.逆の選択すると問題が増えてしまいます.どこへ移動するにも飛行機を使おうとするとする人はいません.
 「ツールや方法論にこだわるな」とは,「もっとマクロな視点からとらえろ」と言っていることになるでしょう.

注3)コンピュータやインターネットは現在進行中の大きなパラダイムシフトでしょう.数年後にはIP電話が常識になっているかもしれません.

 ●実際に動かしてテストせよ
 
 次に「実際に動かしてテストせよ」です.これもプログラマであれば理解しやすいことであろうと思います.

 ●現場
 
 みなさんは,上司や顧客から「絶対に動くプログラムを作ってくれ」といわれたことはありませんか?筆者は「絶対に動くプログラム」は存在しないと思っています.特に「絶対」ということはありえないと思うのです.プログラムはある環境の上で動きます.環境によって動作が影響されるわけです.ハードウェアが変わったり,OSが変わったり,周辺機器やネットワークの接続先が変わっているかもしれません.そういった前提条件がクリアされた上で,はじめてプログラムは動くのであって,前提条件を無視した「絶対」ということはありえないと思うのです.そういった意味から,プログラムは「実際に動かしてみないとわからない」という部分を大きく持っていると思うのです.
 ある日本の映画に,

「事件は会議室で起きているんじゃない!現場で起きているんだ!」

というセリフがあります.今の日本の社会構造の問題点を指摘するような重いセリフであると思うのですが,システム開発にも当てはまります.

「バグは会議室で起きているんじゃない!現場で起きているんだ!」

 ここでは「現場」というキーワードが大切だと思います.何十回,何百回とテストしたシステムであっても,現場(最終的な客先)で動かなかったら何にもなりません.それこそお客さんに「おたく,何しに来たの?」と言われかねません.剣の道で勝つことと同様に,システム開発では実際に動かしてみることがとても大切なのです.
 システムの品質は,テスト件数と比例すると感じています.特にシステム開発において品質を確保したいのであれば,より良質なテストをするしかありません.より実際の環境に近い形でテストをし,もし可能であれば客先の環境で実際に動かしてみることです.
 誰でも,初めて行った場所では戸惑うと思います.迷子になるかもしれません.予期せぬ出来事も起こります.行ってみたら山があって通れないとか,川があって渡れないとか,橋が壊れているとか,穴があるとか.そんなゲームのような世界ではないとしても,その場所に行ってみないとわからないということは,世の中にたくさんあります.誰にでも知らない世界はあります.初めて足を踏み入れる場所もあるでしょう.特にシステム開発では,誰かが前を歩いていたり,道を造って標識を立ててくれていたり,レールを敷いてくれていたり,そういった至れり尽せりな案件は存在しないのではないでしょうか.システム開発とは,常に先端を開拓する世界だったりするのです.

 ●オリエンテーリング

 未知の場所を進むといえば「オリエンテーリング」です.地図を頼りに標識を探して帰ってくる,そんなゲームだったと記憶しています.
 筆者がはじめてオリエンテーリングを体感したのは,高校生のころだったと思います.オリエンテーリングの意味を知らずに,チームのみんなでトボトボと歩いて探しました.一通り探し終わり,帰ってきたときにわかったことがありました.それは「タイムを競うゲームだった」ということです.当然,順位はビリ.あー,なんということでしょう.どうして先に教えてくれなかったのかと,小一時間問いたい,問い詰めたい…そんな気持ちでした.
 さて,オリエンテーリングではタイムを競うのですが,みなさんはオリエンテーリングで大切なことは何だと思いますか?スピードでしょうか?体力?持久力?チームワーク?地図を読む能力?コンパスと進む方向?それとも,現在位置の確認でしょうか?
 筆者はパワーやスピードよりも方向,そして方向を決める前に現在位置の確認が大切だと思います.すべての能力は現在位置の確認ができた上で発揮できるモノだと思うのです.いくらスピードが速くても,方向が間違っていてはなにもなりません.さらに方向があっていても現在位置が間違っていたらその方向にいったい何があるというのでしょうか.
 Cockburnによる五輪書の要約では,「定期的に観察せよ」と言っています.これは現在位置の確認にあたると思います.自分のいる位置を客観的に把握することで,これから進むべき方向や,今なにをすべきかが理解できると思うのです.
 世界は常に変化しているので,昨日の常識が今日は通用しないかもしれません.
 筆者はスキーをするのですが,十数年前,スキー場ではぐれた友達と連絡をとる手段は存在しませんでした.あらかじめ時間と場所を決めておいて,はぐれた場合はそこで落ち合うという効率的とはいえない方法で対処していました.その後「私をスキーに連れてって」という映画の中で,無線機を使って連絡を取るという例が紹介され,小さな無線機ブームが起こりました.アマチュア無線の免許を取り,スキー場に無線機を持って行く,そんな常識がスキー仲間の間で出来上がっていたのです.実際,無線機は小さくて性能もよく,スキー場や往復の道のりの連絡手段として多くの問題を解決してくれました.しかし,それは数年間の話でした.携帯電話があっという間に普及し,スキー場でも問題なく使えるようになった今,携帯電話より数倍大きくて重い無線機はスキー場からも筆者の前からも姿を消したのです.
 こうなると,常識とはいったいなんでしょうか?決して変わらない永遠普遍のモノでしょうか?あるパラダイムでは常識であっても,パラダイムがシフトしてしまっては常識ではなくなってしまうわけです. 常識とは,常に現実を見ることでしょう.それには実際にやってみること,そしてその結果を常に観察することでしょう.変化を嗅ぎ分け,自ら変化する技術者にならないと,そこには恐竜のように絶滅という道が待っているわけです.

「見たいように見るな!ありのままを見ろ!」

ということです.「観察せよ」という言葉には,「しっかりとらえろ」という意味が含まれていると思います.同じモノを見ても,同じモノを聞いても,人によってとらえ方はさまざまです.しかも,自分という色眼鏡で見たり聞いたりして解釈します.
 「実際に動かしてテストせよ」とは「実際にやってみて,現実をよく見て確認し,変化に追従しろ」と言っていることになるでしょう.

 ●成功しろ!

 最後に「成功しろ!」です.実はこの点に関しては,筆者の見解は武蔵とも,Cockburnとも異なります.

◇ ◇ ◇

 「成功しろ」と言われてもいろいろあります.物理的に不可能であったり,時間的に不可能であったり,スキルがなかったり,モチベーションがなかったり,マーフィー(予期せぬ出来事や想像を超えた事態など)が現れたり,そもそもパラダイムの外にある場合はパラダイムを変えないと解決できないわけです.
 筆者は,「失敗は悪である」と聞かされ続けてきました.とにかく失敗するな!成功しろ!と.1点でも良い点数を取れ!失敗したら減点だ!隣のやつにできていることがなぜおまえはできないんだ!根性が足りない!努力が足りない!怠けすぎだ!死ぬ気でがんばれ!…
 やれやれ…ですね.もう,耳にたこができるくらい聞かされてきました.小学校に入ったころから聞いていますからかれこれ30年くらいになるでしょうか.しかし,違うのです.筆者は違うと思うのです.「成功しろ!」とは,成功とか失敗とか,勝ったとか負けたとか,善とか悪とか,そういったその場だけの小さな結果を要求しているのではないと思うのです.勝て!とは,負けるな!ということでしょうか?では,負けるとはどういうことでしょうか?ある小さなパラダイムの中での話ではないでしょうか.
 システム開発は,よくマラソンにたとえられます.短距離走ではなく長距離走の要素を多く持っているからです.
 システム開発でよく起こる問題に,「ゴールが見えていない」という問題があります.ゴールもわからずに闇雲に走り回り体力をすり減らしているのです.ゴールに向かって進んでいるのならよいのですが,実は逆方向に進んでいたりすることもあったりします.常に現在位置を確認し,進む方向を調整すべきです.時間が(納期が)限られてしまっている場合,立ち止まって現在の位置を確認する時間も惜しいということになりかねません.それこそ,自らを目の前にある小さなパラダイムに追い込んでいるように思います.もっとマクロな視点から全体を見るべきでしょう.
 さて,マクロな視点から見た場合,「負ける」とはどういうことになるのでしょうか.最後の最後にどうなっているか,でしょうか.いや,最後を見なくても途中を見ればわかります.「負ける」とは「あきらめた」ということだからです.言い換えるなら,あきらめなければゴールにたどり着くということです.


七転び八起き


という言葉があります.この言葉は苦労する様子を現していますが「8回のうち7回は失敗する」という意味にも取れます.それでも8回目にゴールにたどり着けばそれは失敗とは言わないのではないでしょうか.1回も転ぶな!1回でも転んだらあきらめる.これではゴールにたどり着けません.7回転んであきらめても同じくゴールには着かないのです.とにかく「あきらめたら負け」なのです.何度転んでも立ち上がり,前を向いて歩き出す.この「あきらめずに繰り返すこと」これが大切なのです.
 失敗が悪であるという考え方は間違いです.失敗が悪であると考えることで,実際には成功する可能性があるかもしれないのに,その可能性をたった1回の失敗で否定してしまうことになりかねないからです.8回目に成功するかも知れないのに1回目でやめてしまったり,長期戦であることが見えずに1回目に全力を出し切ってしまうことが間違いなのです.失敗は悪ではありません.失敗を生かせず次に繋げられないことが悪なのです.繰り返しを絶つこと,ループを絶ってしまうことが悪なのです.どんな失敗にも必ず価値があるはずです.その価値を汲み取る姿勢が大切であるということです.

 ●成功体験
 
 もう1つ,成功する上で大切なことがあります.それは「成功体験」です. ループを継続することでゴールにたどり着けることを理解することが大切なのです.しかも,成功とは頭で理解することではなく体で感じることだと思います.体で感じることなので,自分でやってみないと体感できない(受け取れない)モノだということです.
 成功体験は失敗とは違い,容易に循環できる傾向があります.「よし,もう一度」と思えるわけで,ある種の快感がポジティブなループを作り上げるのです.
 筆者の感覚では,一度成功体験を味わうことができれば,その後,数回は失敗したとしても「なにくそ」とか「まだまだ」と思えるのです.成功体験はループの持続力にも大きな影響を与えているのです.
 また,同じ成功体験であっても,人によって感じ方はさまざまです.同じ体験からループを継続するためのエネルギーを得る量は,受け手によって決まってしまうのです.成功体験を感じるには感じる人のスキルも必要とされるということです.

 ●各個撃破
 
 成功させるスキルの1つに「各個撃破」の考え方があります.3本の矢を一度に折るのではなく余裕を持って1本ずつ折っていくという考え方です.大きな問題を小さな問題に分け1つずつ解決していくのです.しかし,単純に分割すれば問題は簡単になるのかというと,そう簡単な話ではありません.この分割の仕方が問題であり,分割するスキルが問われているわけです.
 この分割するスキルには,経験や勘といった目に見えない「暗黙知」も含まれるでしょう.「匠の技」とも言える部分です.
 問題の分割とは,システム開発でいうユニット化の考え方です.大きなシステムを小さな単位(ユニット)に分割し,考え,設計し,実装する.そのような「技」のことです.このとき闇雲に機能単位に分割するのではなく,ユニット間の依存度に着目し,依存度を下げ,独立度を上げる分割が大切になります.
 オブジェクト指向の考え方にも当てはまりますが,筆者の言いたいことはオブジェクト指向よりももっとマクロな視点の話です.機能単位とかデータ単位とかオブジェクト単位とか,考え方やとらえ方はいろいろですが,それらすべての依存度(結合度)に注目し,もっとも依存度の低いところで分割するという話です.少し漠然とした話ですが,漠然としているから「暗黙知」と言われたり「匠の技」と言われるのかもしれません.
 問題の分割がうまくできれば,ループを小さく回すことができます.そして,成功体験の数を増やすこともできます.システム開発ならば,多くのユニットテストを素早くこなすイメージになるでしょう.小さく分割し,素早くテストをし,ループを小さく回すのです.

◇ ◇ ◇

 「成功しろ!」という言葉の中には,大きく3つの意味があると思います.1つは「失敗を受け入れ,しっかりとしたループを作る」ことです.これにより,あきらめることなく成功まで進めるようになることが大切です.
 もう1つは,成功体験を汲み取ることでエネルギーを充填し,フィードバックするループを継続することです.ループを継続してうまく流すことです.
 そして最後の1つは,やはり「本来の目的を忘れてはならない」ということです.
 ●流れ

 ここまで「武蔵流」の考え方を,システム開発などと照らし合わせて話してきました.ここで,これまでの話を少し整理してみましょう.

●武器や流派にこだわるな
(ツールや方法論にこだわるな)


 これは主に「考え方」や「視点」そして「パラダイム」の話をしました.

●実践し定期的に観察せよ
(実際に動かしてテストせよ)


 これは,実際にやってみること.そして現実を見てフィードバックが大切という話でした.

●勝て!
(成功しろ!)


 これは,本当の失敗とはあきらめること.そして,あきらめないというループを作り継続することの話でした.

◇ ◇ ◇

 突然ですが,筆者の好きな「マトリックス」という映画の中で,モーフィアスはネオに言います.

「道を知るのと歩むのは違う」

かっこいいですね.「知る」と「歩む」は違うのです.
 また,「燃えよドラゴン」という映画の中でリーは言います.

「考えるんじゃない!感じるんだ!」

これもいい言葉ですね.「考える」と「感じる」は違うのです.
 これです.武蔵流の要点を追求するとこの4つの言葉になることを筆者は発見したのです.「知る」「歩む」.そして「考える」「感じる」.この4つの状態の違いを認識して「流す」ことが大切なのです.図にすると次のような「流れ」になります.


知る→考える
↑    ↓
感じる←歩む



 「知る」は観察すること,そしてマクロな視点の話です.
 「考える」は考え方やパラダイムシフトの話です.
 「歩む」は実際にやってみること現実を見ることなどの現場の話です.
 「感じる」は失敗を汲み取る能力や成功体験を感じ取る能力の話です.
 そして,いちばん大切なことは「ループする流れ」です.このループする流れを維持することが大切なのです.常に流れるように治水し続けるわけです.この流れを速く回すことで状況の変化に追従できるようになります.問題の大きさも小さいうちに解決することができるでしょう.また,速く回すには問題を小さく分割するスキルが必要とされ,実際にやってみることで磨かれるでしょう.

 この図をシステム開発の言葉で書き直してみるとわかりやすいかもしれません.


要求定義→設計
↑     ↓
テスト←実装



 そうです.アジャイル開発の考え方です(注4).アジャイル開発の考え方はシステム
開発以外にも(普段の社会生活にも,人生にも)適応できるということなのです.
 もう少し一般的な硬い言葉で書き直してみると,次のようになります.


把握→計画
↑   ↓
確認←実践



 これは,おそらくみなさんが普段の生活としてなにげなく無意識にやっていることだと思います.しかし,その無意識にやっていたことを意識するようになるだけで,世界が変わるのです.特にこのループという流れを意識するところがミソです.この流れを知ることは「一方通行の扉」です.知ってしまったら,これを知る前の自分には戻れないということです.おおげさに言うなら,みなさんの人生が変化したことになります.

注4)ライトウェイト(軽量級)であり,なおかつイテレーティブ(フィードバックループ)であるところがアジャイル開発と同じ思想であると考えます.

 ●「なる」ってこと
 
 これまでみなさんは,このループを無意識に実践していました.その無意識のループとは「なる」ということです.たとえば,坂道発進ができるように「なる」ということ.スノーボードができるように「なる」ということ.ボールをバットで打てるように「なる」ということ.掛け算ができるように「なる」ということ.お箸が使えるように「なる」ということ.
 生まれた時からお箸が使える人はいません.生まれてきたときは誰も何もできませんでした.みんなできるように「なった」わけです.みなさんが「考えて,やって,感じて,知って,また考えて,やって,感じて,知って…」これをできるようになるまで「あきらめずに」繰り返してきたわけです.誰もズルをしていません.できるようになった人は,みんなあきらめずにやったのです.
 「なる」ということはある意味で資産です.しかも,モノやお金や土地といった資産とはまったく違い,たくさん持っていても負担にはなりません.重さはありませんし体積もありません.いくら使っても減ることはありません.むしろ,使い込むほど洗練されていきます.また,お金を払えば誰でも「なれる」わけではありません.すべて努力の結果なのです.
 ループの流れを治水するというのは,いままで無意識でやってきて,そして無意識にあきらめてしまっていたことを意識してフォローしていこうという提案です.これが筆者がみなさんに伝えたい「新しい武器」です.くじけそうになっても,あきらめそうになっても,一歩ずつ意識してループを回す方向に努力をするわけです.続けることが「なる」につながるのです.そしてゴールにつながるのです.

 ●最後に
 
  どうでしょうか?人生が変わったことが感じ取れたでしょうか?
 さて,Cockburnの要約は,たった3行の短い文でした.そして筆者が伝えたい武蔵流「なる」の考え方は,たった4つの単語です.はたしてこれだけの情報で,実際の問題が解決するのでしょうか?デスマーチとか,システム開発とか,プロジェクト管理とか,社会との関わりとか…,そして自分自身の人生についてです.
 少なくとも筆者には効果がありました.世界が違って見え,人生が変わり,多くの価値観が変わりました.流れを意識し,流れを維持し,素早く流れるように「流れを描き流す」のです.
 今回紹介した新しい武器「なる」は,個人でないと威力を発揮できないという範囲を限定した武器ではありません.使い方しだいでチームにおいても力を発揮するでしょう.キーワードは「コミュニケーション」や「モチベーション」です.これらのキーワードが「なる」のどの部分になるのかはみなさんで考えてください.
 ただし,知識として持っているだけではなんにもなりません.知識を知恵に変え,知恵を実行に変えないと結果は得られないのです.実行するのは筆者ではありません.みなさんです.

◇ ◇ ◇

 く,苦しい……どおりで苦しいと思ったら,仕事中に机で眠ってしまったらしい.腕がしびれて痛い.首の調子も変だ….どのくらい眠っていたのだろうか.周りには誰もいない.何時なのだろうか….しかし,変な夢を見た.いや夢でよかった.今日は帰ろう.そしてしっかり寝よう.
 え?仕事?…あぁ仕事ね.たった今,仕事より大切なモノを見つけたよ.■

この記事の載っている「Software People Vol.3」は書店やAmazonで購入できます。
よろしければどうぞ。
あと、この原稿を本にしてくれる出版社さんも募集しています。英語とか韓国語、中国語での出版も希望しています。よろしくお願いします。

since 2004/11/12



やまざきのおすすめエレクトロニクス


やまざきのおすすめ本

やまざきのおすすめDVD

やまざきのおすすめCD



Copyright(c) 1998-2006.
YAMAZAKI Satoshi.
All rights reserved.

since 1997/12/15


このページのURLをメールで送る(友人・知人に教えてあげる)
このページを「お気に入り」に追加する(忘れないように…)
● お手紙はこちら↓。仕事の話は大歓迎です。(忙しくて返信できなかったらごめんなさい。)