ITも大抵筋肉でなんとかなる

気が向いたら技術的なことも書くかもしれないですが、技術的なこと=ITとは限りません。

12年前に作ったWebサイトを全面リプレイスしました

タイトルの通りです。なにはさておきリンクは下記です。

www.geocities.jp

改変内容について

コンテンツ面での対応

中身ですが、メトロイド任天堂から発売されているサムス・アランが主人公のアクションゲームシリーズ)の攻略コンテンツです。 コンテンツ的な対応で行くと下記の対応をしました。

  1. スマホ向けに表示を最適化
  2. 文章の修正
  3. 不要と思われるコンテンツの閉鎖

今のところこんな感じですかね。現在はメトロイドフュージョンメトロイド4)の攻略だけですが、メトロイドゼロミッションメトロイド5)の攻略も年内になんとかしたいなーと思ってます。 できればサムスリターンズの攻略も公開したいですけどね。 というわけで今後の展望的には下記です。

  1. ゼロミッション攻略の追加
  2. サムスリターンズ攻略の追加
  3. 初代メトロイドの攻略追加
  4. 旧コンテンツで需要のありそうなものを復活

技術面での対応

技術面では下記の対応です。一応IT屋さんなので書いときます。

  1. bootstrapの導入
  2. HTMLを最小限にし描画のほとんどをJavaScript(ネイティブ)で行なう
  3. メンテナンス性を高める
  4. Google AnalyticsGoogle Search Console)を導入する

って感じですかね。bootstrapはスマホ向けに必要だったので入れました。自分で書くとしんどいですからね。 2.は3.のための手段という感じです。URLを見てもらえばわかるのですが、「geocities」というサービスを使っています。 こいつが曲者で、サーバサイドプログラムが一切動かないタイプ(課金すればphpperlCGIで動かせるようです)なんですね。 とはいえHTMLべた書きは死以外の感想がなかったので、「じゃあテンプレートだけ用意してJavaScriptで画面作るかー勉強もかねて」という感じで、9割がたネイティブのJavaScriptで書きました。 ただし思っていたよりもJavaScriptのコーディングが重くなってしまいAngularJS使えばよかったと死ぬほど後悔しているところなので、次回からは素直にそうします。せめてVue.jsとか使えばよかった…。この辺は余力があるか協力者がいれば導入するかも。規模的にVue.jsの方がよさそうだけども…。あとはちょっと前にみたmustache.jsとかも面白そう。もう一度書きますけどお勉強になった以外はネイティブで書く必要全くなかった…。これは完全に見積もりミスです。 4.は実際問題どう見えてるのかとかいろいろ知りたかったので入れた感じです。技術的な話で行くと今後は

  1. SEO対策
  2. リファクタリング
  3. レンダリング速度の改善
  4. TODOコメントの消滅
  5. コメントを書く

とかこの辺でしょうね。SEO対策はやったら内容を書いてもいいかなーと思います。書いてて思ったけど新しいコンテンツ増やす前にフレームワーク導入してもいいかも。今回共通部品とか大きめのHTMLはajaxで読み込んでループ回してたりするんで、明らかに表示速度を下げちゃってるんですよね。この辺はまずったなって感じはあります。

作ってみて

正直とってもしんどかった…わけではないです。割と楽しんで作ってました。一番しんどかったのは文章をすべて書き換えたあたりですかね。ここは正直きつかったです。単純作業ですし。 あとサーバサイドでいろいろできないのは、エンジニアとしては両手足しばられた状態に近かったので、そこはきつかったですね。本当はDRYの原則を守って作りたかったんですけど無理でした…。 地味にうーーーーんこれは仕方ないけどなぁ…っていうのは広告ですかね。これのおかげで微妙にレスポンス遅くなるので。まぁ金払ってないから当然消せないんですけど。

ちなみにスマートフォンでちゃんと見られるようになったときは感動しましたね。「おおっ、なんならPCより見やすいのでは?」みたいな。今回は本当にそこを目指して作ったので、スマホ向けに最適化できたのはうれしかったです。 あとこれは本当に後日談的なアレですけど、お問い合わせフォームは完全自作です。Google Apps Scriptを使ってAPIを作ってます。残念ながらGoogle Apps Scriptは応答速度がそんなに早くないので読み込み中が長くなってしまうのがネックですが…。あれは完全に自分の趣味で自作しましたね。セキュリティ的にも外部のサービス使った方が楽なのは自明ですから。(あと昨今誰も使わないだろっていう)

中学生の頃に作ったコンテンツと向き合って全面リプレイスなんて夢にも思っていませんでしたが、予定通り10/1に公開できたのでそれはよかったです。今後は上に書いてある通りなので、いろいろ細かいところを行なっていきます。