僕のホームページ遍歴

個人ホームページ訪問 Advent Calendar 2024」の23日目の記事です。遅刻しました。

ハムスター島

初めてのホームページは、ハムスター島というサービスを使って作った。2006年ごろだったと思う。ホームページを作ることがブームになってから、少しピークを過ぎたくらいの時期だ。当時は、ウェブ技術についての知識がなくても簡単に自分のホームページを立ち上げられるサービスがいくつもあり、ハムスター島もその一つだった。サーバーの概念もHTMLの書き方も何も知らなかったけど、数クリックするだけで自分のホームページを作ることができた。

僕はまだ小学生だった。幼少期に父親からパソコンの使い方を教わって以来、ずっとパソコンの前に張り付いているような子供だった。最初の頃は、インターネットに公開されているフリーゲームで遊ぶのがおもな使い方だったが、そのうち自分でも何か作ってみたいと思うようになった。まずはよく遊んでいたFlashゲームを自分でも作れないかと考えたが、子供がいきなり独学するにはあまりにハードルが高く、頓挫した。だから、とにかく何でもいいので自分にも作れるものがないかと探して、そうして見つけたハムスター島が僕にとってのウェブ制作への入り口になった。

ハムスター島のホームページでできるのは、決まったテンプレートにテキストコンテンツを入力して掲載したり、アクセスカウンターや掲示板を設置することくらいだった。それでも最初は、自分で入力したものがウェブに公開されているというだけで嬉しかった。

一方、実際に作ってみて気づいたのが、ホームページはそこに掲載するコンテンツがないと成り立たないということだった。というのも、普通は何かを発表したいと思った人がホームページを作るのだろうが、僕の場合は作ること自体が目的だったので載せるものがなかった。絵を描いたり音楽を作ったりできる人はそれを載せていたけど、僕には何もない。もっとも、ホームページブームだったのでそういう人は少なくなかっただろう。だからみんな無益な自己紹介を書いたり100の質問に回答したりしていた。もう思い出したくもないけど、僕は魔法のiらんどで小説を書いていたこともある。今となっては味わい深い気もするが。

リヴリーアイランド

それから少し経って、リヴリーアイランドというオンラインゲームに夢中になった。ユーザー同士のコミュニケーションに重点を置いたゲームで、ギルドのような制度があり、それが当時かなりの盛り上がりを見せていた。人気のあるギルドには例外なく専用のホームページがあり、ギルドの制度や交流イベント、主要メンバーのプロフィールなどが、なかなかの熱量をもって紹介されていた。また、リヴリーアイランドは可愛らしいキャラクターや装飾のデザインがコンテンツとしての目玉であり、ユーザーがそれを二次創作的に素材集サイトにまとめて配布することも一般的になっていた。そのほかにもファンサイトは無数に存在し、充実した攻略コンテンツがあったり、非常に凝ったよくできたデザインになっていたりするものも多かった。

そうしたコミュニティの影響もあり、ここぞとばかりに僕も自分のギルドのホームページを作った。そのとき使ったのは、WYSIWYGで独自デザインのページを作成できるサービスだった。相変わらず技術的なことはよくわからなかったが、リンクの概念やタグの仕組み、スタイリングのやり方などは、手を動かしているうちに感覚として覚えた。

(なお、リヴリーアイランドは一度サービス終了した後にリニューアルして再開しているが、当時とはまったく別物になっている。)

ネパワ界

また少し時間が経って、僕はパワフルプロ野球シリーズ(以下、パワプロ)にハマった。やはりこれもファンサイトを通したコミュニティが非常に活発だったゲームである。ある収集家によると、今までに4300以上のファンサイトの存在が確認されていると言う。これらの界隈は「ネパワ界」(ネットパワプロ界の略)と呼ばれていた。

僕はゲームの攻略情報を調べるために、自分がプレイしていたシリーズを扱うあるホームページによくアクセスするようになり、いつからかその掲示板でほかの訪問者たちと交流するのが日課になった。掲示板では攻略情報を交換したり、強い選手のパスワードを共有したり、パワプロの好きなところを語り合ったりした。さらには、各人が運用するファンサイトや、その作り方について話す人もいて、それに影響された僕はまた新たなホームページを作ることになった。

