プログラミングの本質を知りたい。そんなときは、やはり現職プログラマーの話を聞くことが一番です。
トッププログラマーが語る本音のエッセイから、本質を学びましょう。
『プログラマが知るべき97のこと』とは
トッププログラマーによるエッセイ集
書籍『プログラマが知るべき97のこと』には、たくさんのプログラマーによる97本のエッセイが詰め込まれています。日本語訳版には、さらに日本人プログラマー10人によるエッセイもプラスされています。
それらはいずれも、トッププログラマーが語る渾身のエッセイです。
どこからでも気軽に読める
エッセイは、いずれも1~2ページで完結しています。パラパラとページをめくり、気になったエッセイから読み進めることもできます。
またエッセイは、カテゴリによって整理されています。プログラミングで困った時に、辞書として利用することもできます。
エッセイの例
特に、初心者プログラマーに役立つエッセイを3つご紹介。
美はシンプルさに宿る
エッセイの中で、筆者はプラトンの言葉を引用しています。
文章にしろ、和音にしろ、リズムにしろ、美しく、優雅なもの、優れたものはすべて、シンプルである。
プログラムコードを書くときに注意することは、まとめれば以下のこと。
- 可読性
 - 保守性
 - 開発効率
 - (言葉で表現するのが難しい)美しさ
 
そしてそれらは、シンプルであることを心がければすべてが達成される。としています。
プログラマーであれば「シンプルなほうがいい」という主張に異論を唱えるひとはいないでしょう。このエッセイでは、その理由を丁寧に説明しています。
学び続ける姿勢
学び続けることは、プログラマーにとって大事なことです。(プログラマーでなくても大事ですが)
でも、具体的にどうやって学べばよいのでしょう?
このエッセイでは、具体的な学びかたを、14通りの方法で語っています。簡単にまとめると以下のこと
- 書籍や雑誌を読む
 - コードを自ら書く
 - 自分よりレベルの高い人と仕事をする
 - 自分の「良き師」をネットで探す
 - 自分の使っているフレームワーク/ライブラリの知識を深める
 - 問題を深く理解する
 - 人に教えたり話したりする
 - コミュニティに参加する
 - カンファレンスに参加する
 - 通勤時間にポッドキャスティングで学ぶ
 - 静的分析ツールを使う
 - 『達人プログラマー』を読んで実践する
 - コンピューター以外のことも学ぶ
 - 学校に通う
 
詳しい話は、ぜひ書籍で読んでみてください。
テストのないソフトウェア開発はあり得ない
ソフトウェア開発は、ものづくりという意味で、建設作業と比較されることがあります。このエッセイでは、両者の根本的な違いを論じています。
ソフトウェア開発を橋の建設に例えると、「橋を作ってから、重いものを乗せて耐えられるか確かめる」というようなことをしています。橋の建設でこんなことありえないですね。
ソフトウェア開発では、手軽にテストができます。作りながらテストする、テストしながら作る、ということができるわけです。でも、手軽であるがゆえに、テストが軽視されてしまうときがあります。
橋の建設をするとき、
今回は構造解析しなくてよいよ。何しろ工期が迫っているからね。
なんて決していいません。
でもソフトウェア開発では、
今回は時間がないから、テストなんてしていられない!
ということを、言ってしまうときがあるわけです。
このエッセイでは、テストに関わる大事なことを述べています。
- テストは、ソフトウェア開発における品質保証の第一の手段
 - テストをしさえすれば、それで十分ということはない
 - でも、まずテストをしないことには話にならない
 
ソフトウェア開発において、テストをおろそかにすることはあり得ない。エッセイではこの重要さが語られています。
まとめ
書籍『プログラマが知るべき97のこと』にある107本のエッセイ。トッププログラマーの言葉は心に響きます。
でもその中には、何かしっくり納得できないものがあるかも。
おかしいことは何もありません。本書ではこう述べられています。
- 知らなくてはならないこと、しなくてはならないことは、無数にあります
 - そのため、誰も「これが唯一正しい道だ」と言えません。本書もそういう本ではありません
 - エッセイ同士が補完しあう関係になることもあれば、矛盾し合うものもあります
 - そこから、自分なりにつながりを発見し、自分だけの物語を紡ぐのがよいでしょう
 
ぜひ本書で、自分の、プログラマーとしての物語を作ってみてください。



					
コメント