football-jp

football-jpを作るまでに、僕は3回挫折した話

完成したサイトを見ると、「作ろうと思って作った」ように見えると思います。でも実際は、途中で3回、本気で諦めました。今回はその話を正直に書きます。

football-jpを作るまでに3回挫折した話

1回目の挫折:データが取れない

最初の壁は、データ収集でした。football-jpを作るにあたって、まず「日本人選手68名の所属クラブと試合日程を自動で取得する仕組み」が必要でした。手動で更新していたら時間が足りない。毎日変わる試合日程を人力で追いかけるのは無理です。

当初、Wikipediaの各クラブページからデータを取得しようとしました。ところが、Wikipediaのページは書き方がバラバラです。「Efsテンプレート形式」と呼ばれる記法を使っているページもあれば、「wikitable形式」で書かれているページもある。ひとつのパーサーを書いても、別のクラブページでは動かない。何日もかけて作ったコードが、別のページでは完全に壊れる。それが続いて、「これは無理かもしれない」と思いました。これが1回目の挫折です。

1回目の挫折で止めていた期間は、3日間ほどでした。「問題はページごとの書き方の違いだ」という結論に至ったのは、3日後のことです。止まっている間に、頭が勝手に整理していた形です。

2回目の挫折:整合性が崩れる

1回目の挫折から少し経って、複数のパーサーを組み合わせる方法で再挑戦しました。Efsテンプレート形式用とwikitable形式用の2つを作り、ページの形式を自動判定して切り替える仕組みにしました。これで一応、データが取れるようになりました。

しかし次の問題が出ました。データの「整合性」です。選手データとクラブデータが食い違う。日付がずれる。ひとつ直すと別の場所が壊れる——このパズルが無限に続く感覚になりました。68名の選手、41のクラブ。それだけのデータが常に正確に同期されていなければ、サイトとして機能しない。その規模感を実感した瞬間に、2回目の「もう無理かも」が来ました。

2回目の挫折で「手動更新に切り替えよう」という妥協案を真剣に検討しました。でも手動更新にすると、毎日の更新作業に何時間もかかる。妥協案を捨てて、「完全自動化」という当初の方針を保ったまま続けることを選んだのは、「自分が使いたいサイト」という動機が諦めより強かったからです。

3回目の挫折:「誰が使うんだ」という気持ち

技術的な問題をどうにかクリアして、サイトの形が見えてきた頃に、3回目の挫折が来ました。「誰が使うんだ、これ」という気持ちです。すでに国内には大手のスポーツサイトがある。「日本人海外組に特化したサイト」というニッチな軸で、誰かが本当に使ってくれるのか。自分が欲しいから作っているとはいえ、需要があるのかどうか、わからなくなってきました。

この3回目が、技術的な挫折より長く引きずりました。なぜなら、「作業を止める理由」にならないことです。1回目・2回目は「技術的にできない」という明確な壁があったので、止まることに合理性がありました。でも3回目は「作業はできる、でも意味があるかわからない」という状態なので、手は動かせる。動かしながら「これに意味があるのか」という問いが頭の中で回り続ける。これが一番きつかったです。

諦めなかった理由、ひとつだけ

それでも完成させたのは、理由がひとつだけあったからです。「自分が使いたい」という気持ちが、ずっと変わらなかった。日本人選手の試合が日本時間でわかる。どの配信サービスで見られるかが一目でわかる。——自分がずっと欲しかったものです。それが作れるなら、作り続けようと思いました。

挫折するたびに「やっぱりやめよう」と思いながら、数日後にはまたコードを開いていました。意思が強いとか、根性があるとかではなく、ただ「これがないと不便だ」という感覚が勝っていただけです。「自分が使いたい」という動機は、「誰かに見てもらいたい」という動機より根強かった。公開前にPVがゼロでも、機能していれば自分は使えます。それが、最小限の価値の確認でした。

挫折と再開のあいだにあったこと

3回の挫折それぞれに、「再開のきっかけ」がありました。1回目の挫折では、3日間止まっていた間に「Efsとwikitableの両方に対応する」というアイデアが来て、再開しました。2回目の挫折は、整合性崩壊の問題を紙に書き出して整理することで、「どこが原因でどこから直せばいいか」の地図が見えた。

3回目の挫折には、再開のきっかけが少し違いました。当時、試合日程を確認するためにfootball-jpの開発中版を開いた日がありました。完成していないのに、試合時間の確認に使えた。日本時間で表示されていた。それだけで「あ、これは自分には使える」と思えた。誰かが使うかどうかより前に、自分が使えることが確認できた。それが3回目の「再開」のきっかけでした。

作業を「止める」ことと「やめる」ことは違います。止まりながらも、諦めていなかった——それが3回の挫折を超えられた理由だと思っています。

完成したあとに思ったこと

football-jp.com が公開できたとき、達成感というより「やっと使える」という実感がありました。公開してから少し経ったいま、「誰が使うんだ」という3回目の疑問に対する答えが少しずつ見えてきています。試合日程を確認しに来てくれる方がいる。SNSで記事をシェアしてくれる方がいる。作る前には想像できなかった、自分以外の「使っている人」がいる。それが、3回目の挫折への答えになっています。

個人開発をしている人や、何かを作り途中でやめた人に、この話が少し届けば嬉しいです。諦めなくてよかった、というよりも——諦めながらも続けていたら、なんとかなった。それが正直なところです。

挫折に「回数」があることについて

3回という数字を書いてみて気づいたのですが、挫折に「回数」があること自体が、少し前向きな話かもしれません。1回しか挫折しなかった人は、そこで終わっている可能性がある。3回挫折したということは、3回再開した、ということです。

挫折の数と再開の数は、同じです。「3回挫折した」を「3回諦めた」と読むこともできる。でも「3回再開した」という読み方も同時に成立します。「諦めた」と「止まっている」は、違います。3回の挫折を経て、それが一番伝えたいことかもしれません。

関連コラム

なぜfootball-jpを作ったのか個人サイトを公開して1か月、PV3だった日のことfootball-jp公開前後で変わった10のこと