**AIで築いた三か月、欲しがり続けた八年**

2026/04/05 21:43

**AIで築いた三か月、欲しがり続けた八年**

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

概要
著者は3か月間で約250時間を費やし、パーサー・フォーマッタ・PerfettoSQL拡張機能・ウェブプレイグラウンドを含むSQLite開発ツールセット syntaqlite を構築しました。MaxプランのClaude Codeを使用して、AIは明白な機能を高速化し、500件以上のテストを迅速に生成しました。しかし、最初のAI出力は「スパゲッティ」状態のC/Pythonコードであり、著者は保守性とモジュール性を高めるために完全にRustへ書き換えました。

AIは日常的なコーディングタスクでは有効でしたが、高レベルのアーキテクチャや設計判断、エディタプラグイン・WASMプレイグラウンド・ドキュメントといった非直感的拡張に苦戦しました。「バイブコーディング」の1か月間で、著者はプロジェクトのメンタルモデルを失い、設計選択を先延ばしにし、依存性のあるプロンプトループに陥りました。AIには履歴的文脈がないため、生成後すぐにリファクタリングを行いコードを理解可能な状態に保つ必要がありました。

公開APIは、AIが客観的な可用性や開発者満足度の指標を提供できなかったために損傷し、大規模な手動クリーニングが必要となりました。これらの挫折にもかかわらず、最終リリース(0.1)はAI生成ベースラインから完全に書き直した後、3月中旬にローンチされました。

著者は、AIコーディングエージェントが実装タスクの乗数化ツールとして機能できる一方で、アーキテクチャと設計における人間の判断を置き換えることはできないと主張しています。彼はコミュニティに対し、単なるスクリプトではなく、AIツールで構築された完全なソフトウェアの正直かつ詳細なケーススタディを共有するよう呼び掛けています。これにより組織がAIが付加価値を提供する領域と熟練した監督が不可欠な領域を理解できるようになることを期待しています。

本文

8年間、SQLite で作業するための高品質な開発ツールセットを欲しがっていました。
SQLite が業界にとって重要(¹)という事実から、誰も本当に良い開発者体験を構築していないことに長らく疑問を抱いてきました²。

数週間前、3か月間にわたり約 250 時間の労力を夜間・週末・休暇日に費やした結果、ついに synt‑aqlite(GitHub)をリリースしました³。
この実現ができた主な理由は AI コーディングエージェントのおかげだと考えています⁴。


今後の取り組み

私は synt‑aqlite を作る過程で AI がどこで役立ち、どこで逆に害を及ぼしたかを体系的に分析します。
プロジェクトと自身の背景を整理し、この経験がどれだけ一般化できるか独自に評価していただけますように。
主張ごとにプロジェクトジャーナル、コードトランスクリプト、コミット履歴から裏付けを示します⁵。


なぜ必要だったのか

Perfetto での作業では、パフォーマンストレースをクエリするための SQLite ベース言語 PerfettoSQL を保守しています。
Google 内部には約 10 万行の PerfettoSQL があり、多くのチームが利用しています。

ユーザーがツールに期待するもの(フォーマッタ、リンター、エディタ拡張機能など)が増えると、オープンソースから SQLite のツールを取り込もうとしても、信頼性・速度・柔軟性が足りず失望しました。
既存のツールは PerfettoSQL に適応できないか、単に「最重要課題」ではありませんでした。

私は高校時代に多くのオープンソースプロジェクトを手掛けていました⁷ が大学時代にはやる気が失われ、メンテナンス(バグ triage、クラッシュ調査、ドキュメント作成、コミュニティ構築)という責任感から離れました。
しかし「自分の好きなことを他者と共有できる自由」というオープンソースへの渇望は消えませんでした。SQLite 開発ツールプロジェクトは常に頭に浮かんでいましたが、難易度と単調さの両面で先延ばしになっていました。


難しい点と退屈な点

