プログラマのための IT 教科書

この教科書の使い方

この部の 1 / 4 章 ・ 全体で 1 / 76 章 ・ 読了目安 10 分

この章を読むとできるようになること
  • 自分が今どこを読むべきか判断できる
  • エラーメッセージと公式ドキュメントの読み方の型を持つ
  • 何分詰まったら人に聞くかを決められる

この教科書は、プログラマとして働き始めるために必要な IT の基礎を、順番に積み上げていくためのものです。

大学の授業で習うような体系的な知識と、実際の現場で必要になる知識は、重なっている部分もあれば、 まったく重ならない部分もあります。この教科書は後者、現場で必要になる方に寄せて書いています。

何が書いてあるか

最終的なゴールは、TypeScript と Go でマイクロサービスを書き、gRPC で通信させ、 Kubernetes にデプロイして、Spanner にデータを保存できるようになることです。

そこまでを実際に手で通す章が、最後にあります (通しで作る: gRPC・Kubernetes・Spanner)。 GCP のアカウントは要りません。手元の Docker とエミュレータで完結します。

ただ、そこに直接ジャンプすることはできません。gRPC を理解するには HTTP が必要で、 HTTP を理解するには TCP が必要で、kubectl を使うにはターミナルが必要です。 なので下から順に積みます。

部内容いつ読むか
第1部・第2部シェル、Git、開発の進め方、読む・直す・書く技術最初に。必読
第3部・第4部コンピュータとネットワーク、JavaScript / Go、HTML・React業務が始まるまでに
第5部〜第8部gRPC、DB と SQL、Kubernetes、設計、安全性、運用業務と並行して
第9部ハンズオン(サービスを1本、通しで作る)一通り読んだ後

全部を順番に読み切る必要はありません。第1部と第2部だけでも、 先輩との会話が「何を言っているか分からない」から「知らないけど調べられる」に変わります。

職種別に、特に読むところ

第0部から第3部は、どの職種でも共通の土台です。 そのうえで、担当が決まっているなら次を優先してください。

担当特に読む章
バックエンド第5部すべて / Go / API 設計 / DB / メッセージング
Web フロントエンドHTML と CSS / React / フロントエンドの実務 / ブラウザはなぜ動くのか
モバイルアプリモバイルアプリの実務 / スキーマと RPC(後方互換性)/ 認証と認可
SRE・インフラ第8部すべて / Docker / Kubernetes / 性能と負荷対策 / ネットワーク
お金・在庫・予約を扱う間違えられない処理を作る / ビットとバイト(金額)/ 見つけにくいバグ / エンジニアと法律
データ・分析データベース / バッチとジョブ / 計算量とデータ構造
QA・品質テストを書く / 見つけにくいバグ / デバッグの技術
担当外の章も、いずれ効いてきます

「自分はフロントだからサーバーは要らない」とはなりません。

  • フロントの人が API 設計を知っていると、使いやすい API を要求できる
  • サーバーの人がモバイルを知っていると、後方互換性の重要さが腹落ちする
  • 全員がセキュリティと法律を知っていないと、誰かが穴を空ける

まず担当分野を読み、落ち着いたら周辺に広げてください。

手を動かす部分について

この教科書は読み物が主役です。 本文に出てくるコマンドは、そのまま自分のターミナルに貼って動かせる形で書いてあります。 読むだけで終わらせず、手元で1回打ってみてください。 打った時の出力は、文章より速く記憶に残ります。

打つ前に、戻せるかどうかを確認する

rm・chmod・git reset --hard のように、打つと戻せないコマンドがあります。 この教科書では、そういうコマンドに必ず注意書きを付けています。

意味の分からないコマンドを、コピーしてそのまま実行しない。 特に、本番環境や共有サーバーでは絶対にやらないでください。 練習は自分のマシンか、壊しても構わない使い捨ての環境でしてください。

各章の途中と最後には、理解を確認する選択問題があります。 不正解の選択肢にも「なぜ違うか」を書いてあるので、迷った時ほど選んで解説を読んでください。

知らない言葉が出てきたら

この教科書には用語集(162語) が付いています。ヘッダーの「用語集」から開けます。

□ 開発プロセス / Git / Web / インフラ / 運用 / DB / 設計 / 品質 / セキュリティ
□ 「握る」「温度感」「よしなに」など、**社内でよく出る言い回し**も収録

そして本文中では、初めて出てくる重要な用語に 「用語:」という囲みを付けています。

分からない言葉は、その場で調べるか聞いてください。 放置すると、その後の説明がすべて分からなくなります(次章)。

詰まった時にどうするか

これがこの章で一番伝えたいことです。

30分ルール

30分考えて進まなければ、人に聞いてください。

新人がやりがちな最悪のパターンは、3日間ひとりで詰まって、 スプリントの終わりに「実はできていません」と言うことです。 これはあなたの評価を下げるだけでなく、チームの計画も壊します。

一方、30分詰まって聞くのは、まったく問題になりません。 先輩は5分で答えられることが多く、その5分でチームは2日を節約できます。

聞くときは、次の3つを添えると一発で答えが返ってきます。

  1. 何をしようとしたか(例: ローカルで API サーバーを起動しようとした)
  2. 何が起きたか(エラーメッセージをそのまま貼る。要約しない)
  3. 何を試したか(例: ポートを変えてみた、docker ps を見た)
エラーメッセージを要約しない

「なんかエラーが出ます」では誰も答えられません。 エラーメッセージには原因がほぼ書かれているので、全文をそのままコピーして貼るのが最短です。 自分で読む時も同じで、長くても最初と最後の数行は必ず読んでください。

調べる順番

  1. エラーメッセージをそのまま検索する。固有のパス名や ID は消して検索します
  2. 公式ドキュメントを見る。ブログ記事より公式が正確で、たいてい速い
  3. AI に聞く。ただし答えをそのまま信じず、公式ドキュメントで裏を取ります
  4. 人に聞く

3 の注意点は、AI は存在しないオプションやメソッドを自信たっぷりに答えることがある点です。 「そんなコマンドは無い」と怒られたら、それは AI が間違えています。

この教科書の書き方の約束

  • なぜそうなっているかを書きます。手順だけ覚えても、状況が変わると応用できません
  • 実務の落とし穴を明示します。オレンジ色の枠がそれです。ここで時間を溶かす人が多い箇所です
  • できないことは正直に書きます。ブラウザ上のシミュレーションには限界があるので、 「ここは実機で確認してください」と書いてあります
読み終わったら記録を

各章の下に「読了にする」ボタンがあります。押すと目次に反映されるので、 どこまで読んだか分からなくなりません(この記録はあなたのブラウザにだけ保存されます)。

まとめ

  • 下から順に積む。第1部・第2部が最優先
  • 読むだけで終わらせず、手元のターミナルで実際に打つ(戻せないコマンドだけは注意書きを読んでから)
  • 30分詰まったら聞く。エラーメッセージは全文貼る
  • 公式ドキュメントを最初に見る癖をつける

次の章から3つは、技術の話ではありません。 学生と実務の違い・日々の心構え・社会人としての規律を先に押さえます。 最初につまずくのは、たいてい技術ではないからです。

読み終わったら記録しておくと、目次で進み具合が分かります。