この記事が良かったら
Lily さんへの応援になります

去年の秋、気まぐれで2年ほど放置していたアプリのコードを開きました。特に理由はありませんでした。「そろそろちょっと直してもいいかな」という、それだけの気持ちでした。 でも、最初のファイルを読み始めたとき、思わず画面から目を離してしまいました。そこにあったのは、コードだけではなかっ…
この記事が良かったら
Lily さんへの応援になります
去年の秋、気まぐれで2年ほど放置していたアプリのコードを開きました。特に理由はありませんでした。「そろそろちょっと直してもいいかな」という、それだけの気持ちでした。 でも、最初のファイルを読み始めたとき、思わず画面から目を離してしまいました。そこにあったのは、コードだけではなかったからです。 あの頃の私が、そこにいました。判断の揺らぎも、焦りも、誰かに届いてほしいという淡い希望も、全部そのままの形で残っていました。日記には書かなかったことが、コードには書いてありました。今日はそういう話をさせてください。
日記は書こうと思わないと書けません。でも、コードは書かざるを得ない。機能を作ろうとすれば、何かを書くしかない。だから、そこには意図せず「あの日の判断」が刻まれます。
ファイルを読みながら最初に気づいたのは、変数名のつけ方がやたら防衛的だということでした。意味がわかりそうでわからない名前、括弧書きで「多分」「のはず」が混じったコメント。「ちゃんと動くか自信がなかったんだな」と、すぐにわかりました。自信があれば、もっとシンプルに書けるはずだからです。
今の私なら書かない、でも、あのとき書かずにはいられなかった。そういう痕跡が、ファイルを開くたびに出てきました。
アプリの構造を見ると、明らかに「とりあえず」で積み上げた跡がありました。
本来なら一箇所にまとめるべき処理が、あちこちに散らばっていました。「後で直す」つもりで書いたコードが、そのままリリースされて、2年経った今もそのまま動いています。
最初は恥ずかしかったです。でも、読み進めるうちに、恥ずかしさとは別の感情が出てきました。
あのとき、精一杯だったんだな、という気持ちです。
その散らばり方は、締め切り前の焦りそのものでした。「完璧にしてからリリース」ではなく、「何か動くものを出さなければ」という圧力。それがそのまま、コードの構造に写っていました。責めるよりも先に、なんだか懐かしくなってしまいました。
恥ずかしいものだけではありませんでした。
使われるかどうかわからないのに、丁寧に作ってある画面がありました。エラーメッセージが優しい言葉で書かれていて、「誰かがここで詰まったとき、ちゃんと助けたかったんだな」と伝わってきました。ほぼ誰も通らないであろうその画面に、あの頃の私は、ちゃんと気持ちを込めていました。
統計の画面には、使ってくれる人がいるかどうかも確認していないのに、細かい項目が丁寧に並んでいました。「こういう使い方をする人がいるかもしれない」という期待が、そのまま機能になっていました。
コードは製品であると同時に、「誰かの役に立てるかもしれない」という希望の保存場所でもありました。
個人開発を続けていると、だんだん気持ちが実用的になっていきます。「この機能は本当に必要か」「時間に見合うか」そういう問いばかり増えていく。それ自体は悪いことではないけれど、いつの間にか最初の楽しさが薄くなっていることがあります。
でも、あのコードの中には、そういう計算よりも前の気持ちがありました。「これ、あったら絶対便利だよな」「こういう操作感にしたら気持ちいいかも」という、純粋な好奇心の痕跡。
それを読んで、少し息が楽になりました。
正直に書くと、誰にも使われないまま削除した機能があります。
作るときはとても興奮していました。アイデアをノートに書き出して、画面のレイアウトまで手で描いて、実装に2週間かけました。リリースから3ヶ月間、その機能に触れたユーザーは、数字を確認する限り一人もいませんでした。
次のバージョンを作るとき、静かに削りました。
当時は「時間を無駄にした」と感じていました。でも、古いコードの中でその機能を見たとき、なんだか愛おしくなりました。使われなかったけれど、あの2週間があったから、次の機能の設計が少しだけ上手くなったのは確かです。失敗じゃなかったとは言いません。でも、無駄でもなかった。
個人開発の文脈では、「売れた/売れなかった」「見てもらえた/もらえなかった」という数字が目立ちます。Xに投稿すれば、反応の多さで可視化されてしまう。
でも、コードの中には数字に出ない記録があります。試行錯誤の痕跡、途中で方向を変えた跡、丁寧に書いたエラー処理、誰も通らない画面に込めた気持ち。それは誰も見ていないけれど、確かにそこにあります。
結果だけを見ていると、自分の歩みが消えていくように感じることがあります。でも、コードは覚えていてくれます。
古いコードを読んで、もう一つ気づいたことがあります。
あの頃の私は、未来の自分がこれを読むとは思っていなかった。だからこそ、素の状態で残っていました。でも今は、「2年後の自分が読んだとき、何を思うだろう」と意識するようになりました。
特別なことをしているわけではありません。コミットメッセージを、もう少しだけ丁寧に書くようにしました。「fix」「update」だけじゃなくて、「なぜそうしたか」を一行だけ添える。ドキュメントを増やすわけでも、コメントを詳しくするわけでもなく、ただ「この判断には理由がある」ということを残すだけです。
それだけで、未来の自分への手紙になります。
2年後に自分のコードを読んで、「ああ、あの頃こういうことを考えていたんだ」とわかるのは、単純に嬉しいことです。
日記は書くのが億劫でも、コードは否応なく書く。だったら、そこに少しだけ「気持ちの文脈」を混ぜておくのはそこまで難しくありません。技術的な正しさを追うよりも先に、「あの頃の自分が何を考えていたか」が伝わる書き方をする。それが今の私の、地味だけど大切な習慣になっています。
アプリは続けてリリースするものだと思っていました。
でも今は、リリースは「過去の自分との対話の機会」でもあると感じています。新しい機能を追加するときに古いコードを読む。バグを直すときに当時の判断を振り返る。そのたびに、「ああ、あのときはこう考えていたんだ」という発見があります。
うまくなっているかどうかよりも、変わってきたことがわかる。それが、積み重ねを実感する一番素直な方法かもしれません。
個人開発は孤独です。使ってもらえないときは本当につらいし、リリースしても誰にも気づかれない日もある。「このまま続ける意味があるのかな」と思う夜は、数え切れないくらいありました。
でも、古いコードを読んで、少し気持ちが変わりました。
やめなかったから、あのコードが今も残っています。あの頃の焦りも、希望も、使われなかった機能への愛着も、全部そこにある。それは誰かに評価されるものではないけれど、確かに私の歩みです。
これから先も、多分うまくいかないことの方が多いと思います。でも、今日書いているこのコードは、2年後の私への贈り物になるかもしれません。
そう思ったら、少しだけ、また書き続けようと思えました。
Lily(@bokuwalily)― 個人開発者。AIと二人三脚で、iOSアプリやWebサービスを作っています
🎁 最後まで読んでくれたあなたへ、無料の特典があります
LINEで「自動化」と送って受け取る(実装テンプレ7本)
Lily(@bokuwalily)― マーケ組織50名規模を統括するCMOを経て、いまは個人でiOSアプリやWebサービスを作っています。集客・導線設計と、AI導入・業務自動化の相談を受けています
🖥️ 制作物・記事 → bokuwalily.com
🐙 OSS → github.com/bokuwalily
🌍 最新情報・お問い合わせ → X @bokuwalily