かれこれするうちに僕はもう自分でHTMLをコーディングするようになっていた。ez-HTMLを使ってテーブルコーディングで制作したことを覚えている。2008年ごろなのでトレンド的には時代遅れではあるが。

コンテンツはいくつか作ったけど、特によく覚えているのは、ホームページに設置したCGIゲームを改造して遊んでいたこと。そう、当時は自分のホームページにCGIゲームを設置するという文化があったのだ。箱庭諸島なんかが有名どころだけど、ネパワ界では劇空間ぱわふるリーグ(以下、劇ぱわ)というCGIゲームが人気だった。劇ぱわでは、選手ごとに「パワー」「ミート」「走塁」「守備」のようなパタメータに数値を割り振って自分のチームを作る。そして、別のチームとの対戦を実行すると、試合の様子が実況チックなテキストとして1回から最終回まで一度に表示される。試合の中での盛り上がりどころは赤くて大きな文字で表示されたりするけど、それ以外にグラフィカルな要素はなく、見た目としてはちょっと騒がしいテキストサイトくらいの感じだった。それでも昔はそれに熱中する人がたくさんいた。僕はこれを改造して、自分のホームページのトンマナに合った見た目になるようにしたり、パラメータをいじって場外ホームランが出やすいようにしたりと、ちょっとしたアレンジを重ねてオリジナリティを加えていった。技術的に難しいことではなかったが、そうした細かい工夫が楽しかった。結果、数十人くらいの人に登録して遊んでもらうことができた。

ところでCGIゲームを設置するには、それに対応したサーバーを用意する必要があった。無料のレンタルサーバーの中にもCGI/Perlに対応したものはいくつかあったが、無料の代わりにバナー広告が挿入されたりするのがうっとうしくて、あるとき思い切って有料のレンタルサーバーを契約した。当時中学生なのでほとんどお金がなく、両親の理解を得られそうもないので、溜め込んだお年玉を持ってこっそりコンビニに行って支払いをしたことを覚えている。さくらのレンタルサーバだった。後日、自宅にその郵便が届いたせいで母親に怒られた。

ライブドアブログ

前述のホームページ作りと並行して、いくつかのブログも運用していた。初めて立ち上げたブログは、使っていたサービスはもう名前も思い出せないが、ハムスター島と同じく素人でも簡単に扱えるようなものだった。いま思えばあのような、技術への入り口となるようなサービスは偉大だったと思う。周囲の誰かに教えてもらえるわけでもなく、かといって自分で調べる技術もそれほど身についていなかった時期に、偶然自分のレベルに合ったサービスに巡り会えたことは運がよかった。

そんなブログの内容は、たいしたことのない、ただの子供の痛々しい雑記でしかなかった。インターネットを使って何か生産的なことをしてみたいという気持ちだけはあったけど、何の技術もない僕にかろうじてできたのは、テキストを書いて公開することくらいだった。幸い、書くことは好きだった。好きになった。

ブログを書く傍らで、テーマをカスタマイズすることも楽しくてのめり込んでいった。ブログのサービスによってこの辺りの作りに違いがあることが気になって、主要なレンタルブログサービスに片っ端から登録して、いろんなブログを作ってカスタマイズして遊ぶようになった。そして、それぞれのブログサービスを比較するために、個別にいろんなネタを決めて運用していた。普段の生活の日記、当時作っていたホームページの運用日誌、2ちゃんねるのまとめブログ、気になったニュース記事をピックアップしてコメントとともに紹介するニュースまとめブログ、などなど。ちなみにその頃の日課は、RSSリーダーに登録した大量のニュースやブログにひと通り目を通して消化することだった。そういう経緯もあって、普段から注意深くブログにできるネタがないかを探す癖がついた。

やがていくつかのレンタルブログサービスを経て、最終的にはライブドアブログに行き着いた。ライブドアブログがほかと一線を画すのは、テーマのカスタマイズ性の高さだった。多くのレンタルブログサービスでは、HTMLテンプレートは決まった構造から変更ができず、できるのは独自のCSSを適用するくらいのことだったが、ライブドアブログでは独自のHTMLテンプレートを作成することができた。XMLのようなライブドアブログ独自の記法でイテレーションやパーシャルの出力が表現できるようになっていて、それがわかりやすいドキュメントで解説されていた。当時の僕にはプログラミングの技術はなかったが、おかげでHTMLコーディングの延長としてすんなりテーマ作成の考え方を理解できた。これを機に僕はブログテーマ制作に夢中になって、以来いくつもの独自テーマを作ることになった。パソコンの前を離れてもずっとそのことを考えていて、学校でも紙のノートにワイヤーフレームを書いたりCSSを書いたりしていた。

