
Joel on Software
Joel Testで有名な元MSの開発者である著者のソフトウェア開発にまつわるあれこれを綴ったエッセイ的内容。
もちろん現役のエンジニアなんで、コードの書き方にも触れてはいるものの、全体を見れば、システム開発に関するプロジェクトマネージメントの方法、開発プロセスのあり方、仕様書の書き方、採用からチームビルドの方法といった感じで、読み物として非常におもしろいので、非エンジニアな方でも楽しめる。
文体の好き嫌いはあるだろうが、これは彼の言うところ、退屈な文章に興味を持ってもらえるような工夫だろう。
ソフトウェア開発に関わる開発者、マネージャー、設計者の姿が滑稽に情緒豊かに描かれている。読みながら上司や同僚を思い浮かべて、”あるある”とうなづく事になる。
実際には、彼がどんな人間でどんな仕事をしたノかは知らないし、エンジニアとしてのスキルがどうなのかもしれないが、彼の持つ視野の広さは、僕がシステムエンジニアの資質として非常に重要だと感じる。(自分の知る限りこういうエンジニアは数少ない)
たいていのステレオタイプなシステムエンジニア像としては、実際にシステムを利用するのユーザの事など一切考えず、目の前のコード対峙しつづける。システムの振る舞いについて質問しようものなら、APIがFalseを返していますので、これは正常な挙動ですなんてエラーメッセージみたいなメールしか返さない。こんなステレオタイプなプログラマとやり取りしていると、同じ世界にこんな人間がいるのか?という疑念すら生まれてくる。
システム(ソフトウェア)を使うユーザをの事を考え、ビジネス戦略を理解した上でコードを書く、エンジニアなんてものが存在するのだろうか、ワォ、クール!
社会人としてウェブの制作会社に就職したとき、いきなり実戦に放り込まれたのはいいが、その時は、サイトマップのすら存在も怪しく、ワイヤーフレーム、ましては要求(機能)仕様書なんてのは、そのチームには存在していなかった。そんな時、仕様書ってこう書けばいいのかというのを教えてくれたのでが、日本語に翻訳されたJoel on Softwareだった。
その仕様書に章にも書かれているが、ユーザーが何を実現できるのかというユーザー視点や、単にユーザーではなく、ユーザーに名前をつけて、個性や背景をもった人間として、システムを設計するいわゆるペルソナ的な考え方も紹介されている。
ただ、彼のバックグラウンンドは商用ソフトウェアの開発者なので、ここで書かれているすべてがウェブサイトの開発に当てはまるというとそうでもない。マイクロソフトの話はもういいよと思う時もたまにはあるがどのような立場であっても、どんな形態であってもシステム開発に携わる人間なら一度は読んでおいた方がいいかもしれない。
ということで、★★★★☆









