古いコードは骨董品。絡まった歴史が、今ようやく面白くなる。
Software Antiques Collection — Where tangled history finally gets interesting.
the light is on. come in.
公開済みの成果物
READ ON NOTE.COM →
90 年代以前のソースコードは、AI が登場するはるか前に書かれた ソフトウェアの骨董品。
誰かが手作業で打ち込み、動かし、放置し、忘れられたもの。 死蔵プラットフォームに眠るそれらを、消える前に収集し、 創造的な使い方を探る。
“Clean OSS is edited literature. Legacy code is field recordings.”
まず集める
消える前に、静かに
面白い使い方を探す
創造的に、制約なく
答えはあとから
読み解く時間そのものが価値
実績データ
383K
comments extracted
12 repositories
12
repositories scanned
8 languages
1978
oldest code found
BRL-CAD vectfont.c
198
HACK + KLUDGE tags
BRL-CAD alone
350
“oops” comments
in US Army CAD code
8
emotions detected
frustration to humor
478
Japanese comments
incl. 442 hengband-lua
17.7K
tagged comments
14 tag types
集めて、読み解いて、伝える。
383,418件のコメントを8言語・12リポジトリから抽出。感情分析・タグ検出パイプラインを構築。
鑑定書シリーズ。#001 変愚蛮怒 Lua 公開済み、#002 BRL-CAD 準備中。月2本ペースで制作。
コメントをインタラクティブに探索するWebアプリ。鑑定人 vs AI、クイズ、ランダム発掘。
8言語の変換プロジェクト完了。COBOL, RPG, PL/I, VB6, MUMPS, Fortran → Python/React。
古いコードのリズムや構造を音楽に変換。レガシーの「音」を聴く。
きれいなコードしか知らない AI に汚いコードを食わせたら?
☙ FOUND IN: payroll_calc.c — last modified 2003-04-12
// ============================================
// FIXME: this workaround has been here since 1998
// Original author: unknown (left company in 2001)
// Last modified: 2003-04-12
// Nobody knows why removing this breaks payroll
// ============================================
if (month == 2 && day > 28) {
day = 28; // TODO: handle leap years properly
// HACK: just... don't deploy in February
}
// See you space cowboy...こんなコード、眠ってませんか? 読み解くのは、わりと得意です。
DISCOVER
API / Archive index
CLONE
--depth 1
EXTRACT
Metadata + cloc
SCAN
Smells + Secrets
STORE
Parquet + Raw
よくある質問
消えゆく90年代以前〜2000年代のソースコードを系統的に収集・保存するソフトウェア考古学プロジェクトです。Google Code Archive、CodePlex、SourceForge等の死蔵プラットフォームに眠るコードを、消える前に収集し、創造的な使い方を探ります。
主にAI登場以前(Pre-AI時代)に書かれたソースコードが対象です。Google Code Archive(140万プロジェクト)、CodePlex Archive(10.8万リポジトリ)、SourceForge(約50万プロジェクト)、GitHub放棄リポジトリ、学術コード、政府公開OSS、レトロ/デモシーン(1980年代〜2000年代)などから収集しています。
古いコードはAIの学習データに含まれない「ソフトウェアの骨董品」です。TODOコメントには開発者の苦悩が化石のように刻まれ、コードスメルのパターンは現代のソフトウェア品質向上に活かせます。また、パラダイムの変遷を20年分のコードで追うことは、ソフトウェア工学の自然史として学術的価値もあります。
TODO Archaeology(コメントの化石記録分析)、Code Archaeology AI(コードの年代・起源推定)、Software Natural History(パラダイム変遷研究)、Before/Afterペアデータセット(リファクタリング前後の比較)、Code Sonification(コード構造の音楽化)、Legacy Whisperer(汚いコードを理解するAI訓練)など、研究・創作の両面で活用を構想しています。
はい。古いコードベースの情報提供、共同研究のご提案、収集ソースの紹介など歓迎しています。お問い合わせフォームから「Legacy Code Archive(ソフトウェア骨董品収集)」を選択してご連絡ください。公開リポジトリで明示的なライセンスがあるコードのみを対象としています。
Software Heritageは27B以上のソースファイルを保存する大規模アーカイブです。Legacy Code Archiveは保存だけでなく、古いコードの「創造的活用」に焦点を当てています。TODOコメントの考古学的分析やコードの音楽化など、骨董品を鑑賞し新しい価値を見出すアプローチが特徴です。
はい。コードベース全体の移行ではなく、既存コードの構造分析・リスク評価・ドキュメント復元といった分析のみのご依頼も受け付けています。まず現状のコードを「読む」ことから始め、移行が必要かどうかの判断材料を提供します。
対応しています。Legacy Code Archiveの収集対象にはCOBOL(現在も世界で2,200億行が稼働)、VB6、Fortran、Perl、Delphi、Classic ASPなどが含まれます。言語の新旧を問わず、動いているコードには価値があるという立場です。
規模と複雑さによります。数千行のスクリプトなら数週間、数十万行のエンタープライズシステムなら数ヶ月〜年単位です。重要なのは一括移行(Big Bang)ではなく、段階的移行(Strangler Fig Pattern)を検討すること。既存システムを動かしたまま、少しずつ置き換えるアプローチが現実的です。
SonarQube(静的解析・コードスメル検出)、cloc(行数カウント・言語判定)、GitHub API(リポジトリメタデータ取得)、カスタムスクリプト(TODO/FIXME/HACKコメント抽出・感情分析)などを組み合わせて使用しています。ツールだけでなく、コードを実際に読んで文脈を理解する「人間の目」も重要です。
はい。「まずこのリポジトリだけ見てほしい」「このモジュールの構造を把握したい」といった小規模なご相談から対応しています。お問い合わせフォームからお気軽にご連絡ください。
はい、むしろそれが本領です。Legacy Code Archiveの研究で培った考古学的アプローチにより、コメント・命名規則・コミット履歴・API使用パターンなどの痕跡からコードの意図と仕様を推定します。完全な復元は保証できませんが、「何もわからない」状態から「おおよその構造と意図がわかる」状態にすることが可能です。
コードの構文解析や関数の入出力説明はAIでも可能です。しかし「なぜこのif文がここにあるのか」「このマジックナンバーは何を意味するのか」といった業務文脈の推定は、AIだけでは精度が出ません。当社はAIによる大量解析と人間の業務知識・推論力を組み合わせるアプローチを取っています。
初期の構造分析(数十万円〜)から、大規模移行プロジェクト(数百万円〜)まで規模によります。まずは無料相談で現状をヒアリングし、分析の範囲と概算をご提示します。「まず分析だけ」という小規模なスタートも可能です。
はい。コードの受け渡し・分析・報告はすべてリモートで完結できます。Git リポジトリの共有、セキュアなファイル転送、オンラインミーティングでの報告が標準的な進め方です。大阪拠点ですが、全国どこからでもご相談いただけます。
LEGACY CODE ARCHIVE
骨董品屋の主人は説明しない。
「これ、いいでしょう」と言うだけ。