(いま調べたら、ライブドアブログのデザインのカスタマイズについてのドキュメントがなくなっていて、「サポート対応の範囲外」ということになっていた。悲しい。)

テーマ作りに力を入れるにつれて、デザインとコンテンツの関係、つまり側(がわ)と中身の卵鶏問題について強く意識せざるを得なくなってきた。ブログを書くのはそれなりに好きだったが、それだけでなく、テーマのデザインを成り立たせるために書かなければならない、言うなれば鞄のあんこ(詰め物)のようなものとしても捉えていた。思えばこの頃から、ブログを書くこと自体は目的ではなく、ブログテーマを作るための手段としてブログを書いているという感覚がずっとある。

しかし、そうして病的な熱量でパソコンに張り付いている日々が続いて、ある日、遂に母親にパソコンを取り上げられてしまった。学校の成績が著しく悪化したせいだ。中二の頃だった。僕のホームページ道はそのとき一度終わった。

ポートフォリオサイト

高校を卒業してから、僕はウェブデザインの専門学校に進学した。専門学校に行けば一日中パソコンを触っていられると聞いたからだ。

専門学校では、基本的なコーディングやソフトウェアの操作方法についての授業のほか、ポートフォリオの制作が主なウェイトを占めていた。支給されたコンテンツに応じてデザインとコーディングをしたり、何かしらの企画を立ててそれに基づいたウェブサイトを作ったりして、作品の数を増やしていた。

しかし、残念ながらその頃の僕はウェブサイトの企画を立てるのが苦手で、あまり気が乗らなかった。それよりも当時は、ウェブデザインのギャラリーサイトを眺めてスクラップしたり真似したりすることのほうが好きだった。こういうかっこいいデザインや面白いモーションを使って、それありきで好きなようにウェブサイトを作るにはどうすればいいだろうと考えた結果、やがて自分のポートフォリオサイトを作ることに力を入れ始めた。まあ言ってみれば、クリエイターにとってポートフォリオサイトというのは、好きなようにやっていい場所なのである。そんなわけで、ポートフォリオサイトに載せられる作品はほとんどないのに、ポートフォリオサイトばかりを作るようになった。在学中に作ったポートフォリオサイトは10個くらいあって、新しいポートフォリオサイトには作品集として古いポートフォリオサイトをいくつも並べていた。

そう言えば、この時期に出会ったHail2uにはかなりの影響を受けたと思う。技術的な側面よりも、ウェブデザインのスタイルとしてミニマリズムを体現しているのが新鮮に感じて、以来ずっと頭の片隅にあった。在学中に作ったポートフォリオサイトでも、最初は派手な装いを好んでいたけど、バージョンを重ねるにつれてシンプルになっていった。それがきっかけだったのかはわからないけど、デザインだけにかぎらず、技術的にもオーバーエンジニアリングを避ける方向に進んだ。当時作った、WordPressのREST APIを使ったシングルページアプリケーションや、発表されたばかりのReactのサーバーサイドレンダリング機能を取り入れたウェブサイトは、トレンドを取り入れるタイミングとしてはかなり早くて、技術的にはけっこうおもしろかったと思う。けど、それを使って作るもののしょぼさを思うと、オーバースペックなものはイケてないと考えるようになっていった。結局、最後のバージョンのポートフォリオサイトは手書きのHTMLで作った。そのこだわりをプレゼンする技術はなかったので、就活の戦略としては失敗した。

モダンフロントエンド

専門学校の卒業後には、ウェブサイト制作の仕事を始めた。いわゆるモダンフロントエンドの概念が勢力を増してきた時代だった。