個人的時間を投資するなら Perfetto だけでなく、すべての SQLite ユーザーに対応したいと考えました。
つまり SQL を「SQLite と同じ」方式で解析する必要があります。

言語指向ツールの核はパーサです。ソースコードを「parse tree」に変換し、それを基盤にフォーマッタやリンターが構築されます。
SQLite は正式な仕様書も API も持たず、実装では parse tree 自体を生成しません⁹!
そのため SQLite のソースから必要部分だけを抽出し、自分でパーサを作るしかありません。

C 言語で密度の高いコードベースを理解するのは極めて困難です。バーチャルテーブル API など数日かけて把握しましたが、全体のパーサスタックを掴むのは骨の折れる作業でした。

SQLite の言語には 400 以上の規則があり、それぞれを parse tree のノードにマッピングする必要があります。
ルール自体は繰り返し作業ですが、テスト作成・デバッグ・バグ triage も伴います。
この点で「副プロジェクトとしては難しすぎる」「動機維持が困難」「数か月投資する価値がない」と思い、アイデアは消えてしまいました¹²。


実際にどうしたか

2025 年初頭から Aider → Roo Code → Claude Code(7 月以降)を使用してきました。
しかし 2025 年末にはモデルの品質が大幅に向上しました¹³。

Perfetto で頻繁に発生する問題は信頼できるパーサがあれば簡単に解決できます。
クリスマス休暇中に「Claude Code Max プラン(£200/月)だけで完全に AI に委ねてみる」と決め、1 月を通じて実装しました。

結果として C で SQLite ソースから抽出したパーサ、上位層のフォーマッタ、PerfettoSQL 拡張機能、Web プレイグラウンドという構成が完成しました。
しかし詳細レビューではコードベースが「スパゲティ」状態でした¹⁴。Python の抽出パイプラインは散在し、ファイルが数千行に膨れ上がり、非常に脆弱でした。

解決策として、全体を捨てて Rust で再構築しました¹⁵。C の欠点(高レベルコンポーネントの実装難易度)と分散言語の不便さを克服できるはずです。また、自身の役割も「意思決定全責任」を取る形に変え、設計の前段階で固い方針を設定し、変更ごとに徹底レビュー・問題即解消・AI 出力自動検証(lint, validation, テスト)へ投資しました¹⁶。

2 月にはコア機能が整い、3 月中旬に 0.1 リリースへ至りました。最終段階ではテスト検証、エディタ拡張、パッケージング、ドキュメントを追加しました。


本当に語りたいこと

AI がなければ起こらない出来事と、使い続けることで自分に与えた負担です。

AI がプロジェクトの存在理由であり、完成度の根源

慣性克服

「大きな新規プロジェクトに対して先延ばしが強い」という自らの弱点を、AI は技術的疑問や不安を具体化した問題へと転換しました。
「SQLite の解析方法を理解する」ではなく、「AI にアプローチを提案させてそれを破壊・再構築してみる」――最初の一歩が踏めば、以降はずっと楽になります¹⁸。

コード生成速度

AI は「関数を書け」「クラス設計を実装できる」タスクで自分より速く、将来読む人にとって直感的なスタイルでコードを出力します。
標準化は多くのコードで有効ですが、synt‑aqlite の抽出パイプラインやパーサ設計では逆に害があり、最終的には自分で設計する必要がありました。

リファクタリング

AI が生成したコードを頻繁にリファクタリングしないとコードベースは理解不能になります。
vibe‑coding 期間中は十分に行わず、全体を捨てる羽目になりました。
再構築時には「ugly か?」という質問でリファクタリングをルーチン化しました。

教育助手

Wadler‑Lindig の pretty printing(²³)や Rust ツールチェーン、VS Code エクステンション API など、自分が触れたことのない領域でも AI が実践的なレッスンを提供し、学習曲線を大幅に短縮しました。

単独で作るよりも多くを実装

