時代をリードするエンジニア19人が推薦! 若手エンジニアに薦めたい「座右の書」
さまざまな領域で活躍する19名の著名エンジニアに、「自分のキャリアを支えてくれた一冊」を聞きました。
エンジニアがスキルを磨きたいとき。キャリアプランに迷ったとき。モチベーションを高めたいとき。いつも助けになってくれるもの。それは、本。
優秀なエンジニアを目指すのであれば、良質な多くのインプットが不可欠です。それでは、各領域の著名なエンジニアにとって、良質なインプットとは? 本稿では、19名の著名エンジニアに、自身のキャリアを支えてくれた“この一冊”というべき名著を伺いました。
各領域で活躍するエンジニアたちは、数多ある書籍からどんな一冊を選び、そこから何を学んできたのでしょうか? 自身のスキルやマインドを磨くために、絶対に読んでおくべき珠玉の書籍を、ご本人と書籍の関わりエピソードとともに紹介してもらいました。
※人名の50音順に掲載。回答者は敬称略とする。
- 池澤あやかが推薦!『Prototyping Lab』
- サイバーエージェント 板敷康洋が推薦!『リファクタリング』
- リーバンス 今井彩碧(あやみん)が推薦!『アップルのデザイン』
- マネーフォワード 卜部昌平が推薦!『リファクタリング』
- 及川卓也が推薦!『コンピュータ・アーキテクチャ』
- はてな 大西康裕が推薦!『未来の二つの顔』
- フューチャースタンダード 金田卓士が推薦!『エッセンシャル思考』
- きゅんくんが推薦!『現代アートビジネス』
- GMOペパボ 栗林健太郎が推薦!『起源のインターネット』
- SHOWROOM 佐々木康伸が推薦!『OpenSocial入門』
- NTT OSSセンタ 澤田雅彦が推薦!『リーダブルコード』
- Planetway Corporation トーニュ・サミュエルが推薦!『The Black Swan: The Impact of the Highly Improbable』
- アトラクタ 永瀬美穂が推薦!『塹壕よりScrumとXP』
- ビタワンが推薦!『リーダブルコード』
- BASE 藤川真一(えふしん)が推薦!『ゆとりの法則』
- トレタ 増井雄一郎が推薦!『伽藍とバザール』
- TEAMBOX 矢倉大夢が推薦!『プログラミングコンテストチャレンジブック』
- サムライズム 山本裕介が推薦!『エクストリームプログラミング』
- サイバーセキュリティクラウド 渡辺洋司が推薦!『問題発見プロフェッショナル―「構想力と分析力」』
- 名著から学ぶ、エンジニアの成長エッセンス
池澤あやかが推薦!『Prototyping Lab』
ソフトウェアエンジニアだけど、ハードウェアにも挑戦してみたい。そう考えている方も多いのではないでしょうか。そんな方にぴったりの一冊が『Prototyping Lab』です。この本では、Arduinoを使ったハードウェアプロトタイプの作り方を体系的に学ぶことができます。
「距離の計測」「動きの検出」「LEDのコントロール」など、目的別に詳しい解説が載っています。ですから、たとえば「人が近づいたら中から人形が飛び出すびっくり箱を作りたい」というアイデアしかないような状態でも、どうすれば実現できるのかを考えるのに役に立ちます。
私は大学の研究室に所属していたころ、この本と出会いました。まだまだ電子回路設計もプログラミングもおぼつかず、熱意だけがあった当時、プロトタイプを作るときにこの本に何度も助けられました。初心者にとっては大変分かりやすいハードウェア入門書です!
池澤あやか(いけざわ・あやか)[twitter:@ikeay]
タレント/エンジニア。1991年7月28日 東京都出身。2006年に第6回東宝シンデレラオーディションで審査員特別賞を受賞し、芸能活動を開始。様々なドラマ、映画、バラエティ、情報番組に出演。最近はタレントとして、Abema TV「Abema Prime」への出演やさまざまなメディア媒体への寄稿などを行う一方で、フリーランスのエンジニアとして、Webサイトの制作やプロトタイプアプリケーションの開発にも携わっている。
サイバーエージェント 板敷康洋が推薦!『リファクタリング』
10年以上前のプロジェクトでご一緒していた先輩からおすすめされた一冊です。コードの可読性と保守性を向上させることで属人化を防ぎ、要求変化や機能追加をしやすくするためのリファクタリングのテクニックが多数紹介されています。
当時駆け出しのプログラマだった自分にとって、リファクタリングのスキルや考え方のプロセスを知ることは非常に大きな学びがありました。
この本では、問題の発見から改善状態の提示、そして実際の改善まで順を追って詳細に解説されています。こうしたプロセスはリファクタリングのみならず、一般的な学習や問題解決にも応用できることに、本書を繰り返し読む過程で気づきました。
ものごとを学ぶ際には、やみくもに進めるのではなく、まずは理想の状態とダメな状態の両方を知ることが重要。そうすることで判断の軸ができ、学びのスピードが加速すると感じています。
どちらかというとプログラミング初心者向けの書籍ですが、上記のようにさまざまな示唆に富んだ書籍です。
板敷康洋(いたしき・やすひろ)[twitter:@yasitashiki]
株式会社サイバーエージェント プロジェクトマネージャー。2013年サイバーエージェント入社。アバターコミュニティサービス「アメーバピグ」のチーフエンジニアを担当した後、技術本部のマネージャーに。新感覚SNS「755」や定額音楽配信アプリ「AWA」の負荷対策プロジェクトを経て、技術組織戦略グループのエンジニア兼マネージャーに。2017年9月より現職。
リーバンス 今井彩碧(あやみん)が推薦!『アップルのデザイン』
「ジョブズは“究極”をどう生み出したのか」という副題からも分かる通り、本書はApple社とApple創業者であるスティーブ・ジョブズの大胆かつ繊細な「究極」のこだわりに触れることができる一冊です。
彼らは、Macのデザインや店舗の設計はもちろん、分解しなければ分からないiPhoneの内部構造、通常であれば開封すればゴミ箱行きとなる商品のパッケージに至るまで繊細なこだわりを見せています。
こうしたジョブズ率いるAppleが生み出した異常なほどの「究極」のこだわりを、カラー写真満載で読者に伝えています。
私がこの本に出会ったのは中学3年生のとき。ちょうどプログラミングを始めた頃で、それから3年以上、この本に支えられてきました。本書を読み進めながらAppleのクリエイティビティに触れることで、初心に立ち返り、改めて自身のものづくりへの熱意やこだわりを認識できます。読んだ後はいつも、止まっていた創作の手が進んだり、新しい事業を思いついたりと、私にとって本書は「魔法の本」です。
何かものづくりをしている人には、ぜひ手に取っていただきたい一冊。きっと、ジョブズ率いるAppleのクリエイティビティに読者の創作意欲が掻き立てられるはずです。
今井彩碧(いまい・あやみ)[twitter:@ayami_ii]
株式会社リーバンス JK専務。中3でプログラミングに出会い、高1でエンジニアとしてベンチャー企業の新規プロダクト開発に携わる。その後、エンジニア、デザイナーまたプロデューサーとして、約10社に携わる。前職ではIT系ベンチャー企業の最高執行責任者(COO)に就任し、新規事業開発を行う。現在は高校に通う傍ら、教育系ベンチャーである株式会社リーバンスにて専務取締役・教育事業部代表・起業家育成高校運営代表を務める。夢は「教育から世界を変えること」。
マネーフォワード 卜部昌平が推薦!『リファクタリング』
この記事をご覧の皆さんは、Webエンジニアを志していたり、すでにWebエンジニアになっている方でしょう。また多くの場合、自分で事業を起こしているわけではなく、既存のWebサービスに手を入れていることかと思います。
自分も皆さんと同じようなシチュエーションで、すでにある膨大なプログラム群のどこからどう手をつければいいか分からず、五里霧中の気分を経験したことがあります。
そんなときに力強くサポートしてくれたのが本書(の旧版)です。サンプルコードは刊行当時のJavaなのでやや古いですが、普遍的な内容でありさほど古さが問題にならないのと、新装版では今っぽい記述に直したものも追記*1されていて、これも参考になるかと思います。
困っている事柄に、経験と勘ではなく、知識と技術で挑む。この基本的な姿勢を本書は教えてくれました。業務でプログラミングを始めたばかりの頃、いきなり役に立ったという点で、とても印象に残っています。
卜部昌平(うらべ・しょうへい)[twitter:@shyouhei]
株式会社マネーフォワード フルタイムRubyコミッター。プログラミング言語Rubyコミッター、日本Rubyの会監事。大学院在学中の2008年ごろからRuby開発に携わる。大学院修了後は趣味としてRuby開発を続けるかたわらプログラマーとして数社に勤務。その後2015年よりマネーフォワードにてフルタイムでRuby開発に携わり現職。監訳にオライリー『プログラミング言語Ruby』。
及川卓也が推薦!『コンピュータ・アーキテクチャ』
1990年代初頭、私は当時勤めていた会社から、米国マイクロソフトに出向することになりました。まだ私が20代のころの話です。
その頃のマイクロソフトはWindows 3.0のヒットにより、世間の注目を浴びる存在となっていました。しかし、エンタープライズに進出するには、当時のWindowsでは機能も安定性も不足していたため、Windows NTという現在のWindowsの源流となったOSの開発がスタートしました。このWindows NTの開発プロジェクトに参加することが私の出向の理由でした。
業界からも注目を集めるOSの開発に参加できるのはとても光栄でしたが、大学で正式にコンピューター科学を学んだわけでもなく、社会人になってからも(ユーザーモードで動作する)アプリケーションの開発しかしていなかったため、基礎的な知識が足りません。
渡米までに少し期間があったので、仕事の傍らコンピューター・アーキテクチャの勉強をしました。その時に読んだ書籍の中の一冊が、このヘネシー&パターソン『コンピュータ・アーキテクチャ 設計・実現・評価の定量的アプローチ』*2。通称「ヘネパタ本」です。
700以上のページ数と4cm以上の厚さという分量だけでも圧倒されますが、難易度もかなり高い本です。分からないところは他の書籍にあたるなどして読み終えた頃には、コンピューター・アーキテクチャの基本は理解できるようになっていました。
本書以外に、当時勤めていた会社、ディジタル・イクイップメント・コーポレーション(DEC)の主力マシンであるVAXについて解説された『VAX/VMS Internals and Data Structures』やWindows NTの動作を解説した『Inside Windows NT』なども読みました。『Inside Windows NT』は、まだ出版前のものをマイクロソフト経由で入手したのですが、出荷前のOSのアーキテクチャ解説本が出るということからも当時の注目ぶりが分かるでしょう。
現在のITは、当時からは比べ物にならないくらい進化しており、コンピューター・アーキテクチャの重要性はさらに増しています。たとえば、昨今注目を集める機械学習では、GPUやFPGAも使われています。ビルディングブロックとして用意されているものを組み合わせるだけでも最新のソフトウェア開発は可能ですが、仕組みの部分を知ることで、さらに高度な開発が可能となることでしょう。
かなり読み応えのある書籍ですが、プロフェッショナルとしての知識を広く深くするために、一読をおすすめします。
及川卓也(おいかわ・たくや)[twitter:@takoratta]
テクノロジスト。早稲田大学理工学部を卒業後、日本DECに就職。営業サポート、ソフトウエア開発、研究開発に従事し、1997年からはマイクロソフトでWindows製品の開発に携わる。2006年以降は、GoogleにてWeb検索のプロダクトマネジメントやChromeのエンジニアリングマネジメントなどを行う。その後、スタートアップを経て、独立。現在、企業へ技術戦略、製品戦略、組織づくりのアドバイスを行う。
はてな 大西康裕が推薦!『未来の二つの顔』
高校の図書室で、本著の筆者であるジェイムズ・P・ホーガンに出会ったことは、その後の人生に大きな影響を与えました。『巨人たちの星』シリーズも印象深いですが、「人工知能と人類との対決」というSFの古来のテーマかつ現代的なテーマでもある本書を多感な10代のころに読んだことは、後に職業プログラマとなるきっかけになったと思います。
元来、プログラマにとって一番の愉悦(ゆえつ)は「万能感」であると感じています。「世界をあるがままに動かす」は無理でも、目の前の端末やスマートフォンやブラウザを自由に操れるという錯覚を覚えることができる。そしてその結果、多くの人の人生に影響を与えられる。そんなプログラマに憧れていました。
そうした意味でも、プログラマの(人類の)万能感にコンピュータが敵対するという本書は、21世紀に読み返しても色あせないSF小説の金字塔であり、高校生の自分がそんな万能感に憧れるきっかけとなった思い出の一冊です。
大西康裕(おおにし・やすひろ)[twitter:@yasuhiro_onishi]
株式会社はてな 執行役員 サービス・ビジネス開発本部長(元エンジニア)。2001年に創業メンバーの1人として有限会社はてな(当時)に入社。主にエンジニアリングを担当し、チーフエンジニアとして全サービスの開発や技術部の指導・育成に携わる。「はてなブログ」の立ち上げや事業化を指揮し、2014年8月より執行役員 サービス開発本部長を経て、2016年8月より現職。
フューチャースタンダード 金田卓士が推薦!『エッセンシャル思考』
以前に勤めていた会社を転職をすることになった際、当時お世話になっていた社長にご挨拶に伺ったところ、餞(はなむ)けとして頂いた言葉が「今後も社会人生活は続くのだから、もっと仕事量をコントロールしなければいけないよ」というものでした。
当時は、働き過ぎがたたり、体調を崩した直後だったため、それを案じてそのような言葉をかけて下さったのだと思います。一方で、仕事量が多かったのは仕方がなかったという思いもあり、なんだか釈然としない気持ちを抱えたまま部屋を後にしたのを覚えています。その後しばらく経ち、友人に紹介をされ本書を読んだところ、転職の際に頂いた言葉が脳裏によみがえり、ストンと腑に落ちたような気がしました。
本書で一貫して主張されているのは、「より少なく、しかしより良く」ということであり、いかに人生において本質的な事柄を見定め、それを実行していけばよいかという方法論が述べられているのですが、とりわけ自分の胸に刺さったのは、本当に重要でない仕事以外は断るべきという考え方でした。
思い起こせば、体調を崩した当時の私は、ビックデータが注目され始めたという時勢もあり、複数のプロジェクトを抱えながら、求められるがまま多くの会議に出席し、チームのマネジメントもこなすという生活を送っていました。
でも、そのすべてが本質的な仕事だったかと問われれば、ノーと言わざるを得ないでしょう。もし、当時の私がこの本に書かれているようにうまく仕事を断ることができていたら、働きすぎて体調を崩すこともなかっただろうと思います。
活躍する人ほど、さまざまな仕事が集まり手一杯になりがちですが、そんな時に立ち止まって読んでもらえれば何かのヒントが得られるのではと思います。
金田卓士(かねだ・たかし)[twitter:@kndt84]
株式会社フューチャースタンダード データサイエンティスト。2009年慶應義塾大学大学院修了。専攻は計量経済学。旅行系ECサービス、大手SIer、ファッション系ベンチャー企業にて、データ分析チームの立ち上げや、データ分析基盤の構築等に従事。2016年より現職。現在は、主に映像解析サービスの新規立ち上げとプロジェクトマネジメントに従事。
きゅんくんが推薦!『現代アートビジネス』
現代アートをビジネスの観点から書いた新書。著者の小山登美夫氏は、奈良美智氏、村上隆氏をはじめとするアーティストの展覧会を企画・開催し、海外へも積極的に紹介したことで著名です。
高校生の頃、勉強場所として通っていた図書館で本書を偶然見つけ手に取り、ビジネス視点でのアートの価値の測り方に衝撃を受けました。古よりアートとお金に切っても切れない関係があるのは自明のことなのですが、現代アートに視点を移した途端に、それがよく分からなくなってしまうことは多いものです。
この本は現代アートにおけるお金の巡りの全容をスッキリと解説した本。現代アートの市場形成を知ることは、一見すると価値が測りにくいものに対して「いかにして価値を測るか」の方法論を知ることに繋がります。コミュニケーションロボットなど、産業用以外のロボット分野はまだ市場が形成されているとは言い難い分野。そういった分野で市場を作ろうと考えたとき、現代アートにまつわる話は役に立つでしょう。
この本の内容は、私がものを作る際の価値観のベースになっていると思います。さらっと軽く読める本なので、アートのことが全く分からないという人にこそ読んで欲しいです。
きゅんくん [twitter:@kyun_kun]
メカエンジニア。1994年東京都出身。ファッションとして着用するロボットを制作している。高校生の頃より「メカを着ること」を目標にロボティクスファッションの制作を続け、2014年よりウェアラブルロボットの開発を進めている。メカエンジニアとしてもフリーランスで活動中。
GMOペパボ 栗林健太郎が推薦!『起源のインターネット』
エンジニアとして、『プログラミングPerl』『プログラミング言語Ruby』『詳解UNIXプログラミング』『24時間365日サーバ/インフラを支える技術』など、常に手元から離さず、繰り返し参照してきた本はたくさんあります。また、エンジニア組織のマネージャーとしては、『組織パターン』『スーパーエンジニアへの道』の示す道標に従ってここまで歩いてきました。
そして、本原稿の執筆のためにふと自分の来歴を思い返してみて改めて気付いたのは、そもそも「インターネットが好きである」という気持ちがすべての原動力であったのではないかということです。その意味において「自分自身のキャリアを支えてくれた名著を一冊」ということであれば、本書『起源のインターネット』が真っ先に思い出されます。
スティーブ・ジョブズがそこからMacintoshの着想を得たという逸話でも有名な、パロアルト研究所で開発されたコンピュータ「Alto」。その設計と開発を監督し、ARPA(国防高等研究計画局)で後世のインターネット技術の基盤となる研究を指揮していたロバート・テイラーのエピソードを始め、インターネット黎明期の猛烈に面白い話が詰まった本。
そんな彼を、インターネット産業におけるロールモデルの一人として、個人的に私淑(ししゅく)しています。昨年、勤務先で「ペパボ研究所」という研究機関を立ち上げ、所長として研究ディレクションにも関わるようになり、ほんの少し彼に近づいたという感慨を覚えているのです。
技術と社会のビジョンを何十年も昔に正確に見すえ、実現のために尽力してきた姿は、これまでもそうであったように、今後も自分のキャリアの支えになることだろうと思います。
栗林健太郎(くりばやし・けんたろう)[twitter:@kentaro]
GMOペパボ株式会社 取締役CTO。東京都立大学法学部卒業後、市役所勤務を経て、2008年よりソフトウェアエンジニアに転じ、株式会社はてな勤務を経て、2012年よりGMOペパボ株式会社で勤務。2017年3月より、取締役CTO。好きな言語はPerl、Ruby、Goあたり。年間200冊以上読む本好き。最近は、FinTechまわり、特に仮想通貨やブロックチェーン技術にハマっている。Webサイトはhttps://kentarok.org。
SHOWROOM 佐々木康伸が推薦!『OpenSocial入門』
SHOWROOM株式会社はDeNAの新規事業がスピンアウトして子会社になったものなのですが、この本は自分がDeNAに入社するキッカケになった一冊です。
この本に出会ったのは、もう8年も前。当時はMyspaceでMafia Warsというゲームがとんでもない売り上げを叩き出していた時代で、「むむむ!なんだコレは?」と思っていました。その流れで同書に出会ったことで「ああ、これからのITサービスはこっち(OpenSocial)だな」という確信というか興味をもの凄く持ち、DeNAに入社しました。
もしかしたら、この本に出会っていなかったらDeNAに入っていなかったかもしれないですし、SHOWROOMというサービスも世の中に生まれていなかったかもしれない。そういう意味で、思い入れが深い本です。
OpenSocialって言葉を聞くと「新しい事に対しての嗅覚というかアンテナを張って、なんかこれ来るぞっていう感覚を日々持つことは重要だなー」といつも思い出します。
今となってはさすがに古い本ですし「若手エンジニアに薦める」という感じではないのですが、トレンドを常にキャッチアップすることの大切さを、選書からくみ取ってもらえれば嬉しいです。
佐々木康伸(ささき・やすのぶ)[twitter:@YasunobuSasaki]
SHOWROOM株式会社 オールラウンダー。SHOWROOM株式会社ファウンダーエンジニアとして開発もしつつ、会社の足りないとこを幅広くカバー。直近はSHOWROOMの社内にて新規に事業やサービス開発を担当している。
NTT OSSセンタ 澤田雅彦が推薦!『リーダブルコード』
学生時代に「自分が理解できていればいいや」とソースコードを書いていた私に、コーディングやソースコードレビューに関する基礎知識を教えてくれた書籍です。
本書は名著としてとても有名なので、内容については多くの方がご存知でしょう。実例を多く用いて解説されているので初心者でも理解しやすく、初めて読んだときは「なるほど、こう書けばよいのか」と何度も思ったことを覚えています。
私は現在、PostgreSQLの開発コミュニティにてPostgreSQL本体のコードを書くことがあるのですが、世界中にいる開発者が一つのソースコードを改変していく中で、本書でも解説されているようなシンプルかつ明快なコードはとても説得力があることを実感しています。
本書を通じて、そのようなコードが優れている理由を理解できたことや、そのようなコードを書く技術の基礎を身につけられたことは、私のキャリアにおいてとても重要なことです。今ではコーディングに対する思いも変わり、一つ一つのソースコードに対して自分の思いを込めて書くようにしています。
澤田雅彦(さわだ・まさひこ)[twitter:@sawada_masahiko]
NTT OSSセンタ PostgreSQLコントリビューター兼DBエンジニア。2012年、NTTデータに入社。以降、PostgreSQLに関する業務に従事し、主にPostgreSQLの本体開発、技術支援および、国内外問わずさまざまなカンファレンスにて講演を行っている。2016年より、NTT OSSセンタに勤務。PostgreSQLコミュニティでは、Contributorとしてレプリケーション、VACUUM、分散トランザクション機能の開発やバグ修正を通してコア開発に貢献。
Planetway Corporation トーニュ・サミュエルが推薦!『The Black Swan: The Impact of the Highly Improbable』
「起こり得そうもないような事件」は、ときに私たちの周りで起こり、我々の常識を覆します。たとえばオーストラリアの発見も、それまでの人類にとっては起こり得そうもなかったことに違いないでしょう。
人生には予測不可能な出来事があるのだということを、この本は改めて教えてくれます。本書はこれからビジネスを興していこうと思うすべての方が絶対に読むべき1冊です。
トーニュ・サミュエル [twitter:@tonuonu]
Planetway Corporation CTO。C言語とMySQLのエンジニアとして30年のキャリア。セキュリティ分野の知見も有する。また、NASAのTeam Kuukulgurというエンジニアチームにて宇宙科学の発展に貢献するためのCentennial Challengeに携わった経験を持つ。
アトラクタ 永瀬美穂が推薦!『塹壕よりScrumとXP』
実は、本書は書籍として発行されたものではありません。のちに『リーン開発の現場』として日本語版も出版された『Lean from the Trenches』の著者であるHenrik Kniberg氏による、ScrumとXPを組み合わせたアジャイル開発の実践事例で、InfoQで無料公開されています。
これは、私たちのチームが初めてのアジャイル開発に挑戦しようとしているとき、チーム全員で読書会を開いた思い出の本。それまでアジャイル開発の経験がなかった私たちには、書かれているすべてのことが新鮮で、彼らチームの試行錯誤も苦も楽もすべてがキラキラして見えました。このチームをお手本に、自分たちのチームも新たな旅に出ようと覚悟を決めた、強い思い入れのある読み物です。
技術書籍にも関わらず読み応えのある物語というのが印象的でした。その数年後、私自身が仲間と『Scrum Boot Camp The Book』を書くことになるとは思ってもみなかったですし、その際この読み物を強く意識したのは言うまでもありません。
10年前の実践事例なのでプラクティスとしては古臭く感じるところもあるかもしれませんが、無料ですので読まれてみてはいかがでしょうか。その後、本書の後日談として、Agile Israele 2011の基調講演の「Scrum & XP beyond the Trenches」というスライドが公開されています。
永瀬美穂(ながせ・みほ)[twitter:@miholovesq]
株式会社アトラクタ Founder兼CBO。ナイスビアの人。受託開発の現場でエンジニアやPMとして経験を重ね、2009年頃より所属組織でのアジャイル開発の導入と実践を通じ組織マネジメントを行う。2013年にアジャイルコーチとして独立。同時に産業技術大学院大学特任准教授としてアジャイル開発を教えている。筑波大学や琉球大学でも非常勤講師を勤め、他大学での出前授業も多数。2016年にアトラクタを設立。
ビタワンが推薦!『リーダブルコード』
世界中のすべてのプログラマに読んでもらいたいと思う一冊です。この書籍には、プログラムを「読みやすく」書くノウハウがぎっしり詰まっています。優れたプログラムとは何か。それは「理解しやすく」「読みやすい」ものである。という信念に基いてこの本は書かれています。
この本と出会うまでは、なんとなくの経験則でプログラムを書いていた自分ですが、この本の内容を読んでからは「読みやすいプログラムこそが良いプログラムだ」と意識しながらコーディングをするようになりました。
優れたプログラムの定義は人によって違うものだとは思いますが、過去に読みづらいコードに苦戦した経験のある人、自分のプログラムに自信のない人、過去の私と同じようになんとなくでプログラムを書いている人は、きっと読んで損はありません。
2020年からプログラミング教育が必修化されるとのことですが、ぜひ教科書になって欲しいと思います。
ビタワン [twitter:@vitaone_]
プログラマ兼漫画家。都内で働くしがないプログラマです。副業で「いきのこれ!社畜ちゃん」という漫画を連載しています。働きだして3年目くらいでブラック企業を辞めて、「プログラムだけをやりたい」と奮起してフリーランスになり、なるべく嫌な仕事を避けつつのんびり働いています。メインの言語はPHPです、SwiftとJavaでスマホアプリの案件も何度か経験しています。
BASE 藤川真一(えふしん)が推薦!『ゆとりの法則』
この本が出たのは15年ほど前。私は当時、受託業務と自社プロダクトを開発するWebのベンチャー企業で働いていました。
そこで初めてチームを持ちリーダーになりましたが、どのようにマネジメントすれば開発プロジェクトが上手くいくのかを思い悩んでいました。まだ、リーダーとして心のゆとりもなかったです。トム・デマルコ氏が書いた『ゆとりの法則』『熊とワルツを』などの本は、悩みを解決してくれた本でした。
プレーヤーからリーダー職の立ち位置に変わっていくには、自分でコードを書いているときには可視化されていなかった「時間の使い方」や「品質管理のあり方」に向き合うことが必要です。
この本は、システム開発のプロジェクトとはそもそも何か、スケジュールに間に合わせること、仕様とスケジュール、リーダーシップ、リスクに立ち向かうこと、チームを管理することなど、プロジェクトの世界観を教えてくれます。
プロジェクト管理の難しさは何年たっても不変です。周りのメンバーと上手くやっていくことに対して、休日もストレスを感じるような初心者リーダーには、とてもおすすめしたい本です。
藤川真一(ふじかわ・しんいち)[twitter:@fshin2000]
BASE株式会社 テクノロジスト(手をうごかす知識労働者)。1973年生まれ、埼玉県出身。FA装置メーカー、Web制作のベンチャーを経て、2006年にGMOペパボ株式会社に入社。ショッピングモールサービスにプロデューサーとして携わるかたわら、2007年から携帯向けTwitterクライアント「モバツイ」の開発・運営を個人で開始し、後に法人化。2014年8月からBASE株式会社 取締役CTOに就任。2017年9月に慶應義塾大学大学院メディアデザイン研究科博士課程を単位取得満期退学し、研究員になる。
トレタ 増井雄一郎が推薦!『伽藍とバザール』
▼USP研究所: 書籍 - 伽藍とバザール:bookmark
エリック・レイモンドの『伽藍とバザール』は1998年に発表されたエッセイ(日本語訳)。別名「esrオープンソース三部作」と呼ばれています。
このエッセイが最初に発表されたときにはまだオープンソースという言葉はなく、このエッセイを読んだNetscape社が自社のブラウザをMozillaとして公開するためにオープンソースという言葉を作ったのが始まり。
でも、この言葉ができる前から、Linuxなど著名なオープンソースプロジェクトはありましたし、「みんなが寄ってたかって作るOSが商用レベルに到達する」ということも証明されていました。
すでに存在していた概念を分析し、エッセイという理解しやすい形にまとめて名前を付けることで、人々に認知されて会社や社会に大きな影響を与える。その様子をリアルタイムに見ていた私は衝撃を受けました。
私もこのエッセイに元にPukiWiki Projectをスタートさせ、国内でも有数のオープンソースプロジェクトになるまで成長しました。この本は私のキャリアに大きく影響しており、原点の一冊と言うべき本になりました。
増井雄一郎(ますい・ゆういちろう)[twitter:@masuidrive]
株式会社トレタ 風呂グラマー。大学時代に起業しWebサイト制作などを行う傍ら、PukiWikiなどのオープンソース開発にも積極的に参加。2008年に渡米しiPhone向け写真共有アプリPhotoShareをリリース。2010年に帰国し、アプリSDK『Titanium Mobile』の伝道師として活動後、ミイル株式会社を設立し料理写真共有アプリ『ミイル』をリリース。現在は2013年に起業した株式会社トレタにてCTO。個人活動として『wri.pe』や『→Kitayon』を作成。趣味はお風呂でコーディング。
TEAMBOX 矢倉大夢が推薦!『プログラミングコンテストチャレンジブック』
中学の頃、僕はパソコン研究部という部活に所属しており、そこでは全員で情報オリンピックというプログラミングコンテストに参加することになっていました。そこで先輩からすすめられたのがこの一冊です。
動的計画法や二分探索から、ダイクストラ法、ネットワークフローまで、プログラミングコンテストに必要なアルゴリズムが、かなり具体的な実装と一緒に網羅的にまとめられています。もしかしたら、僕が参照した回数の一番多い技術書かもしれません。
こういったアルゴリズム的な知識やセンスは、普段のプロダクト開発でも役に立っています。たとえアルゴリズムの部分をライブラリに任せていても、処理にどれくらい時間がかかりそうなのかをイメージできるかできないかが、エンジニアとしての一つの試金石になる気がします。
最近は、TopcoderやCodeforcesといった海外のオンラインプログラミングコンテストに加え、AtCoderという日本語のプログラミングコンテストも開催されています。みなさんも、一度トライしてみてはいかがでしょうか。
矢倉大夢(やくら・ひろむ)[twitter:@hiromu1996]
株式会社TEAMBOX CTO。中学3年生で、IPA未踏プロジェクトに採択。その後、U-22プログラミングコンテストで経済産業大臣賞、SECCONで文部科学大臣賞を2度受賞。現在、株式会社TEAMBOXでCTOを務める。
サムライズム 山本裕介が推薦!『エクストリームプログラミング』
小学生から始めたプログラミングですが、コードの規模が大きくなるにつれて爆発的にメンテナンスが難しくなることが悩みでした。
また、業務で書くプログラムは趣味で書くような「芸術的な」コードではないため行数に比べて複雑さはさほどないものの、多人数で書くコードがちゃんと動くことを保証するのは大変難しいとも感じていました。
JUnitを使った単体テスト手法などを学んだ上で、さらに品質を安定させる方法はないかと模索していたところ出会ったのがこの本です。
初版は2000年か2001年ごろだと思いますが*3、ペアプログラミングや継続的インテグレーションなど、今でも現場によっては「先進的過ぎてまだ導入できていない」テクニックが詰まっているのは驚きです。
本書のおかげで、規模の増大と共に苦痛になっていたプログラミングが、規模に関わらず楽しめるものとなりました。
山本裕介(やまもと・ゆうすけ)[twitter:@yusuke]
株式会社サムライズム 経営もするエンジニア。SIerから外資系のミドルウェアベンダ、Web系を経て現在は株式会社サムライズムという会社で海外の素敵なプログラマ向けツールを発掘して日本国内展開する事業を手がけています。最近はArduinoとかスプラトゥーン2 を遊んでます。左利きです。まぶしいとクシャミがでる体質です。
サイバーセキュリティクラウド 渡辺洋司が推薦!『問題発見プロフェッショナル―「構想力と分析力」』
仕事をしていく中で最も重要なスキルとも言える、問題発見と問題の構造化にフォーカスした書籍です。
会社運営やシステム開発、サービス運用をする上では、常に「なぜ?」を問うことが重要。そして、そのためには根本にある問題構造を適切に捉えることが必要です。この捉え方を間違えたがゆえに、時間をかけた取り組みが意味のないものになってしまった、というケースは多くあります。
ソフトウェア開発のリーダーであった頃、なんとなく仕事をこなせていた私に上司が教えてくれたのがこの書籍でした。
どんなプロジェクトでも、時間が経ってしまうと「なぜ?」の部分が薄まり、分解された作業を消化して進捗を評価するだけになってしまいがちです。本当に問題がないならいいのですが、そんなことはありません。プロジェクトチームの問題や社会情勢・組織構造の変化は常に存在します。
変化を踏まえた上で、ゴール設定を変える必要はないか。取り得る手段はこれがベストなのか。変えるべきタイミングはいつなのか。本書を読んだことで、根拠を持ってこれらを示せるようになりました。
感覚で仕事をこなせるようになったエンジニアが、もう一段階上の成長を望むとき、非常に役立つ書籍だと思います。
渡辺洋司(わたなべ・ようじ)[twitter:@aqeuefem]
株式会社サイバーセキュリティクラウド CTO。大手IT企業の研究開発のコンサルティングを手掛ける企業において、クラウドシステム、リアルタイム分散処理・異常検知の研究開発に携わる。サイバーセキュリティ分野のクラウドサービスを手掛ける、サイバーセキュリティクラウド社のCTOを務める。
名著から学ぶ、エンジニアの成長エッセンス
優れた書籍は、エンジニアのスキルを向上させ、マインドを改善させ、時には人生すらも変えてしまうような力を持っています。各領域の一流エンジニアたちが推薦してくれた本を読み、エンジニアとして成長するためのエッセンスを学んでいきましょう。
編集:中薗昴(サムライト)