どの技術を使ってウェブサイトを開発するかという判断が非常に難しかった。タスクランナーにgulp.jsを使って、SassとBabelでコンパイルする、くらいの共通認識はあったけど、ちょうどいいサイトジェネレーターが見つからなかったので、自分で作ったものを案件ごとに調整したりして使っていた。開発環境構築をする担当者によってビルドの仕組みやディレクトリ構成がまるで違うのでいろいろ苦労していた。

そうこうしているうちに、Next.jsやNuxtが台頭してきた。最初はそれらはウェブアプリケーションのための技術だと考えられていたが、ウェブサイト制作にも使えるという論調が強まってきた。僕としては、一時はその流れに賛同していたが、やはりこれは何か間違っていると違和感を抱くようになった。この手のフレームワークは、ウェブサイト制作に流用することもできるというだけであって、そのために作られたものではない。ウェブサイト制作に必要なのは、JavaScriptフレームワークではない。ウェブサイト制作の開発環境の問題は、細かなツール群を寄せ集めて組み合わせるという責務をユーザーが担わされれていることであって、必要なのはウェブサイト制作のためにチューニングされたワンストップソリューションなのだ。

しかしその夢のようなワンストップソリューションは長らく登場せず、その間、僕はさまざまなツールを組み合わせたボイラープレートを、一番マシな開発環境として同僚たちに共有することで開発の一貫性を維持していた。でもこのやり方は、技術的にはあまり美しくない。スケールしづらいし、開発手法として広いコミュニティの中で一般化させることは難しい。それが不満だった。

そんなとき、突如としてAstroが登場した。初めてAstroが世に出たタイミングでのCSS-Tricksの紹介記事を見たとき、ずっと求めていたものがついにと電撃が走ったようだった。Astroの前は僕はEleventyを使っていて、これもサイトジェネレーターとしては悪くないのだが、あくまでプレーンなHTMLを生成することだけを責務としていて、その周辺ツールとの接続方法はユーザーに委ねられている。そして誤解を恐れずに言えば、古臭い。モダンなフロントエンド技術との相互運用性を考慮した作りになっていない。一方、Astroは従来的なサイトジェネレーターではなく、必要なもの全部入りのワンストップソリューションであることが画期的なのである。そして世界に平穏が訪れた。

ベースライン

仕事を始めてからも、僕はずっとこの自分のウェブサイト、いや、ホームページを更新して維持し続けている。専門学生時代と同じく、たまに全部作り直したりしてきていて、それなりのバージョン数になっている。

けど今のバージョンになってからは、しばらく大きな作り直しをしていない。今のバージョンを作るときに、ずっと古くならないように作ろうと考えたからだ。これまでは「気分で作り直せばいいや」くらいのノリだったが、今回はもう最終版だと思って作った。後ろ向きな理由としては、もう頻繁に作り直すのも疲れるからやりたくないというのがあるけど、前向きな理由としては、これからのブログのベースラインになるような模範的なものを作りたいという想いがある。

僕は単にテキストを書くことも好きで、うまく書けるようになるための努力もしてきたが、それ以上に、そのテキストのレイアウトの仕方を考えることが好きだ。僕は、テキストのデザインについてはそれなりの関心がある。昨今、これだけテキストばかりのホームページというのも珍しいが、だからこそ、テキストを中心に据えた環境における理想を追求したいと思う。

ブログは「テーマのデザインを成り立たせるために書かなければならない」ものだと前述したが、翻って、今だと別の解釈ができるかもしれない。ブログを書くことで、そのテーマにコンテンツが適用されている様を見て楽しむことができる。テーマを楽しむためにブログを書く。それが楽しいから書く。僕は依然として、より良いブログテーマを作るためにブログを書いている感覚でいる。けれど。よいレイアウトで文字を並べられるようになっているかどうか、血の通ったテキストを書くことでそれを確かめられる。逆に、テキストを書くことで、心地よく文字が並んでいることが感じられる。書き手が自らレイアウトを調整できると、そういう嬉しさに通ずることができる。

僕は自分のホームページを持つことにささやかな誇りがあるが、同業者の中ではそういうことに興味を持つ人が減ってきているようだ。時代の流れだろうか。もしかすると、自分のホームページを所持することに憧れを持つことができるのは、僕くらいの世代が最後なのかもしれない。そう思うと寂しいが、それでも僕は、自分自身の喜びのためにこれを続けていくだろう。