非エンジニアにこそ本当に読んでほしい技術書9冊

みんなのスタンバイ編集長のおだです。中学生の頃はクラウン英和辞典を読みあさるのが趣味だったほど、文系の世界で生きてきた私。紆余曲折あってITベンチャーで「エンジニアに萌えるお姉さん」という広報キャラクターを務めていたんですが、エンジニアって知れば知るほど奥深い職業なんですよね。

「あの人の頭のなかはどうなっているの?」とすっかり魅了された私が今回紹介したいのは、エンジニアリングの世界をそれぞれの切り口で語っている書籍です。Java や Ruby などのプログラミングを知るまえに、そもそもエンジニアってナニモノなのか?どんな仕事をする人たちなのか?

非エンジニアのあなたへ、まず手にとってほしい珠玉の9冊をお送りします。今回の記事を作成するにあたって、知り合いのエンジニアに勧められた本もあわせてピックアップしました。

1. ハッカーと画家 コンピュータ時代の創造者たち

プログラミング画面

(出典) photo-ac.com

ハッカーって聞くと「システムを妨害する悪意のあるプログラマー」のような誤ったイメージがありますよね。この本におけるハッカーはプログラマーの意味で使われています。著者のポール・グレアム氏はプログラマーで現在はDropboxやEvernoteに出資したベンチャーキャピタリスト。

“ハッカーと画家に共通することは、どちらもものを創る人間だということだ”という彼の言葉からプログラミングの壮大な世界観が伝わってきます。エッセイ集なのでポール氏のプログラマー兼経営者としての自伝書としても読めますよ。

2. プログラムはなぜ動くのか

パソコンを操作する手元

(出典) photo-ac.com

プログラミングの本はどれも技術の解説ばかりで非エンジニアが買って読むのには敷居が高すぎます。それならプログラムがどうやってコンピューターのなかで動いているのか知るところから始めてみましょう。ちなみに私はこの本でCPUとはなにかを学びました。CPUが人間でいう頭脳にあたるのはぼんやり把握していたのですが、思った以上にCPUは指揮命令権をもっていて驚きました。

3. プログラマが知るべき97のこと

パソコンで作業をする女性

(出典) photo-ac.com

知り合いのエンジニアに「おすすめの本を教えて!」と聞くとほぼ確実に名前が挙がるのがこの本。プログラミングが好きな人たちにとっては永遠のバイブル的な存在のようです。世界中で活躍するプログラマー97人が大事にしている価値観をそれぞれの想いで語るエッセイ集で、日本語版では日本の著名なプログラマー10人の書きおろしが収録されています。プログラミングという技術への尊敬と愛にあふれた名言集として読んでみてください。

4. アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣

会議をする女性たち

(出典) photo-ac.com

開発手法で “アジャイル” とか “ウォーターフォール” とか聞いたことはあるけど何それ食べられるの?という方でも安心してください、読めますよ。この本は効率よく作業を進めるために身につけるべき習慣について主張しています。「人ではなくアイディアを批判しなさい」などのアドバイスが、まさに円滑なチームワークに必要な考え方だなぁと気づかされます。あらゆる組織とプロジェクトに関わっている人なら学びの多い本でしょう。

5. Team Geek ―Googleのギークたちはいかにしてチームを作るのか

PCとスマホを操作する人物

(出典) photo-ac.com

ここに挙げている10冊のなかで一番読みやすいと感じた本です。なぜならこれは良いチームづくりの指南書だから。Googleのエンジニアはいかにして自分たちを取り巻く環境、それは上司や組織、ユーザー、さらに業界や技術そのものとどう向き合えば先進的なソフトウェア開発とユーザーの豊かな生活に貢献できるチームをつくれるのかが書かれています。

6. 人月の神話

キーボードのアップ

(出典) photo-ac.com

40年前に発売されてからずっとソフトウェア開発の名著と言われている本です。今まで紹介してきた本がプログラミング寄りなのに対してこの本はエンジニアリング寄りのお話。ソフトウェア開発の期間を見積もるのに必要な単位である“人月”(5人月=1人で5か月かかる)は本当に正しいのかを概念的に議論しています。読んでいて難しいなぁと感じる箇所が多く、1回読んだだけでは理解できそうにありませんでした。夏の課題図書向きかな!

7. 数学ガール

授業中の高校生の男女

(出典) photo-ac.com

ちょっと一息つくのに読みたいのは、有名なプログラマーの結城浩さん(@hyuki)の『数学ガール』シリーズ。美しいアルゴリズムやプログラムという感覚を理解するためにはやはり数学の世界観を知っておかないといけません。高校生の男女が真っ直ぐな心で数式に向き合っていくストーリー性のある展開なので青春小説として楽しめます。あと高校生の頃にこんな数学の考え方に出会っていたらなぁとセンチメンタルな気持ちにもなれます。

8. Webを支える技術 -HTTP、URI、HTML、そしてREST

パソコンとスマートフォン

(出典) photo-ac.com

いまあなたが読んでいるこのページも、毎日チェックするSNSもWebで出来ています。今から26年前に生まれたWebがどのように設計されているのか、技術的に解説しているのがこの本です……が、正直いって理解するのは無理!書いてあることを自分ごとに捉えるのは非エンジニアにはほぼ不可能な内容です。

でも私が大事だと思うのは並んでいる単語や図解をさらっとでもいいから眺めること。そして、Webを支える技術とその未来を真剣に考えている人たちの存在を知るのが、エンジニアの心に寄りそう第一ステップではないでしょうか。

9. アート・オブ・コミュニティ ―「貢献したい気持ち」を繋げて成果を導くには

発表をするビジネスパーソン

(出典) photo-ac.com

エンジニアの世界には有志で特定の技術情報を共有しあうコミュニティがたくさんあります。テック系イベントスペース運営のお仕事をしていたときに初めてコミュニティに出会ったんですが、コミュニティ活動ってほとんどが業務外なのに皆さん無償でやっているんですよね。

それはオープンソースの文化を盛りあげつつ守っていこうとする貢献の気持ちがあるからなんだよと話しているのがこちらの本です。週末に勉強会へ出かけるエンジニアの彼氏をお持ちの女性には特に勧めたいです。

おわりに

エンジニアにはなれないしプログラミングはわからない。じゃあプログラミング勉強すれば?って言われるけど敷居が高い。そう思っていた私がとった行動はエンジニアを取りまく世界をとりあえず知ってみることでした。この記事があなたが初めて技術書を手にとるきっかけになれば嬉しいです。