📚

おすすめ本【技術書・ビジネス書・文学】

ShuyaShuya

僕がこれまでに読んだ中で特におすすめの技術書・ビジネス書・文学作品を紹介します.


(amazon等のリンクを貼っていますが,アフィリエイトではありません.)

技術書

コンピュータシステムの理論と実装

NANDゲートから始めて,ブール論理,アセンブラ,仮想マシン,コンパイラ,OSまでを段階的に自分で構築していくプロジェクトベースの本. 抽象的な概念を,実際に動くものを作ることで体感的に理解できる.低レイヤを学びはじめたい初心者におすすめ.

Amazon

オーム社

試して理解 Linux の仕組み

プロセス,スレッド,仮想メモリ,ファイルシステム,コンテナなどLinuxの内部を実験と豊富な図解で徹底解説. 実際にコマンドを打ちながら検証できるため,OSの動作原理が直感的に身につく.

Amazon

技術評論社

オペレーティングシステム 第 2 版

CPU仮想化,並行実行,主記憶管理,ファイルシステムなどOSの核心をコンパクトに体系的に解説した入門教科書. かなり教科書っぽい感じだが,説明がわかりやすく,薄いのですぐ読める.

Amazon

森北出版

プログラミングの基礎

関数型言語OCamlを使い,デザインレシピでプログラミングの本質的な思考法を丁寧に指導. データ構造・アルゴリズムを実際の問題解決を通じて学び,型安全や再帰の美しさが体感できる. 手続き型・オブジェクト指向しか知らない人ほど新しい視点が得られる. Ocamlを学ぶために読んだ.

Amazon

サイエンス社

システム設計の面接試験

大規模システム設計面接で頻出の問題と解答パターンを体系的に整理. 負荷分散,キャッシュ,DB設計,シャーディングなどのトレードオフを具体例で解説. 僕は面接対策のためではなく設計の気持ちを理解するために読んだ. 抽象的な議論ではなく,現実的な制約を考慮した思考が学べる.

Amazon

ソシム

失敗から学ぶ RDB の正しい歩き方

現場で頻発するRDB設計・運用の失敗事例(アンチパターン)を20件紹介. 各事例にエピソード,問題点,対策,教訓がまとめられていて,実践的な知見が得られる. データベース設計の「やってはいけない」を避けるためのバイブル.

Amazon

技術評論社

プロになるための Web 技術入門

(読んでいる途中)

HTTP,セッション,セキュリティ,MVC などWebシステムの根本原理を丁寧に解説. Webの根本を理解することで,フレームワークやライブラリに依存しない本質的なスキルが身につく.

Amazon

技術評論社

ネットワークはなぜ繋がるのか

ブラウザで URL 入力からページ表示までの全過程を追いながらTCP/IPを解説. マスタリングTCP/IPを読んでしっくりこなかったためこちらを読んだが,流れを理解できて非常に良かった.

Amazon

日経 BP

競技プログラミングの鉄則

競技プログラミング向けだが,アルゴリズム・データ構造の基礎を体系的に学べる. 図と例が豊富でわかりやすく,思考力と実装力が確実に向上する. 自分でコードを書いてAtCoderの採点システムで答え合わせができる.

Amazon

マイナビ出版

計算理論とオートマトン言語理論

オートマトン,形式言語,計算可能性,計算複雑性理論を丁寧に解説した定番教科書. コンピュータ科学の理論的基盤をしっかり構築できる. P vs NPなどの深いトピックにも触れられる.

Amazon

サイエンス社

データ指向アプリケーションデザイン

(読んでいる途中)

大規模分散システムのデータベース,ストリーミング,キャッシュの実装原理を深掘り. 信頼性・拡張性・保守性のトレードオフを具体例で解説.

Amazon

オライリー・ジャパン

大規模言語モデル入門

Transformerから GPT・BERT などのLLMの理論と実装を丁寧に解説. トークナイザー,事前学習,ファインチューニングなどもかれている. 高専 4 年の時のプレ卒研究でゼミをした.

Amazon

技術評論社

はじめてのパターン認識

ベイズ決定則,線形判別,SVM,ニューラルネットワークなどパターン認識の基本理論を体系的に解説. 数式の導出が丁寧でわかりやすい. 機械学習の理論基盤をしっかり学びたい人に良い.

