一人のために作られたデスクトップ
(isene.org)- 25年ぶりに日常的に使うプログラムの大半が自分で設計したツールに置き換わり、Claude Codeに機能追加やバグ修正を任せながら、既存の汎用ツールを一つずつ置き換えてきた
- 全体の環境は、libcなしで純粋な x86_64 アセンブリによりピクセルとキー入力を扱う CHasm ベースの層と、crust 上に構築された Rust アプリケーション層 Fe₂O₃ に分かれる
- CHasm 層では、i3-wm が tile に、kitty が glass に、zsh と rsh が bare に、less が show に置き換わった
- Fe₂O₃ 層では、25年間使ってきた VIM が最初のコミットから72時間で scribe に置き換わり、ファイルマネージャー、メール、RSS、カレンダー、天文パネル、映画ツールも個人のワークフローに合わせたツールへと変わった
- BYOS(Build Your Own Software) は、Rust、Claude Code、十分に文書化された TUI プログラミングの課題のおかげで、より現実的な選択肢となり、一人にぴったり合ったツールを週末単位で置き換えられるようになった
自作のデスクトップ環境
- 25年ぶりに、日常的に使うほぼすべてのプログラムが自分で設計したツールに置き換わった
- 既存の汎用ツールを一度にすべて置き換えたのではなく、手になじむ形で一つずつ差し替えてきた流れである
- Claude Code に機能追加やバグ修正を任せ、ほかの作業をしている間に短く指示を出し、その結果を引き継ぐ形で開発している
- 全体の環境は二つの層に分かれている
CHasm 層: アセンブリベースのツール
- ウィンドウマネージャーは i3-wm から tile に変わった
- ステータスバーとトレイは i3bar と conky から strip と asmites に変わった
- 画面ロックは i3lock から bolt に変わった
- ターミナルエミュレーターは kitty から glass に変わった
- ログインシェルは zsh と rsh を経て bare になった
- ファイルビューアーは less から show に変わった
Fe₂O₃ 層: Rust と crust ベースのツール
- テキストエディターは VIM から scribe に変わった
- ファイルマネージャーは ranger と RTFM を経て pointer になった
- メール、RSS、チャットは mutt、newsbeuter、各種 Web ログインから kastrup に変わった
- カレンダーは Google と MS の Web から tock に変わった
- 天文パネルは astropanel から astro に変わった
- 映画とシリーズのツールは IMDB-terminal から watchit に変わった
- まだ残っている外部ツールは、IRC やその他のチャット用の WeeChat、そして定期的に使う唯一の GUI プログラムである Firefox だけである
VIM を72時間で置き換えた scribe
- vim は 2001 年から 25 年間にわたり、メール、文章、ブログ記事、コード、HyperList、書籍執筆に使われてきた中核ツールだった
- 筋肉記憶が深く染みついており、ブラウザーの任意のテキスト入力欄でも
:wと入力するほどだった - scribe の最初のコミットは 5 月 1 日 00:09 に入り、5 月 3 日の午後には vim を置き換えた
- scribe は vim のようなモーダルエディターだが、使っていなかった機能の 90% を削ぎ落とし、個人の作業フローに合った機能だけを載せている
- デフォルトでのソフトラップ
- Limelight スタイルの集中読書モード
- バッファを離れないプロンプト内 AI
- 完全なシンタックスハイライトを備えた HyperList 編集
- Ruby HyperList app が使う暗号化形式のサポート
- 同時セッション間で共有される永続レジスター
- 革命的な機能ではないが、どれも個人のワークフローに正確に合う機能である
- 以前は欲しい機能があっても、ほかの開発者が同じ発想をしてツールに組み込んでくれるまで何か月、何年、あるいは永遠に待つ必要があったが、今では望む改善は数分先の距離まで近づいた
個人向けツール作成のコストが下がった
- 以前は自分でエディター、ファイルマネージャー、ウィンドウマネージャーを作るのは何年単位のプロジェクトだった
- RTFM をまともに作るだけでも数年かかり、かなりコストの高い作業だった
- ほとんどの人にとって、プログラマーにとってさえ、採算が合わなかった
- 一部を作りかけても週末の時間が終われば既製のツールへ戻る、という流れが一般的だった
- 今では Rust、Claude Code、十分に文書化された TUI プログラミングの課題のおかげで、「本当に欲しいツールを自分で作る」コストは大きく下がった
- 重要なのは AI や Rust そのものではなく、「自分のエディターが X をしてくれたらいいのに」と「X をするエディターがここにある」の間の距離が、集中して作業する数晩のうちに収まるほど小さくなったことにある
配布用ではなく一人のためのソフトウェア
- これらのソフトウェアは他人に使ってもらうために作られたものではない
- 手の使い方、メールの考え方、カレンダーの表示のされ方の好みに合わせて、一人のために作られている
- 他の利用者であれば無数の尖った部分を見つけるかもしれないが、その尖りは個人の使い方と正確に一致しているため目立たない
- コードやアイデアは新しいものではなく、より優れた趣味と規律と才能を持つ人たちがすでにやってきたことでもある
- 核心は、一人に合ったデスクトップコンピューティング環境 を作ることが、今や本当に可能になったという点にある
- 他人のツールを設定して使う水準ではなく、生活の中の特定のツールが週末ごとに一つずつ望みどおりに動くものへ置き換わっていく形である
- もはや 10 年がかりの英雄的プロジェクトではなく、週末単位で進められる現実的な置き換え作業に近い
一人の利用者のために設計する楽しさ
- 自分のために作るなら、他人の好みに合わせた設定可能性を考える必要がない
- 自分が実際に遭遇しない境界条件をサポートする必要もない
- 存在しない利用者のためのドキュメントを書く必要もない
- デフォルト値が正しいかどうかをイシュートラッカーで議論する必要はなく、自分が望む値こそが正しいデフォルトになる
- エディターの
\?チートシートは、自分が覚えたキーを好む順番と合理的だと思うバインディングで表示される - 委員会のない設計であり、対象の利用者は一人なので、決定は数秒で下される
- ソフトウェアの複雑さの大きな部分は、自分以外の利用者を受け入れることから生まれるが、それを取り除けば、小さく速く、正確に合ったツールが残る
BYOS という選択肢
- エディター、ファイルマネージャー、ステータスバー、シェルの動作が一つだけ違っていてほしいと感じたとき、答えはプラグインを書くことや難解な設定言語を学ぶこと、既存のやり方を受け入れることだけではなくなった
- 第三の選択肢として、Build Your Own Software(BYOS) がより現実的な道になってきた
- デスクトップ全体を置き換えなくても、日常の作業フローにあるツールの一つが正確に合うだけで、週末を使う価値がある
1件のコメント
Hacker Newsの意見
ここ数か月ずっとこのテーマについて考えていて、数か月前のブログ記事ではこれを「Extremely Personal Software」と呼んでいた: https://redfloatplane.lol/blog/14-releasing-software-now/
2026年には、1〜10人のためだけの新しいソフトウェアが、これまでのどの年よりも多く書かれるかもしれないし、その後数年もそうなりそう
こうしたソフトウェアのかなりの部分は、事実上隠れたソフトウェアになるはずで、設計計画を立てるコストよりもエージェントに話しかけるコストの方がずっと低いため、人々が自分のためだけに作るから
今後数年は相互運用性が重要になりそうで、「基本的にsqliteを使うこと、プレーンテキストを使うこと、公開標準を使うこと」みたいな常時指示で、エージェント/LLMレベルで解決できるのかも気になる
個人向けソフトウェアは欲しいけれど保守や運用には関心がない人が多いだろうから、可観測性や運用もかなり重要になりそう
1960年代のBASIC以来、その後の Feurzeig/Papert/Solomon の Logo を含め、数多くの教育用プログラミング言語は、初心者でもソフトウェアを作れるようにしようという試みだったという点が、妙なくらい繰り返されている
その努力は将来の職業的開発者をオンボーディングするためではなく、パーソナルコンピュータの「パーソナル」を意味あるものにするためだった
自分のコンピュータなのだから自分のソフトウェアを載せられる、という意味で、実際ポケット電卓ですらそういう機能を提供している
私たちはずっと基礎を再発見し続けている
AIがなければ絶対にやらなかったことで、そんな時間もなかったはず
今では、商用製品が簡単には提供できないいろいろな機能が付いたカスタムアプリを持っていて、非商用利用だからこそ開ける選択肢も多い
自由ソフトウェアがいつか提供してくれるかもしれないが、それより遅くなる可能性が高い
その過程で技術的にも多くを学べたし、自分にとって未知の領域だった場所を、制御可能なコストで探検できた
これからもこういうアプリをもっと作るつもりで、特に自分の料理アプリは要件にぴったり合って、市場の他のアプリをすぐ置き換えた
運用面も興味深くて、ほとんどのユーザーは運用ソフトウェアを自分で回さないので、別途考える必要があった
TailscaleとCloudflareはかなり役に立ったし、ここには明らかに市場がある
さらに進めば、コンピュータが1人のための一回限りの作業用ソフトウェアを書き、あらゆる作業に合ったインターフェース経由で一度だけ実行する段階に至るのかもしれないとも思う
ユーザーがショートカットを覚える形で「ソフトウェアの使い方」を学ばなければならないという概念そのものが、パンチカードのように消えていくかもしれない
Star Trekのように、ただ「コンピュータ」に仕事を頼み、その内部動作やソフトウェアは私たちには見えず、結果だけを扱うようになるのかもしれない
含意をすべて見通すのは難しいが、確かに年を取った気もするし、面白い時代が来る
APIや検証レイヤーのようなものの重要性がずっと増すという直感も正しいと思う
内部ツールのいくつかはライブラリにする価値があったし、最初のライブラリが良くてテスト群が十分なら、複数言語への移植はとても単純になる
逆に考えると、誰かがこのライブラリにカスタムツールを載せるのも簡単になるはず
コンピューティングにとって本当に面白い時期だ
https://maggieappleton.com/home-cooked-software
自分も同じ哲学に従っていると気づいた
sucklessツールを使っていて、stやdwmなどをたくさん改造したので、今では家のように感じる
今は自分の作業フローにうまく統合されるよう、独自のgitマネージャーを実装しているところ
アセンブリまではやらないけれど、このアプローチは本当に気に入っていて、自分もRubyでほぼ同じことをしている
自分のウィンドウマネージャー、シェル、ターミナル、エディタ、ファイルマネージャー、ポップアップメニュー(dmenuっぽいもの)はすべて純粋なRubyでできていて、フォントレンダリングやX11バインディングも含む
これらはClaudeで改善する前から始めたものなので、まだ大半は手書きコードだが、その比重は変わりつつある
散らかっているしバグもあるし、自分には合うが他人には苦痛な「間違った機能」もある
元記事のように、自分のコードを他人にそのまま使えとは勧めておらず、その点がものすごく解放感を与えてくれる
全体として、これらのプロジェクトはカーネル、ブラウザ、Xorgを除けば、自分が使うものの中で最も大きな表面積をカバーしている
Xorgまで手を出すのもかなり魅力的だが、スケジュールに入れるにはLLMがもっと進歩する必要がありそう
ほとんどが自分のためのものなので磨き上げる必要はなく、代替より自分に合っている限り、バグがあっても構わない
もっと多くの人がこうするべきだと強く思う。素晴らしい学習体験になるし、実際に自分が欲しくて使う機能だけを持つシステムが手に入る
今後はこれがもっと簡単になるはず
本当にすごいが、実際にどれくらい時間がかかり、費用がいくらだったのか気になる
Claude Codeは無料ではなく、非常に速いが、かなり高い時給のロボット契約者を雇うのに近い
[1]: https://fortune.com/2026/04/28/nvidia-executive-cost-of-ai-is-greater-than-cost-of-employees/
[2]: https://www.briefs.co/news/uber-torches-entire-2026-ai-budget-on-claude-code-in-four-months/
Claude Proの最安プラン、pi.dev+GPT-5.5、最近ではopenrouter経由のdeepseek-v4を少し、2週間ほど使って自分専用のカスタム版を作った
現時点で機能同等性は90%くらいで、いくつかの面ではすでに上回っている
約20ユーロ程度で、まもなく年60ユーロの購読サービスを置き換えることになる
他人がどう実行するかなんて一瞬たりとも考えなかったし、ログインもセキュリティも何もない
外部アクセスなしのTailscaleノードの後ろで100%動かすつもりだから
リリースとデプロイの手順も、自分が好きなやり方そのもので、他人は違うかもしれないが気にする必要はない。自分のものだから
数か月前にはHazel[0]も同じやり方で置き換えた
MVPはたぶん一晩でできて、見栄えよくするのには軽く1週間くらいかかった
今ではHazelにやってほしかったことを正確にやってくれる自分のmacOSアプリがあり、永遠に自分のもので、好きなように機能を足したり削ったりできる
[0] https://www.noodlesoft.com/whats-new-in-hazel-6/
何かには使う必要があったし
時間については、CHasmとFe2O3のソフトウェア一式全体で2026-03-29に始めて、自分の時間としてはたぶん60時間くらい使った
ただし昨夏から、70件を超えるClaude Codeプロジェクトで磨き続けてきた、自分のニーズに合わせたかなり特化型のClaude Code設定がある
1人だけのためのtmuxラッパーを持っている
自分のどのデバイスからでも、Tailscale経由で別のどのデバイスにもClaude Code、codex、opencode、あるいは単なるシェルを操作できて、もっとよく使うのはexe.devサーバー上で動かすやり方
セッションをスマホで引き継ぐことが多く、たまに音声も使う
テキストストリームの中で、エージェントが言及したファイルを見るボタンやリンクを開くボタンがあり、自分に必要なgit作業用のボタンもちょうどある
yoloモードと通常モードを切り替えるボタンもある
基本的には、自分が実際に使うすべてのもののためのとてもシンプルなUIで、スマホでも使いやすい
そしておそらくもっと重要なのは、自分が個人的に使わないもののためのUIがまったくないこと
自分の全マシンにこのharness-harnessリポジトリがあるので、変更が必要になればタブを開いてプロンプトで作り、そのまま反映する
すべて良いのだが、起きている時間のすべてで仕事ができるようになってしまう点は悪いのかもしれない
Windowsでは「1人用」のwhisperラッパーを使ってSSH接続していて、ノートPCのARCグラフィックスカードのおかげでそこそこうまく動いている
スマホからSSH接続するときにも同じことができたらいいのだが
本当に興味深い
何かを作る人たちの中には、自分の好みだけでなく小さなオーディエンスの好みにも合うものを作る人が出てくるだろう
そのオーディエンスの一部は成長を続けて、大手プレイヤーを揺るがすかもしれない
ソフトウェア構築における資本集約的な部分が溶けてなくなり、使用量ベースのトークン費用と自分の時間という運用費に置き換わっている
これは可能性の空間を大きく広げ、巨大な新しい共有地を作るはず
作るコストがそこまで安いなら、オープンソースとして公開しない理由はない
他人のオープンソースが気に入っても丸ごと持ってきたくないなら、エージェントに「このアイデアを自分のものに入れて」と頼めばいい
コードに対する新しい考え方でもある
豊富で、しばしばカスタムなソフトウェアの時代に入るにつれて、企業としてのソフトウェアの価値は下がっていく
素晴らしいアプリもたくさん出るし、ひどいアプリもたくさん出る
もう一つ注目すべきなのは、インターネットが近いうちにどれだけおしゃべりになるかということ
こうしたアプリのかなりの部分は、APIを呼び出し、お互いにpingを送り合うような形で動くだろう
ちょっと脱線だけど、机の上のノートPC画像を生成することにどんな価値があるのか気になる
特に関連性が高いわけでもなく、いくつかのリポジトリに上げたように実際のセットアップのスクリーンショットを入れるとか、もっとユニークなものを入れることもできたはず
ああいう雰囲気の似た画像はいくらでも見つかるので、自分が見逃した面白さでもあったのかと思ってしまう
素晴らしい! そして嫌いでもある
作者もこのソフトウェア一式を作るのに楽しさがあったと認めるだろうが、ここにいる多くの人が理解する楽しさとは別種のものだろう
「small web」やインターネット上の他のカウンターカルチャーのように、昔ながらのやり方でやる批評家集団の一員になることを期待している
他の人たちがAI支援のあらゆるものに全面的に飛び込み、批判的思考やプログラミング能力やUnixコマンドラインの知識などを失った後で、その残骸を片付ける人になる自分を想像する
AIとパーソナライズドソフトウェアに全振りする魅力もある程度は理解できる。かなりサイバーパンク的だ
しかしオープンソースソフトウェアの観点では、欠点が利点を圧倒していると思う
共同体による所有やコミットメントのような重要原則が抜け落ちており、このアプローチは急進的に反社会的ですらある
保守性の問題は避けられないし、大手テック企業への依存は言うまでもない
人それぞれだが、これは自分の道ではない
1つは「その物が存在しさえすればいい」人たち、もう1つは「その物が存在してほしいし、自分で作って理解もしたい」人たちだ
前者はとても楽しい時間を過ごしている
後者、つまり上で描写されているあなたや自分のような人たちは、警戒し、疑っている
少し逆説的だ。私たちは何年もSFやサイバーパンクを見たり読んだりして、こんな世界を夢見てきた
Enterpriseの乗組員がコードを書いているのを見たことがいつあっただろう? ただコンピュータに「サブルーチンを書いて」と言えば終わりだった。かっこいい世界だ
ところが実際にここまで来てみると、技芸が危機にさらされていて、「ただ頼んで立ち去る」という発想には全面的には感嘆できなくなる
自分も批判的思考、生の技術、設計感覚を失うのではと怖い
2年後、3年後、5年後、10年後にも、自己認識と技芸を技術貴族に譲り渡していない少数派の1人でいる自分を想像もする
でも、そもそもそれが重要なのかも分からない
「ソースコード」は結局、誰も意識しない深い抽象になるかもしれない
私たちの99%が最終的に出力する機械語が何をしていてどう見えるかを、気にしたり知る必要がないのと同じように
ともあれ、今は自分の思考を保ち続けるつもりだ
「自分のメール/ブラウザ/カレンダーなどがXをしてくれたらいいのに」と思うとき、実際にはその下にあるプロトコルの限界であることが多かった
だから、すべてのソフトウェアを自作しても、外部世界と相互作用するときには結局まだ妥協が必要になる