いまだに信じられているWEB制作のかつての知識

ポケットリファレンス見ながら、HTMLやCGIでWEB制作をする時代から、ずっと信じ切っているけど、今は違うというのがまだ多いので書く。

下記みると、今時当たり前でしょ?って思う人が多いと思うけど、都市伝説的にいまだに信じられているものが多い。

1.データ保存はDBよりCSVの方が工数を抑えられる 

今はDBの方が工数かからない。 RDBMSに対しては、ORMというDBアプローチが一般的。 今は、KVSなど他のデータアーキテクチャーが一般的になっていっている。

技術的な進化だけでなく、セキュリティ面でもCSVだと考慮しなければいけない点が多すぎる。

2.HTMLだけの静的ページより、PHPPerlなどの動的ページの方が重い(遅い)

これは、解釈が今と昔では違う。

もちろん、HTMLの方がサーバーサイド処理がない分軽いんだけど、 今はサーバーサイド処理をを考慮しつつ、ハードウェアの性能アップ、クラスタリングCDN技術やアプリでのキャッシュ機能、コードの圧縮など色々な技術が生まれ利用されている。

単純なHTMLで生み出されるコンテンツより、動的(非同期含む)なコンテンツの方が表現出来る幅は大きい。

コンテンツ表現差に比べれば、『動的ページは重いので、静的にしましょう』というような提案は的外れということ。 技術でカバーすべき問題だ。

3.静的ページと動的ページがある

今は、「静的ページなんて」ない。極端過ぎるというなら、「ほぼない」。

サーバーサイド言語を使うページはもちろん動的。 それ以外でも、ページを表示するときのリクエストを考えてみる。

いわゆる、サーバーサイド言語を使わない「静的ページ」と呼ばれるページの処理。 ・jQuery などJSとCSSを組み合わせて、表示を切り替える ・FacebookTwitterに共有するボタンを置く ・初訪、再訪をクッキーで判断する ・GoogleAnalyticsでアクセスログデータを取得する ・「この商品はいかがですか?」の人によって変わるレコメンド表示 ・アクセスのたびに変わったりするページにある広告 ・スマートフォンでアクセスした際、スマートフォン用のレイアウトで表示される

これだけコンテンツが「動的」なら、「静的ページ」という言葉はナンセンスではないかと思う。

4.テスト・チェックはリリース前の少しの期間で行う

これでどれだけの人がトラブルとなり炎上したかと思う。

テスト・チェックは、制作した部分ごとに出来るだけこまめに行いながら、リリースに向けて動いていく方が品質がよくなる。

上記にもあるように、1ページを表現するための処理がとても多いというのが理由でもある。

色々な処理が混ざった場合、全部が正しく動く保証はない。 その分、1つの処理が完璧でないと、障害切り分けが難しく、解決に時間がかかる。 ※実際、どこのコンテンツ提供者も、他社製品との競合により自社製品が動かなくなる可能性について、 完璧な保証などしていない。

1つ1つの単機能を完璧にすることで、全体が合わさった時に起こる問題に対応し、解決していく手段が分かりやすくなる。

テストは、何度も行うものだし、手間・工数がかかるものだ。

5.要件は変わらない

クライアントの要件は変わる。 「以前こう言っていたので、もう変えられません。」なんてナンセンス過ぎる。

今の時代、物事の移り変わりはものすごい早さ。 ニーズが変わるのは当たり前。 ひとつの考えに固執しすぎて成功するコンテンツなんて、ほぼないんじゃないかな。

要件が変わるのは、当たり前で、 変わった時点で最適な答えを出していくのが、今のコンテンツ制作だと思う。

今思いついたのはこれぐらいだけど、まだまだあるだろう・・・