勉強法(1) 1つ作り切ると、広く当たる
勉強法の本を読んで、思い出したことがあります。
いま自分が手を出せる範囲は、勉強して広げたものではありませんでした。このサイトを1つ作り切る過程で、必要になって触っただけです。
第1回。次回:測らないと、分かったことにならない(近日公開)
ポートフォリオサイトを1つ作るのに、結果として何を触ることになったか。その一覧と、それが「順番に勉強する」やり方とどう違ったかです。
触ることになったもの
やりたくて始めた領域は、ほとんどありません。進めようとしたら、そこで止まったから触ったという順番です。
| 領域 | 止まった場面 |
|---|---|
| DNS | ドメインを繋いだら、wwwの有無で別のサイトとして扱われた |
| TLS | 証明書が発行されるまで、何が起きているのか分からなかった |
| 共用サーバー | 混むと500が返り、公開作業ごと止まった |
| WAF | コードを含む本文を投稿すると、403で弾かれた |
| CMSの設計 | 本文をコードに書くか、CMSに置くかで運用が変わった |
| キャッシュ | 常に最新を取る指定のせいで、初回表示が1.7秒かかっていた |
| アクセス解析 | 入れる前に、何を数えたいのかを決める必要があった |
| 検索エンジン | 同じ中身が複数のURLで見える状態を、56件指摘された |
| アクセシビリティ | 画面では分かる区別が、読み上げでは同じに見えていた |
| CSS設計 | 角丸の値を、どこまで段階として揃えるかで迷った |
この一覧は、事前に立てた計画ではありません。詰まった順に並んでいるだけです。
順番に勉強していたら、たぶん届いていない
もし「Web開発を学ぶ」という目的で本を選んでいたら、上の表の上半分には行き着かなかったと思います。
DNSもTLSもWAFも、作る話ではなく、公開してから出てくる話だからです。教材の多くは動くところまでを扱っていて、そこから先は自分のドメインを持たないと出てきません。
実は、DNSの説明は以前にも読んだことがありました。読んだ記憶はあるのに、いざ設定画面を前にすると手が止まりました。
困っていない状態で読んだものは、知識としては入っても、使う場所と結びついていません。結びつけるのは、詰まった経験のほうでした。
1つ作り切ると、全部が繋がって出てくる
もうひとつ効いたのは、これらがばらばらに出てこなかったことです。
たとえば「表示を速くする」という話。キャッシュの置き場所を変えたら、公開作業の途中でCMSへ問い合わせに行くようになり、共用サーバーが混んでいると公開ごと止まるようになりました。速度の話をしていたつもりが、失敗したときにどうなるかを一緒に変えていたわけです。
速度とサーバーの安定性と公開の仕組みは、別々に勉強していたら別々の知識のままでした。1つのものを動かし続けていると、つながっている場所のほうから見えてきます。
「全部やる」ではなく「このサイトを動かし続ける」が目的なので、どこまでやるかが自然に決まります。
やらなかったことも多い。データベースの設計も、大量のアクセスをさばく話も、チームで開発する話も出てきていません。出てこなかったのは、必要にならなかったからです。
作り切る、の意味
ここで大事なのは「作る」ではなく「作り切る」のほうでした。
手元で動かすところで止めていたら、公開に関わる領域は一切出てきません。公開しても放置していたら、運用で出てくる問題に当たりません。
実際、上の表のうち半分以上は公開したあとに出てきたものです。作り終えてからのほうが、触る範囲は広がりました。
| どこで止めるか | 出てこないもの |
|---|---|
| 手元で動いた | ドメイン、証明書、サーバー、公開の仕組み |
| 公開した | 検索エンジン、解析、速度、壊れたときの対処 |
| 使い続けている | — |
証拠が残るのも、同じ理由
この一覧は、そのまま記事の一覧でもあります。詰まった場面を1つずつ書いてきた結果、60本を超えました。
「勉強しました」と言うより、詰まった場所と直し方が並んでいるほうが、何ができるかは伝わります。狙って作った実績ではなく、作り切る過程の副産物です。
今回の学び
まず、触る範囲は、目的の広さではなく深さで決まるということ。「広く学ぶ」と決めて広がったのではなく、1つを最後まで進めたら、必要な順に出てきました。
次に、困っていないときに読んだものは、使う場所と結びつかないこと。同じ説明でも、詰まった後に読むと入り方が違いました。順番としては、詰まるほうが先でした。
そして、「作る」と「作り切る」では、出てくるものが違うこと。手元で動いた時点で止めていたら、触ったのは表の下半分だけだったはずです。公開して、使い続けて、初めて出てくるものがありました。
この記事を共有する
関連記事
ローカルのサイトを本番公開するまでにハマった話
ローカルのパソコンで作ったWebサイトを、世界中から見られる状態にする——いわゆる「本番公開」の作業をしました。手順書に沿えば1時間で終わるはずが、実際には丸一日かかっています。今回はその全過程を、途中で出てくる用語をひ […]

所有権をどう証明するか
Search Consoleが提示する5つの確認方法は、それぞれ証明している中身が違う。ファイルやHTMLタグは「サイトの中身に手が届く」ことしか示さないが、DNSのTXTレコードだけは「ドメインそのものを支配している」ことを示す。そして実作業では、正しい値を書いたのに反映されなかった。参照されていない管理画面に書いていたためで、「保存できた」は「効いている」ではないという話。

wwwのあるなしで、別のサイトになる
kisaku.site と www.kisaku.site はどちらを開いても同じ画面が出る。しかし機械から見ると別のサイトになる。apexドメインにCNAMEを置けない理由と、Search Console・GA4・OGPの3か所すべてで同じホスト名に揃えなければならなかった話。