※当サイトはアフィリエイトプログラムによる収益を得ています。

水に流される前に水を流してみる

何か具体的なものがあれば、それを指し示し「こんなふうに動く」と言える。信頼できるユーザーに見せてよい反応が得られれば、間違っていなかったことを確信できる。それより、めちゃくちゃに叩かれれることの方が多いだろうが、それはそれでまた結構なことだ。それによって、貴重な設計情報が得られるのだから。製品の完成後に百万のユーザーから背中を向けられるよりも、少数から批判を受ける方がはるかにいい。

正しい設計が一つしかないのに対し、間違った設計は何百通りもある。早いうちから誤りを取り除く作業を始めておけば、それだけ早く高品質の最終製品にたどり着けるだろう。

『UNIXという考え方』(p.32)より


一般的に、何かを一度作りきってしまうと、それを一から作り直すのはしんどい。一から出直すのは辛い。

コンピュータプログラムも同様で、それが手の込んだものであればあるほど愛着がわく。いちゃもんをつけられると腹が立つ。プログラムは法規のような性格を持っている。プログラムは組み上げられるものであり、適用されるものである。あるいは、水路のようなもので、実際に水が流れることで人々に活路を開く。

作りきる前に、水路の一部だけを作って試しに水を流してみれば、少なくとも作った部分については所期の目的にかなうものなのかどうかはわかる。引用した『UNIXという考え方』でも、「まず作ってみる」ことを推奨している。これはすべてを作りきるということではなく、部分的なパーツを試作してみることで、机上の考えを機上に進水させる意図がある。

小さなプログラムをたくさん作って動かすという経験をたくさん積むことで、より大きなプログラムを短い時間で作り上げることができるようになる。

部分を作る経験をたくさん積んでいくと、いつの間にか全体を作っていることになる。その境界線ははっきりしていない。

最初から全体を作れる人はいないのだが、最初から全体を作ろうとする人は結構いる。

» UNIXという考え方―その設計思想と哲学