個人の記録として、2022 年 2 月に読んだ本をまとめます。
プロジェクトマネジメント
アート・オブ・プロジェクトマネジメント ―マイクロソフトで培われた実践手法
プロジェクトマネジメントに関して、なんとなく目についた『アート・オブ・プロジェクトマネジメント』を読みました。
現実のプロジェクトが難しいという前提で、そんな場面でどうしていくかが書かれている本です。
プロジェクトマネジメントの難しさを感じたことがあれば、グッとくるような名著でした。
CPU
RISC-VとChiselで学ぶ はじめてのCPU自作 ――オープンソース命令セットによるカスタムCPU実装への第一歩
CPU について、『コンピュータシステムの理論と実装』の非常に簡易的なものしか作ったことがなかったので、こちらの書籍を手に取りました。
実装は途中までしかしていませんが、HDL (Chisel) による CPU の設計について学ぶことができました。
RISC-V はかなり話題にもなっていますし、CPU 自作に興味がある方におすすめできる書籍です。
プログラミング言語
独習アセンブラ 新版
独習C++ 新版
低レイヤを学ぶために、アセンブリ言語と C++ の基礎を学びました。
どちらの本もボリュームが大きいこともあり、本格的に書けるようになるというよりはざっと把握する程度の読み方にしておきました。
『独習アセンブラ』については、CPU アーキテクチャについて知識を深めることもできて良かったです。
言語処理系
Go言語でつくるインタプリタ
コンパイラ: 原理と構造
インタプリタやコンパイラに興味があり、これら 2 冊を読みました。
『Go言語でつくるインタプリタ』は、字句解析・構文解析・Tree-Walk 型インタプリタまでざっと実装して学べる、噂通りの名著でした。
写経するだけでも非常に勉強になるので、インタプリタを作ってみたいという方に是非手に取っていただきたい一冊です。
『コンパイラ: 原理と構造』は、教科書的な本であるにも関わらず、文章が非常に読みやすく、「プログラミング言語とは何か?」に関する考えも深まりました。
教科書的な本に抵抗がない方にはとてもおすすめです。
機械学習
Kaggleで勝つデータ分析の技術
先月から Kaggle に挑戦し始めたため、定番らしいこちらの本を手に取りました。
ざっと読みましたが、今の自分はまず手を動かしたほうが良い段階に感じたので、少し Kaggle でコードを書いたりしてから再度この本に戻ってこようと思います。
DevOps
The DevOps 勝利をつかめ! 技術的負債を一掃せよ
途中まで読んで詰んでいたこちらの書籍も読みました。
DevOps については他の書籍などである程度知識があったため、読み物として楽しませていただきました。
おわりに
以上、今月は 8 冊の本を読みました。
いわゆる低レイヤの勉強として、CPU・アセンブリ言語・C++・言語処理系に手を出せて良かったです。
インタプリタは写経した以外にもちょっとしたものを作ったので、言語処理系については結構知識が増えたように感じます。(一方で、仕事で使えるレベルはまだ先だなとも感じます…)
関連して、いつか正規表現エンジンも自作しなくては、と思いました。
3 月は低レイヤの勉強で外せない、OS 自作に挑戦するつもりです。