AI はエディタ拡張・Python バインディング・WASM プレイグラウンド・ドキュメントサイト・複数エコシステム向けパッケージングといった「重要だが必須ではない」機能も手軽に実装できました。
UX への思考時間を確保し、ユーザー体験の質(エラーメッセージ、フォーマット出力、CLI フラグ)にも注力できます。


AI のコスト

アディクション

AI を「スロットマシン」と例えると、プロンプトを送るたびに成功か失敗が決まります。
夜遅くまで「もう一回だけ」試す癖がつき、時間的損失も増えました²⁸–³₀。

コードベースへの疎外

コードの詳細を忘れると、エージェントに対して曖昧な指示しかできず、誤解が生じます。
「FooClass を X に変える」ではなく、「Bar をするものを X に変更」という長い説明が必要になり、AI が間違える確率も上がります。

遅延設計

リファクタリングコストが低いため「後でやろう」と言い訳しやすく、結果としてコードベースは混乱したままです。
vibe‑coding 期間中に多くの設計を遅らせたことで、最終的には全体を書き直さざるを得ませんでした。

時間感覚の欠如

AI は「コードベースがある状態」を把握するだけで、時間経過や歴史を理解しません。
そのため同じミスを繰り返すか、新たな罠に陥るリスクがあります。人間の経験と歴史的文脈は不可欠です。


相対性

AI が有効・無効になる場面は一貫しています。

状況AI の効果
既存知識がある優秀。出力を即レビューし、速い進捗が得られる。
説明できるが未経験良好だが注意深く管理する必要がある。例:Wadler‑Lindig でフォーマッタを学ぶ。
何も想像できない有害に。設計探索の際は AI に頼りすぎず、まず自分で考えるべき。

実装には明確な答えがある一方で、設計や API の「良さ」には客観的基準が無く、AI は苦戦します。synt‑aqlite の公開 API もその典型です。


結論

8 年間の長期プロジェクトを数か月で実現できたのは AI が大きく寄与しました。しかし成功物語ではなく、vibe‑coding による失敗と再構築が含まれます。
AI は「実装」の乗算器に優れている一方、「設計」の代替には危険です。

他者から期待するのは、週末の試作や単発スクリプトではなく、ユーザー・バグレポート・自身の変化に耐える本格的なソフトウェア開発体験を共有してほしいということです。

同じ日のほかのニュース

一覧に戻る →

2026/04/06 3:45

Gemma 4(iPhone向け)

## Japanese Translation: AI Edge GalleryはiPhone専用アプリで、デバイスのハードウェア上で大規模言語モデルを完全にオフラインで実行し、インターネット接続なしで高性能な生成型AIをユーザーに提供します。最新リリースではGemma 4をサポートし、以下の新機能が追加されました: - **Agent Skills** ユーザーはWikipedia事実照合、インタラクティブマップ、視覚要約カードなどのモジュールツールでLLMを拡張でき、URLまたはGitHub Discussionsからスキルをロードできます。 - **AI Chat with Thinking Mode** 対応モデルに対してステップバイステップの推論ビューを提供し、多段会話の透明性を高めます。 - **Ask Image** デバイスカメラまたはフォトギャラリーを使用したマルチモーダルオブジェクト認識と視覚パズル解決が可能です。 - **Audio Scribe** 音声録音をリアルタイムで文字起こし・翻訳し、オンデバイス言語モデルを利用します。 - **Prompt Lab** 温度やtop‑kなどのパラメータ調整が可能なプロンプトテスト用ワークスペースです。 - **Mobile Actions** ファインチューニングされたFunctionGemma 270mモデルにより、オフラインデバイス制御と自動タスクを実現します。 - **Tiny Garden** 自然言語で仮想庭園を植えたり収穫したりできる実験的ミニゲームで、同じくFunctionGemma 270mベースです。 アプリにはカスタムオープンソースモデルのダウンロード・ロードと特定ハードウェア上での性能評価が可能な柔軟なサンドボックスがあります。全ての推論はデバイス内で行われるため、インターネットは不要であり、プロンプト、画像、および機密データの100 %オンデバイスプライバシーを確保します。プロジェクトはオープンソース(GitHub: https://github.com/google-ai-edge/gallery)で、スキルや機能のコミュニティ貢献を歓迎しています。 この要約はすべての主要ポイントを網羅し、推測的表現を避けつつ主旨を明確かつ簡潔に提示しています。