Amazon

森北出版

ゼロから作る Deep Learning ③ フレームワーク編

DeZeroというフレームワークをゼロから構築し,自動微分やOptimizerの内部を理解. PyTorch/TensorFlowの裏側がわかるようになり,ライブラリ依存から脱却できる. 独立した内容なので3から読んでも理解できる.

Amazon

オライリー・ジャパン

詳説データベース

(読んでいる途中) Bツリー,LSMツリー,分散コンセンサスなどストレージエンジンの内部を解説している. データベースの仕組みを深く理解したい人に最適. 挫折中だが,いつか読み切りたい.

Amazon

オライリー・ジャパン

Web API: The Good Parts

RESTful設計,HTTP正しい使い方,OAuth,バージョン管理など良質APIのベストプラクティス. 「良いAPI」と「悪いAPI」の違いが具体例でわかる.

Amazon

オライリー・ジャパン

NewSQL 徹底入門

Spanner,TiDB,CockroachDBなどNewSQLの分散アーキテクチャを詳解. ACIDと水平スケーラビリティを両立させる最新技術. コンセンサス,分散トランザクション,地理的分散を解説.詳説 DB が難しくて挫折中なのでまずこれを読んだ.

Amazon

講談社

ビジネス書

ゼロ秒思考

メモを書きまくることで思考が整理されるという本. 具体的な書き方や根拠などが書かれている.

Amazon

ダイヤモンド社

世界一流エンジニアの思考法

マイクロソフトのトップエンジニアが実践する問題解決・チームワークの思考法. マルチタスクは生産性が低い,試行錯誤は悪,など個人的に激しく共感できる内容が多いと思った.

Amazon

文藝春秋

イシューからはじめよ

本当に重要な「イシュー」を見極め,仮説駆動で効率的に成果を出す方法. 無駄な作業を減らし知的生産性を向上させる.

Amazon

英治出版

財務3表一体理解法

貸借対照表,損益計算書,キャッシュフロー計算書の連動を取引ごとに図解. 職業関係なく会計の知識があるといろいろ便利だと思う.

Amazon

朝日新聞出版

文学

ネタバレがあるかもしれません...

アルジャーノンに花束を

知能障害の主人公が手術で天才になり,再び元に戻っていく過程を描く物語. 主人公の日記形式で書かれており,感情移入せざるを得ない. みんな,優しくなろう.

Amazon

早川書房

老人と海

おじいちゃんがデカい魚と戦う話. 短編ながら深い余韻が残る. 人生における全てに対してモチベーションが発生する.

Amazon

新潮社

星の王子さま

砂漠に不時着したパイロットと小さな王子の出会いを通じて人生の本質を描く寓話. 大切なものは目に見えない,関係性や責任の意味を優しく教えてくれる. 大人になって読むとまた別の発見が得られる.

Amazon

新潮社

番外編 (オンライン技術書)

Zenn: プログラマが知るべき 97 のこと

プログラミングに関する97の知見やベストプラクティスを独立した章でまとめた無料オンライン書籍. 関数型プログラミング,コード設計,リファクタリング,テスト,チームワークなど幅広いトピックを扱う.

https://zenn.dev/yoshi389111/books/prog-097-org

Zenn: 図解DBインデックス

データベースインデックスの必要性,仕組み,特徴,効果的な作成方法を図を多用してわかりやすく解説した本. 基礎からしっかり固めたい人にぴったりの入門書.

https://zenn.dev/suzuki_hoge/books/2022-12-database-index-9520da88d02c4f

Zenn: 作ってわかる! はじめての gRPC

gRPCって何?と思ったときに読んだ.

https://zenn.dev/hsaki/books/golang-grpc-starting

The Rust Programming Language 日本語版

https://doc.rust-jp.rs/book-ja/

Zenn: Tokioチュートリアル (日本語訳)

https://zenn.dev/magurotuna/books/tokio-tutorial-ja

未読本

未読だがいろんな人がおすすめしているので掲載しておく.

コンピュータの構成と設計

Amazon 日経 BP

ソフトウェアアーキテクチャの基礎

Amazon

オライリー・ジャパン

伽藍とバザール

https://www.aozora.gr.jp/cards/000029/card227.html

愛するということ

Amazon

紀伊國屋書店