本文へスキップ
開発風景

20年分の掲示板を引っ越す。1件も落とさずに

20年分の掲示板を引っ越す。1件も落とさずに

20年分の井戸端会議は、もう二度と書けない。だから減らさないことだけを目標にしました。

1981年に出たホンダ シティという車があります。その愛好家が集まる掲示板が、2005年からずっと動いていました。

シティ オーナーズ掲示板の画面

「そろそろ危ないかもしれない」と聞いて、見に行きました。

20年分の掲示板を引っ越す。1件も落とさずにを4コマ漫画にしたもの

20年分の掲示板を引っ越す。1件も落とさずにを4コマ漫画にしたもの

動いてはいます。ただ、動いているだけでした。

1消えるときは、たぶん静かに消える

古い掲示板が止まるとき、事前に告知が出るとは限りません。サーバーの契約が切れる、管理していた人が続けられなくなる。理由はだいたいそういう話です。

消えるときは、たぶん静かに消えるを表すイラスト

消えるときは、たぶん静かに消えるを表すイラスト

中身は2,400件を超えるスレッドでした。20年分です。

部品を譲り合った記録、ミーティングの告知、そして「ここが壊れた、どう直した」の相談。

同じものを今から書き直すことは、誰にもできません。当時その車に乗っていた人が、当時困ったことを書いたものだからです。

この時点で、目標を1つに絞りました。減らさないこと。見た目を良くするのは、そのあとです。

2数が合わない、がいちばん怖い

移行作業でいちばん怖いのは、エラーが出ることではありません。エラーが出ずに、静かに数が減っていることです。

数が合わない、がいちばん怖いを表すイラスト

数が合わない、がいちばん怖いを表すイラスト

なので先に、移す前の件数を数えました。移したあとにもう1回数えて、突き合わせる。それだけの話なのですが、これをやらずに進めると後から取り返せません。

スレッドは返信がぶら下がった木の形をしています。親が1件でも欠けると、その下がまるごと孤児になる。件数だけ合っていても、つながりが切れていたら意味がないんですよね。

だから数えたのは、スレッドの数と、返信の数と、親子の対応の3つです。

移行の前後で、何が変わって何を変えなかったか

項目移行前移行後
2005年からのスレッド旧サーバーにのみ存在2,400件超をそのまま保持
過去の投稿画像旧サーバーのファイル置き場Supabase Storage へ移設
過去ログを探すページを順に開いて目で追うタイトルと本文の全文検索
スマホで読む拡大しないと読めないそのまま読める
投稿する場所旧掲示板同じ画面から新規投稿・返信
スレッドの並び順・言い回し20年ぶん蓄積変えていない

3本文より、画像のほうが厄介でした

文章はデータベースの中にあります。移すのは面倒ですが、やり方は見えています。

本文より、画像のほうが厄介でしたを表すイラスト

本文より、画像のほうが厄介でしたを表すイラスト

画像は違いました。ファイルとして別の場所に置いてあって、本文からはリンクで参照されている。

つまり、ファイルを移したうえで、本文の中の参照先も全部書き換えないと、20年分の投稿から画像だけが消えます。文章は残っているのに、肝心の「これが割れた部品です」の写真が出ない状態です。

整備の相談は、写真が本体です。そこが抜けたら移行した意味がありません。

結局、画像はSupabase Storageへ移し、本文の参照も合わせて書き換えています。全工程で一番時間を食ったのが、ここです。

4新しくしすぎない、という判断

移行のときは、つい全部きれいにしたくなります。カテゴリを整理したい、古い言い回しを直したい、重複を消したい。

新しくしすぎない、という判断を表すイラスト

新しくしすぎない、という判断を表すイラスト

ここは、かなり迷いました。

でも結局やめています。

20年通っている人にとって、あの並び順と、あの独特の空気が掲示板そのものだからです。作り手が良かれと思って整えた瞬間に、別の場所になります。

足したのは、検索と、スマホで読めることと、返信ツリーと画像添付の3つだけ。表示はISRでキャッシュしているので、20年分あっても待たされません。

引っ越し先を新築にするのではなく、家財ごと動かして同じ配置に戻す作業に近かったです。

5正直に言うと

移行が終わってから、自分の想定が1つ外れていました。

正直に言うとを表すイラスト

正直に言うとを表すイラスト

検索は「新しく来た人が過去ログを掘る」ために付けたつもりでした。実際に効いたのは、20年前から居る人が自分の昔の投稿を探し当てる場面だったんです。

17年前に自分が書いた修理の手順を、本人が読み返す。そういう使われ方は考えていませんでした。

残っている宿題もあります。旧掲示板の投稿者名と、いまアカウントを作った人が結びついていません。同じ人なのに別人として並んでいる行があります。ここをどう扱うのが正解か、まだ分からないままです。勝手に紐づけるのは、たぶん違う。

そして本当に価値が証明されるのは、次の20年が終わったときです。それまで動かし続けられるかどうかは、まだ何も約束できません。

掲示板はこちらから見られます。他に作ったものは制作実績に並べています。

消えそうな古いデータを抱えている方は、止まる前にご相談ください。止まってからだと、できることが一気に減ります。

この記事を書いた人

NextCode(沖縄県宜野湾市)は、iOSアプリ・ホームページ/LP・NFCデジタル名刺・AI業務自動化を作っている開発スタジオです。 ここで書いているのは、実際に作って公開したものと、その過程で詰まったことだけです。

お問い合わせフォームは24時間受け付けています。

この記事が役に立ったらシェアしてください