プログラマとして仕事をするときに勉強したほうがいいもの

ブログ形式の都合で、6/17のできごとを18日の項に書いてます。
イデアルITスクールというところで3時間ほど話をしてきました。
http://www.ideal-ed.jp/


テーマなしだったのですが、だいたい表題のようにプログラマとして仕事をするときに勉強したほうがいいものについてという内容で話てみました。
特に今回は、これからプログラマとして働くという人たちだったので、高度なことを目指せるようにという視点だけではなくて、たとえばプログラマは生活の糧で休日はプログラム以外に当てるという場合に、高度ではないことを楽に行うという視点も考えてみました。
まあ、結局言うことは同じなのですけども。


話してるときに書いたメモ


で、紹介した本。なんどかあげたことあるもの。
まずは、プログラムが動く物理的なマシンの制約をしるために、CPUとかハードウェアのアーキテクチャ知っておくのが大事ですよってことで。

CPUの謎―CPUの中で何が行われているか?

CPUの謎―CPUの中で何が行われているか?


あと、サーバー構成としてクラウドが流行ってますと。

クラウド大全 第2版

クラウド大全 第2版


数学・論理方面では、論理学をやりましょう、と。プログラムを効率的に考えれるだけではなく、考えるということ自体の効率がよくなるので、プログラマにならないとしてもおすすめ。
簡単な真理値分析もしました。

論理学

論理学


ただ、上記の本は不完全性定理まで触れていて、そこまで必要というわけでもないので、簡単によむならこちらでいいかと。

入門!論理学 (中公新書)

入門!論理学 (中公新書)


で、論理計算からプログラムのほうに入るなら関数型言語ということで、OCamlを使ってるこの本。

プログラミングの基礎 ((Computer Science Library))

プログラミングの基礎 ((Computer Science Library))


アルゴリズムグラフ理論をやるのに、この本。

最短経路の本

最短経路の本


あと、高校でやるような数学も大切なので、数学ガールは読んでおけ、と。

数学ガール (数学ガールシリーズ 1)

数学ガール (数学ガールシリーズ 1)


それから、今回は持っていってなくて挙げてかったけど、組み合わせ理論の話。赤・青・黄のおみやげの話とか、道順の組み合わせの話とか。


という感じで、ぐだぐだ3時間ほど話をしました。


最後は、東京タワー楽しいという話。
ストリートビューで、その場でとられたユーザー写真が立体的にマッピングされています。
http://j.mp/97m4AU