2026/04/04 18:20

**LÖVE:Lua用 2D ゲームフレームワーク**

## Japanese Translation: > **概要:** > LÖVEは、Windows、macOS、Linux、Android、およびiOS上でLuaを使用して2Dゲームを構築するための無料かつオープンソースのフレームワークです。プロジェクトはGitHubに安定リリースを公開し、CI経由でnightly/unstableビルド(Ubuntu PPA `ppa:bartbes/love-unstable` および Arch AUR パッケージ `love-git` を含む)も提供しています。すべてのバイナリは、LÖVE APIを網羅する完全なテストスイート(`testing/`)とともに配布されます。各プラットフォーム用の詳細なビルド手順が用意されており、LinuxではCMake、macOS/iOSではXcode、Androidには専用リポジトリがあります。また `love‑experiments` リポジトリは実験的変更を保持しています。ドキュメントはプロジェクトのWikiにあり、コミュニティサポートはフォーラム、Discord、subreddit、およびWikiから提供されます。貢献はプルリクエストで受け付けられますが、LLMや生成AIによって生成されたコードは品質維持のため拒否されます。主な依存関係にはSDL3、OpenGL 3.3+ / OpenGL ES 3.0+、Vulkan/Metal、OpenAL、Lua/LuaJIT/LLVM‑lua、FreeType、harfbuzz、ModPlug、Vorbisfile、およびTheoraが含まれます。

2026/04/06 7:31

日本では、ロボットはあなたの仕事を奪うものではなく、誰も取りたがらない職務を担ってくれます。

## Japanese Translation: --- ## 要約 日本経済産業省は、総理大臣高市早苗氏の支援を受けて、2040年までに世界市場の **30 %** を占める国内物理‑AIセクター構築計画を発表し、約 **63億ドル** の資金を投入します。このイニシアチブは深刻な労働力不足が主因であり、日本の就業年齢人口は **59.6 %** に減少しており、今後20年間で約 **1500万人** へと縮小すると予測され、将来の労働供給に脅威を与えています。 日本の製造業者はすでに **70 %(2022年)** の産業用ロボット市場を支配しており、強固な基盤があります。政府の戦略は実験的試作から、**稼働時間、人間介入率、生産性への影響** で測定される有料顧客導入へとシフトします。 このハイブリッドエコシステムを示す主要プレーヤーは次の通りです: - **Mujin**:既存の産業用ロボットを自律的なピッキング・物流プラットフォームに変えるロボティクス制御ソフトウェア。 - **WHILL**:東京とサンフランシスコで創業されたスタートアップ。電動車両、搭載センサー、ナビゲーションシステム、クラウドベースのフリート管理を組み合わせた短距離自律輸送。 - **SoftBank**:視覚と言語モデルとリアルタイム制御を結合し、環境を認識して複雑なタスクを自律的に実行できるロボットを産業現場で可能にする。 - **Terra Drone**:運用データ+AI を活用し、自律防衛システムの信頼性向上を図る。 日本の優位性は、高精度部品(アクチュエーター、センサー、モーションコントロール)にあり、物理システムと AI の統合に対して戦略的な堀を形成しています。投資は純粋なハードウェアではなく、オーケストレーションソフトウェア、デジタルツイン、シミュレーションツール、統合プラットフォームへと徐々に向けられています。 結果として生まれるハイブリッドモデルは、大手企業がスケールと信頼性を提供し、スタートアップがソフトウェア革新を推進する構造であり、製造業・物流・自律輸送・防衛部門を再形成する可能性があります。これにより、ハードウェアの卓越性と高度な AI オーケストレーションを融合したバランスの取れたエコシステムが実現します。