会員登録すると
このコラムを保存して、いつでも見返せます
はじめに
本から得られる知識や情報は、さまざまな人の話を聞くことや実体験から得る学びと同様に、私達の世界を広げてくれます。外資就活ドットコムでは【必読の名著10選】シリーズとして、現役社会人がさまざまな切り口でセレクトするおすすめの10冊を、定期的に配信していきます。
第2回目となる今回は、独学でプログラミングを習得し、さまざまなサービス開発で活躍する現役エンジニア10人から、プログラミング学習に役立つ良書のアンケートをとり、評価の高いものをまとめてみました。
新卒時に読んでいて役に立った書籍5冊と、これからプログラミングを学習しようという方にまず読んでいただきたい5冊をそれぞれ挙げております。ぜひ参考にしてみてください(^^)
エンジニア内定者時代に読んでおいて、とても参考になった技術書5選
著:Gayle Laakmann McDowell 監修・翻訳:秋葉 拓哉
監修・翻訳:岩田 陽一
監修・翻訳:北川 宜稔
翻訳:OzyトップIT企業が行う「コーディング面接」で出された問題を通しアルゴリズムとデータ構造に関する重要な問題とその解法を分かりやすく解説。コンピュータサイエンスにおける基礎的な理解をもう一段階上のレベルに引き上げ使いこなす方法を伝授。シリコンバレー系IT企業の面接時の実際とその戦略・アプローチ・就職方法について―実際に面接採用官だった著者が詳しくアドバイスします。
コーディングインタビューを突破することに主眼が置かれた本ですが、クイズ形式で幅広い分野の知識や思考力を確認でき、勉強にも役立つ名著です。大学のコンピュータサイエンスに関する学部で習うことを総ざらいできます。基礎から固めたい人には最適です。
著:Piro(結城洋志) 編集:日経Linuxまんがで学べるLinuxサーバー管理とシェルスクリプト。
システム管理部門の新人社員、利奈みんとちゃんと先輩社員、大野桜子さんとのやり取りを通して、
すぐに役立つ情報を分かりやすく解説しています。初めての方や初心者でも楽しんで読めます。
まんがの補足情報や裏話、初掲載のイラストなど、満載です。
初心者向けにLinuxの使い方を紹介してくれる漫画です。内容がしっかりしているので、あまりLinuxを使ったことが無いけど業務で使わないといけない……という方はもちろん、経験者が読んでも「あー、あるある」や「こんなことも出来たのか」ということが多いので楽しめます。
著:秋葉拓哉
著:岩田陽一
著:北川宜稔プログラミングコンテストの問題を通してアルゴリズムのしくみや考え方を楽しく習得。世界トップレベルの著者たちがコンテストで得た知識やノウハウを難易度別にまとめました。現役プログラマだけでなくプログラマを目指している方にもぜひ読んでいたただきたい1冊。
アルゴリズムについて踏み込んで学びたいならこの本がおすすめです。プログラミングコンテストで使えるアルゴリズムの紹介をする本ですが、頻出アルゴリズムについて1から学びたい際にも大活躍。理解を深めるためにも、まだの方はぜひコンテストに出場してみてください。
著:D. A. ノーマン 翻訳:岡本明
翻訳:安村通晃
翻訳:伊賀聡一郎
翻訳:野島久雄著者ドナルド・A・ノーマンは、認知心理学者であり、ヒューマンインタフェース研究の草分け的存在だ。そして本書は、電話機、パソコン、蛇口、コンロなど、私たちの身の周りにある道具と人間の関係を真剣に考える、道具の心理学の本である。新技術を使った道具についていけなかったり、すぐに使い方を忘れたり、間違えてしまったりするとき、私たちは使えない自分を責め、恥じ入ることが多い。しかし、その態度は間違いであり、原因は道具のデザインにある、と著者は主張する。 「デザイナーは、起こり得るエラーが実際に起こることを想定した上で、そのエラーが起こる確率と、エラーが起こった時の影響が最小になるようにデザインしなければならない…」 この発想こそ、現代ヒューマンインタフェースの根底にあるユーザー中心のデザイン原理であり、本書はこのデザイン原理について一般を対象に初めて語られた代表的著作である。
自ら開発するソフトウェアでは、UIデザインに対する理解は常に必要です。大企業に勤めていると、仕事内容によってはUIまで設計することはないかもしれませんが、趣味で作るソフトウェアに役立つでしょう。古い本ではありますが、デザインの本質をついていて、今なお色褪せない名著です。
著:マーチン ファウラー 翻訳:児玉 公信
翻訳:平澤 章
翻訳:友野 晶夫
翻訳:梅沢 真史あの名著が蘇る!
プログラムに潜む扱いにくい部分を見つけ出し、その動作を変えずに内部の構造を改善していくためのテクニックを整理したマーティン・ファウラー氏によるソフトウェア開発の名著『リファクタリング プログラミングの体質改善テクニック』("Refactoring:Improving the Design of Existing Code")が、オリジナルの訳者による丁寧な見直しと現代的なJava開発環境による「再リファクタリング」を施した書き下ろし付録を収録して再発行! 旧版の価値を知るベテランはもちろん、これからソフトウェア開発に携わる新人にも必読の一冊です。
リファクタリングの大家、ファウラー先生の本です。様々なパターンがコードとともに紹介されており、リファクタリングが必要な兆候(コードスメル)を判別したり、実際にリファクタリングする際に役立ちます。
いま思う、初心者が最初に読むべき技術書5選
・プログラミング初心者です。何から始めるのが良いでしょうか
・【文系→IT業界】プログラミングを身に着けたい。どの言語から始めると良い?
著:坂本 文UNIXマガジンの連載を再構成・加筆した本書。基礎からUNIXを学習できるため初心者にお勧めです。
おそろしく古い書籍ですが...
コマンドラインにとにかく慣れていなかった私が複数の書籍を読む中で初めて抵抗感を感じずに済んだ書籍でした。
この書籍でコマンドラインに少しなれた後には「新しいLinuxの教科書」や「入門UNIXシェルプログラミング」などをながめていると、気づいた時にはそこそこにunix / linuxと親しめている様になるはずです
著:Chris Pine 翻訳:西山 伸初めてプログラミングを学ぶ入門者を対象に、プログラミングの基礎をていねいに解説するプログラミングの入門書です。プログラミングとは何かを無理なく理解してもらうために、要点をひとつひとつていねいに解説。簡単な概念から始めて、かなり高度なプログラミングの知識までを身に付けることができます。教材には、誰でもどんな環境でも気軽に使えるRubyを使い、実際に簡単なコードを書きながら理解を深めます。プログラミングを学ぶなら、本書は最初の1冊に最適な入門書です。
Rubyを学ぼうと「楽しいRuby」を読み進めるも途中からプログラミングの学び方がわからなくなってきたころにこちらに目を移していました。
Rubyを用いてプログラミングの基本的な考え方を説明してくれています。これを読み終えた後に「はじめてのRuby」や「パーフェクトRuby」を読み、プログラミングの基礎から少しずつ「Rubyらしい書き方」みたいなものを身に着けていきました
著:小森 裕介Webアプリケーション開発の「基礎の基礎」をしっかり学べる入門書。通信技術とソフトウェア開発技術の両面から、Webシステムのしくみをひとつひとつ確実に解説。
プログラミングの知識だけではwebサービスを開発することは出来ません。各種サーバーの種類やHTTPリクエストの意味など、webという枠組みの理解も併せて求められます。
webの仕組みについて初学時にまとまりもって学びたい人には絶対におすすめする一冊です。
著:山田 祥寛高性能MVCフレームワークの全機能が体系的に学べる!実践的なWebアプリケーション開発ノウハウを網羅!
この本を何周もすることでwebサービスの基本的な仕組みを頭に叩き込みました。他にも類似の書籍(Railsを用いてwebアプリを開発する参考書)を手に取りましたが、「これくらい当たり前にわかってるでしょ?」といった姿勢が一切なく最も丁寧な説明をしてくれていました。
クライアントからのリクエストを起点にアプリがどういった順で処理を行うのかという一連の流れを抑えることが出来ました。Railsからwebサービス開発を始めたいと思う方には最もおすすめする本です
著:岡本 浩一本書は、記憶心理学、学習心理学、記憶心理学などをベースに、上達法を科学的に分析。まず、「できる人」の記憶の構造はどうなっているのだろうか。アイコニックメモリ(感覚記憶)、ワーキングメモリ(作動記憶)、長期記憶などについて説明する。そして、上達の力学が<スキーマ>や<コード化>という能力にあることを解明。その理論から独自の上達ノウハウを披露する。「得意なものにこだわる」「大量の暗記暗唱法」「マラソン的訓練法」等々。さらに上達のプロセスで必ず訪れる「スランプ」とは何か、その対策も論じている。努力が報われるために、本人だけでなく、親、教育者、コーチ必読の書。
もろもろ知らないことをゼロから積み込む必要があるプログラミング初学者にとって、その過程で心折れそうになる場面は数多く訪れるはずです。
その辛い場面において、脳の学習工程を意識して「今の過程は知識整理段階だから新しい知識を入れるよりもこれまでの知識を整理しよう」「今はもう知識の踊り場だからちょっと違うものをつまみ食いしよう」などといった具体的なアクションを意識して採れるようになることは、挫折を回避する上で非常に大きな価値があります。最大限効率的にプログラミングを学ぼうと思っている方におすすめします。
おわりに
いかがでしたでしょうか。どこもかしこもエンジニアが不足している昨今、人工知能・IoTなど技術躍進によって、さらに開発者が足りなくなると言われています。今回ヒアリングした方には文系出身者も多く、「大学院から始めた」「内定してから始めた」という方もいらっしゃいました。物怖じせずチャレンジしてみると、将来が大きく開けてくると思います。
エンジニアとして本格的に就職してみたい!という方は、ぜひ以下のコラムもご一読してみてください。
・「エンジニアを目指す学生は数学だけでなく文学も学ぶべき」ブルームバーグCTOが語る「エンジニアの理想像」
・【SE・ITコンサル職】面接担当者に聞いた! 入社しても活躍しない文系学生7つの特徴
・文系学生でもプログラミングスキルは必要!?
・プログラミング未経験のド文系でもITコンサルで勝ち組になれるというお話
・「プログラミングやったほうがいいかも」と思っている文系学生に捧げる、未経験からエンジニアになったOBの助言
会員登録すると
このコラムを保存して
いつでも見返せます
マッキンゼー ゴールドマン 三菱商事
P&G アクセンチュア
内定攻略 会員限定公開
トップ企業内定者が利用する外資就活ドットコム
この記事を友達に教える