連休中だと言うのに(いや、連休中だからこそ)、朝から会社に出てきて、新しい機能の設計に没頭しています。こうしている時間が、世の中で一番至福の時間だというのは、梅田さんの年を取ってから後悔しない人生デザインに書いてある通りです。
普段、私はB4サイズの原稿を収納できる書類ケースを毎日持ち歩いていますが、その中には、10種類以上の設計中のアプリケーションの仕様書が入っています。
一つ一つが未完了で、途中までしか記述されていません。
これを行く先々で開くのかと言えばそうではなく、ある日、突然、解決方法が見つかることがあって、それは自宅の場合もあるし、バーのカウンターの夢の中であったりするのですが、その時に必要になるからです。
一つのアプリケーション(の一部の機能)を設計する作業は、私の場合、すべて頭の中で行います。
この作業を人に説明するときによく使うのが、無重力空間に立体ジグソーパズルのピースが浮いていて、ある時突然全てがうまく組み合わさって、パズルが完成する、そう言った感覚です。
ですので、一度に、何種類ものパズルを頭の中に浮かべておくのは大変で、実際には、今は一つしか浮かべていません。作業を行うときに集中して思い浮かべるのですが、ピースの数が多いパズルほど、頭の中で展開するまで時間がかかります。ですからこういった連休中が、一番考え事をするのには最適なのです。
ところが、そうはうまく行かないのです。
全てがうまく組み合わさるという感覚がないと、全く一歩も前に進みません。
仕方がないのでこうやってBlogを書いているという、言い訳ですが(笑)。
ジグソーパズルが組み合わさるという感覚も、単に空間的に、と言うよりは、時空間上で、それぞれが繋がって、データや論理という水の流れが全てうまく流れていくと言った方がより適切です。
私は常々、ソフトウェアの世界は職人の世界ではなく工学(エンジニアリング)の世界だ、と言ってきましたが、果たして、今私のやっている作業を若い技術者に伝える方法があるのか、はなはだ疑問に思います。が、いつかはそれをやれるようにしたいという夢は捨てていません。
これをやるために、今の時点では、例えばUMLと言った方法では厳密すぎるのです。
もう少しフリーハンドで、ラフで、しかし、精密な記述が出来る言語があればいいのですが。先日、NHKだったかの番組でアイデアを記述するための言語システムの開発を紹介していましたが、これも候補かも知れません。 KAI
まっつん
はじめまして。古い記述へのコメントで失礼いたします。
この記事を拝見し大変感銘を受けたのでコメントさせていただきます。
私はいろいろと回り道の上、念願かなってこの春からとある小規模なISPで技術者として勤務しています。
今まではどうしても開発の実務に携わる機会を逸してしまっていたので、
独学や大学の恩師のもとで、座学で勉強せざるを得なかったのですが、
恩師の影響で仕様作成や設計(特にDB設計)を好きになりました。
「くぎが打ててノコギリひければ家は立つか?」という感じで。
UMLは手はつけましたが、設計の手法というより、その名のとおり言語で、周囲がUMLを読めて、伝えるために使うものだと感じ、「まだいいかな」と思っているところです。
ところが会社に入ってみると、「設計」なんて工程は存在しなかったりします。結果として、とても奇形的なシステムになってしまい、
それに無理やり修正を加えますます、メンテナンスや改良のしづらいものになっていく状況が見られます。
「この現場では、のんびり構えていても設計は学べない。自分でもっと勉強して、それを持ち込んでいくしかない。」と決意したところです。
そんな折にこの記事を読んだので、長々とコメントさせていただいた次第です。
失礼いたしました。
maida01
CnetのTBから幾つかの話を拝見しました。
私は開発からは遠ざかりましたが、同じようなアイデアメモを持ち歩いています。近年はPCにアイデアツリーでまとめていましたが、去年数週間教育に出席する機会がありPCが使えず、その時以来紙へのアイデア(ビジネス開発からシステム計画・開発プロセス、問題解決技法、提案作成の方法など)を書き連ねています。
何時も持ち歩いていますが可也な量になり、重さが気になりだしたのと、まとめ直し、ビジネスへの利用を検討中です。
お話に感心したのと、少々似た形式でメモを持ち歩かれているようなのでコメントさせて頂きました。
最近Blogで駄文を書き始め、今は趣味と仕事系を分けようと、livedoorに移動を考えています。また拝見させていただきます。
KAI
まっつんさん、コメントありがとうございます。
>ところが会社に入ってみると、「設計」なんて工程は
>存在しなかったりします。結果として、とても奇形的
>なシステムになってしまい、それに無理やり修正を加
>えますます、メンテナンスや改良のしづらいものにな
>っていく状況が見られます。
こういう現場が蔓延しているというのは、本当に憂うべき状況です。これは、日本のIT業界が「人月」商売に堕し、「技術」と言うものに投資してこなかった当然の帰結です。だからダメなのではなく、逆に、だから私はここで勝てると考えている訳です。
ハードウェアメーカーの現場を、一目でも見れば、そこには決して洗練はされていないものの知恵を集めたオリジナルの「技術」にあふれています。本来ITの技術の世界もそうでなければ、世界(国内はもちろん)で戦うなど不可能です。
>「この現場では、のんびり構えていても設計は学べな
>い。自分でもっと勉強して、それを持ち込んでいくし
>かない。」と決意したところです。
がんばって下さい。 KAI
KAI
maida01さん、コメントありがとうございます。
丁度、CNETの梅田さんがBlog(http://blog.japan.cnet.com/umeda/archives/001247.html)で、Blogは究極の知的生産の道具だと書いておられますが、私自身古くからKJ法はもちろんいろいろと試行錯誤を繰り返してきた中で、このB4用紙が究極の知的生産の道具となったのでした。
しかしこうやってコメントやトラックバックという仕掛けで簡単に「知のネットワーク」を形成できることは、紙テープやパンチカードにプログラムを打ち込んでいた世代にとっては、本当にすばらしいことだと思います。 KAI