身近な不便や制約を見つけ、実用性と保守性を重視して課題解決に取り組んできました。機能を実装して終わりにせず、実際の利用者が安心して使い続けられる状態まで設計することを大切にしています。
iPad向けに設計された1秒起動の軽量ブラウザIDE。18ヶ国語対応、Git連携、Node.js/TypeScriptランタイムを備えたクライアントサイド開発環境。
詳細を見る →Word文書のための「意味がわかる」バージョン管理システム。GitがWordで役に立たない理由を正面から解決し、rsidやレイアウトの揺れを無視して、段落・画像・スタイルといった文書上の意味的変化だけを差分として見せるデスクトップアプリ。
詳細を見る →競技プログラミングのC++を1ノードずつ追える、ステップ実行特化のTypeScript製インタプリタ。配列・スタック・変数を「動かしながら見る」ための実行基盤。
詳細を見る →Next.js を中心に Svelte / SolidJS / Astro / Nuxt を扱い、Rust・Swift も手がけます。Wasm・Web Worker・Worklet など Web の先端技術や React の最適化に取り組み、これまでに 30 件ほどのプロダクトを個人開発してきました。
現在はハッカソンの運営・講師、学生サークルでのメンター、摂津市の中学校で教育委員会から委託を受けた部活動の技術顧問を務めています。趣味はヴァイオリンです。
コード生成 AI の普及で実装速度は大きく上がりました。しかし、それが良い設計につながるとは限りません。AI が見落としやすい文脈を人が補い、出力を批判的に評価することを重視しています。
AIの弱点は知識不足だけではなく、文脈を保ち続ける難しさにあります。設計判断・責務・将来の変更まで見て、生成されたコードを評価します。
端末の制約、短い準備期間、現場の例外、利用者の不安——実装前にこれらを整理し、設計対象として扱います。
動くことと、責務として妥当か、保守しやすいか、安全かは別の問題です。AIの出力も、人間が検証する側に立ちます。