こんにちわ、VOYAGE GROUPでエンジニアをしている伊織といいます。
RubyKaigi2010/2011でスタッフをさせて貰ったりしています。
他にも渋谷rbランチなどに顔を出させて貰っています。
弊社の先輩エンジニアは勿論の事、RubyKaigiのスタッフをやらせてもらったりShibuyarblunchやLispコミュニティでうろちょろしているお陰で僕の周りには凄いプログラマーが沢山います。そこで、周りの凄腕プログラマーが実際に読んで「良かった」と言っていた技術書を幾つか挙げてみたいと思います。自分で手を動かしてやった本は僕の感想も添えます。
まだ途中までしかやっていませんが、説明はかなり丁寧で最初はすいすいいけます。
段々と難しくなるそうですが・・・(SICPと双璧って言われるくらいですしね)
2分探索木を綺麗に作れないとこうまで違うのか!と実例をストーリーで紹介してくれたので、非常に関心しました。
やはりアルゴリズムなどは大切だと強く実感しました。
shibuya.lisp#7でLispマシンを作った方が、コレを読みながら作ったと仰っていました。
主に言語や分野に依らない、プログラミングの基礎的な分野に絞ってみました。僕も上記の本は殆ど持っているんですが、中々手ごわくて読み終わらないですorz
やはり「凄い!」と言われていたり、実際にそう感じるエンジニアは基礎がしっかりと出来ていると感じます。これでもまだまだ足りないとは思いますが、その基礎を固めるのに必要だと思う本を何冊か紹介させて頂きました。
RubyKaigi2010/2011でスタッフをさせて貰ったりしています。
他にも渋谷rbランチなどに顔を出させて貰っています。
弊社の先輩エンジニアは勿論の事、RubyKaigiのスタッフをやらせてもらったりShibuyarblunchやLispコミュニティでうろちょろしているお陰で僕の周りには凄いプログラマーが沢山います。そこで、周りの凄腕プログラマーが実際に読んで「良かった」と言っていた技術書を幾つか挙げてみたいと思います。自分で手を動かしてやった本は僕の感想も添えます。
有名な魔術師本。MITで長年教科書として使われてきた本です。今はPythonなので違う筈。今やっている最中です。とても素晴らしい本だと思います。この本は数学の知識がなければ読み進めるのが辛いですが、逆をいうと頑張って読み進めれば数学の知識も一緒につきます(他の本で勉強したりして読み進めることになるので)。難しいので1ページ読むのに1時間とか掛かるんですが、確実に自分の力になっていると感じています。弊社ではSICP勉強会が5レーンくらい走っているほど、この本による教育に力を入れています。
計算機プログラムの構造と解釈
クチコミを見る
SICPと双璧を成す本。プログラミングには様々な概念があります。関数型言語であったり破壊的代入であったりOOPであったりです。それら全てを学ぶにはどうすればいいでしょうか?一つは全てのプログラミング言語を学ぶことです。ですが、それは現実的ではありません。また言語の歴史によってその概念は美しい状態ではないかもしれません。プログラミングを一つの学問として捉えた時に、全ての概念を修める為にはどうすればいいのか?著者のその思いからこの本は生れました。その想いをマルチパラダイムプログラミング言語OzとMozartシステムで実現しています。
まだ途中までしかやっていませんが、説明はかなり丁寧で最初はすいすいいけます。
段々と難しくなるそうですが・・・(SICPと双璧って言われるくらいですしね)
CommonLispでどうやって実践的なソフトウェアを書くのか?という点に焦点が絞られており、他のLISP本とはその点で一線を画する。carとcdrがかなり後半にならないと出てこない、異例のLISP本です。普段使うようなソフトをCLで作りたい人にはお勧めです。自分で簡単なデータベースやユニットテストフレームワークを書くという素晴らしく楽しい本です!!!プログラミングやソフトウェア開発そのものをCLで学びたい場合は、実用CommonLispのほうが良いと思います。
実践Common Lisp
クチコミを見る
AIプログラミングを通して、ソフトウェア開発そのものも学べます。最初の数章でCommonLispそのものも十分に解り易く学べます。実践CommonLispとは違いcarやcdrから始まる、Lispの伝統的な教科書ですが他の本よりもとても解りやすいです。お高いですが、他の本を数冊買うよりもこれ一冊買ったほうが良いと思います。
実用 Common Lisp (IT Architects’Archive CLASSIC MODER)
クチコミを見る
全然クイックリファレンスじゃないw 1章の「アルゴリズムは大事だ」のギャリーが格好良過ぎる!
アルゴリズムクイックリファレンス
クチコミを見る
2分探索木を綺麗に作れないとこうまで違うのか!と実例をストーリーで紹介してくれたので、非常に関心しました。
やはりアルゴリズムなどは大切だと強く実感しました。
コンパイラやるならこれかドラゴンブックの双璧でしょうか?割と僕の周りはタイガーブックのほうが好きな人が多いです。
最新コンパイラ構成技法
クチコミを見る
一時期ポストSICPとして話題になった本。確かにSICPと違って数学などの周辺知識のハードルが低くて解り易く、とても良い本でした。言語はOCamlです。デザインレシピという考え方がとても気に入りました(元々はLispから来た考えらしいです)。 また、かなり最初からテストを書きながらコードを書いていくちゃんとした本です。他の入門書や言語の本はテストという章はあっても、他の章ではテストを書きながら進めて行くのは少ないので、非常に良い本だと感じました。
プログラミングの基礎 (Computer Science Library)
クチコミを見る
オートマトンの勉強するならこの本ってイメージありますよね。こういった知識は基礎体力なので大事だと思います。また、読んでいて面白いです。最初は結構ちんぷんかんぷんだったんですが、SICPや数学入門という本を読み進めていくうちに読めるようになってきました。
計算理論の基礎 [原著第2版] 1.オートマトンと言語
クチコミを見る
最近はゲーデルの不完全性定理とか知ってなきゃ駄目なイメージが勝手にあります。バッハ、エッシャーまではすいすい読めました。ゲーデルは結構重い。この本の名前にゲーデルの謎を解く、とか他の本を読むと良いかもしれません。
ゲーデル、エッシャー、バッハ―あるいは不思議の環 20周年記念版
クチコミを見る
僕はRubyやLispという超高級言語でばかり遊んでいるので、低レベルな部分も勉強しよう!っと言った時にお勧めして貰った本です。刺激的な内容でわくわくしながら読めます。
Binary Hacks ―ハッカー秘伝のテクニック100選
クチコミを見る
レガシーコードに苦しんでいる人は是非読んだほうが良い本です。レガシーコードに苦しんでいた時に、TDDで有名な某和田さんに相談した時にお勧めして貰った本です。また、レガシーコードを生まないのにも役立つと思います。
レガシーコード改善ガイド (Object Oriented SELECTION)
クチコミを見る
アルゴリズムの勉強をし始めたときにお勧めして貰いました。数学的な基礎からしっかりみっちり教えてくれる本で、弊社のアルゴリズム勉強会でもこれを使うという話が出ています。
数学的基礎とデータ構造 (アルゴリズムイントロダクション)
クチコミを見る
アルゴリズムの設計と解析手法 (アルゴリズムイントロダクション)
クチコミを見る
有名なヘネパタ・パタヘネのパタヘネです。僕はまだ未読ですが、絶対に読むべき本と強く推薦してもらいました。今ある積読が終わったら取り掛かろうと思います。
コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース 第3版 (上)
クチコミを見る
コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース 第3版 (下)
クチコミを見る
同じくヘネパタ・パタヘネのヘネパタです。これも読まなければ!!!
コンピュータアーキテクチャ 定量的アプローチ 第4版 (IT Architects’ Archive)
クチコミを見る
shibuya.lisp#7でLispマシンを作った方が、コレを読みながら作ったと仰っていました。
主に言語や分野に依らない、プログラミングの基礎的な分野に絞ってみました。僕も上記の本は殆ど持っているんですが、中々手ごわくて読み終わらないですorz
やはり「凄い!」と言われていたり、実際にそう感じるエンジニアは基礎がしっかりと出来ていると感じます。これでもまだまだ足りないとは思いますが、その基礎を固めるのに必要だと思う本を何冊か紹介させて頂きました。