書籍タイトル:プロになるためのWeb技術入門
読む時間:14:33
はじめに
Webエンジニアとして5年間開発に携わってきた中で、「わからないことがあればググればなんとかなる」と思っていたし、「Udemyがあればテキストなんていらない」と感じていた時期もありました。
でも実際には、「調べて終わり(そして忘れる)」ということが多く、系統立てて理解できていなかったり、細かい部分まで理解が追いついていなかったりすることに気づきました。
4月から新しい案件で、バックエンドを一人で担当することになり、「こんな私で本当に大丈夫かな…」とかなり不安になっていましたそんなときに出会ったのが、この一冊でした。
📚 本書の詳細情報
印象に残ったポイント
1. 技術のつながりを把握し、「点」→「線」→「面」→「立体」
本書の第1章には「技術の学び方」という、一見すると地味で飛ばしてしまいそうなタイトルがついています。
でもじっくり読んでみたら、「まさにこれが自分の盲点だった!」と気づかされました。
私がエンジニアとしてキャリアをスタートした頃は、ちょうどHTTP/2の終盤からHTTP/3への移行期。
もはやHTML・CSS・JavaScriptだけでWebサイトを作る人は少なく、Reactなどのフレームワークから学び始める新人がたくさんいました。私自身もその一人です。
もちろん、それ自体が悪いわけではありません。
ただ、便利なフレームワークに頼るあまり、いざバグが発生したときに「リクエストの仕組みが抽象化されすぎて理解できない」「表面的な知識しかなくて本質がわからない」といった問題に何度もぶつかってきました。
そこで、本書の作者がおすすめしたのは、「点」→「線」→「面」→「立体」という勉強でした。
歴史を知って「点」の理解を「線」にする
技術のつながりを把握し「線」の理解を「面」にする
技術の「面」を階層としてとらえ「立体」的に理解する
技術が裏で何をしているのかを理解するには、必ずその当時の時代背景や、解決しようとしていた課題を知る必要があります。
たとえ今では時代が変わっていたとしても、「何がどう変わったのか?」「その結果、新たな課題は生まれていないか?」「もっと便利にできる余地はないか?」など、さまざまな視点や発想が生まれるはずです。
技術の発展の歴史をたどりながら、各ベース技術をしっかりと理解し土台を築いていかないと、たとえReactのコードが書けたとしても、それは単に「プログラムが書ける」だけの状態に過ぎません。
裏側の仕組みを理解し、根本的な問題を見抜いて解決できる力がなければ、本当の意味でエンジニアとは言えない──
本書を読んで、私は改めてそう感じました。
2. 定期的に技術サイトをチェックしよう
本書の著者は、私の“相棒”ともいえる w3schools や MDN を紹介していました。
以前はこれらのサイトでよく勉強していて、ほとんどのコンテンツを読んだことがあります。
ただ、Web技術の進化はとても速いので、定期的にチェックすることが大切だと改めて感じました。
本書では、Webまわりの技術キーワードを中心に、技術の発展の背景から具体的な使い方まで、とても丁寧に解説されています。
正直、w3schoolsやMDNを見るよりも「わかりやすい!」と思う場面も多くありました。
もちろん、w3schoolsやMDNのようなサイトはトピックごとに情報が整理されているので便利ですが、逆に言えば全体のつながりや背景を理解するのは少し難しいところもあります。
そういう意味でも、テキストとして体系的に学べる本書はとても貴重です。
そして、可能であれば英語で直接読むことで翻訳による情報のロスを避けながら、各トピックの最新情報にも触れられるのは大きなメリットだと思います。
3. 細かいキーワードを補う
このロードマップにも書いたように、エンジニアの世界には本当に幅広い分野があり、それぞれに深い知識が求められます。
実際の業務で使っていないと、なかなか理解しづらい知識も多くありますよね。
本書では、私が業務の中であまり深く触れる機会がなかった「SPA」と「SSR」の違いについても丁寧に解説されていて、読みながら心の中がすっと整理され、「やっと点と点が線でつながった!」という感覚を味わえました。
そのほかにも、Web関連のさまざまなキーワードについての章があり、正直ここでは感想をすべて書ききれないほどです。
興味を持たれた方は、ぜひご自身で手に取って読んでみてください!
まとめ・感想
本書のタイトルには「入門」と書かれていますが、まったくの初心者には正直あまりおすすめできません。
確かに丁寧に、WWWの由来やHTTP/1の始まりから説明されていますが、いきなり系統的・俯瞰的に学ぼうとすると、登場するキーワードが多すぎて(「点」が多い)、難しく感じてしまうかもしれません。
内容が抽象的に思えて、集中力が続かなくなる可能性もあります。(「線」につながらず諦めてしまう。。。)
私自身の経験から言うと、まずは何かしらのフレームワークを使って手を動かしてみて、簡単でも「動くもの」を作ってみることが大切だと思います。心の中に、何らかの「点」や「線」ができていて、どう「面」につながるかわからなくなったタイミングで、また本書を読んだほうがいいと思います。
ある程度コーディングの経験を積み、フロントエンドとバックエンドそれぞれの仕組みが少しずつ見えてきら、この本を読んで体系的に学ぶ――その流れが一番しっくりくると思いました。