专为一人打造的桌面。
A desktop made for one

原始链接: https://isene.org/2026/05/Audience-of-One.html

经过25年,作者几乎用定制工具取代了所有现成的软件,这一过程因人工智能辅助(Claude Code)和Rust编程语言而加速。这个个性化环境的核心包括“CHasm”,一个低级别的像素和按键输入层,以及基于TUI库构建的Rust应用程序层“Fe₂O₃”。 一项特别重要的改变是用“scribe”取代了他们使用25年的Vim编辑器——一个精简的、模式化的编辑器,仅用72小时就针对他们特定的写作流程进行了定制。这突显了一个关键点:构建定制软件的成本已大幅降低。 作者强调,这并非为了展示软件给他人,而是为了证明真正个性化计算体验的可行性。摆脱了对其他用户的考虑——无需配置性、支持或文档——就能得到小巧、快速且完全适合单个用户需求的软件。他们提倡“自己构建软件”(BYOS)的方法,并建议即使替换一个工具也能带来巨大的回报。

## “极度个性化软件”的兴起 最近在Hacker News上的一场讨论强调了一种日益增长的趋势:个人正在创建高度定制化的软件,以满足他们*自身*的具体需求,通常借助Claude等AI工具。这并非关于构建下一个大型应用程序,而是为一个人——或一个非常小的群体——打造工具。 作者详细描述了使用汇编语言构建自定义桌面环境,利用AI大幅缩短开发时间并实现显著的性能提升(例如延长电池续航时间)。这反映了可访问的AI所带来的更广泛的转变:创建定制软件的成本正在下降,使即使没有广泛编程经验的个人也能构建他们想要的东西。 许多评论者分享了类似的经历,强调了创建完全适合其工作流程的工具所带来的乐趣,即使这些工具具有怪癖且对更广泛的受众没有吸引力。虽然存在安全问题,但重点仍然是这种个性化计算新时代所提供的解放和生产力提升,在这种时代,软件越来越是“自制”的,而不是大规模生产的。这种趋势表明,软件的未来可能不再侧重于广泛的功能,而是侧重于超特定的实用性,由个人需求和AI辅助驱动。
相关文章

原文

A desktop made for one

For the first time in twenty-five years I’m sitting in front of a computer where almost every program I touch was designed by me. One tool at a time, the off-the-shelf option got swapped out for something a little closer to how my hands wanted to work. (I wrote about the start of this a couple of weeks ago — that post laid out the early swaps; this one is the view from the other side of the journey.)

It’s been a crazy few weeks guiding Claude Code inbetween all the other stuff I’m doing in life. I direct CC, it works while I do other stuff. I get a second or few in between tasks, and I respond. Then off it goes adding features or hunting bugs.

Two suites in a happy marriage: CHasm, the bedrock — pure x86_64 assembly, no libc, the layer that paints pixels and reads keys. Fe₂O₃, the application layer in Rust, sitting on a small shared TUI library called crust.

The CHasm layer (assembly)

The Fe₂O₃ layer (Rust on crust)

What’s left? WeeChat for IRC and other chats. Firefox — the only GUI program I still use regularly. That’s it. Everything else is mine.

The vim line

Let me get a bit sentimental about vim, because vim was the one I thought I’d never replace.

I started using it in 2001. For twenty-five years, every email I wrote went through vim. Every article. Every blog post. Every line of code, every HyperList, and every book. It was the one tool I would have called part of how I think. The muscle memory was so deep that I’d open random text fields in browsers and ended with typing :w.

Then in three days I had scribe and stopped using vim.

The first commit landed at 00:09 on May 1st. By afternoon today (May 3rd) vim was replaced. Twenty-five years of muscle memory rerouted in seventy-two hours.

Vim is wonderful, but scribe is mine. It’s modal like vim, but missing the ninety percent of features I never used, and carrying the handful of writer-shaped tweaks I always wished vim had. Soft-wrap by default. Reading mode with Limelight-style focus. AI in the prompt without leaving the buffer. HyperList editing with full syntax highlighting and the encryption format the Ruby HyperList app uses. Persistent registers shared across concurrent sessions is a cool feature. None of it revolutionary, but all of it shaped to my exact workflow. And whenever I think of an enhancement I want, it’s just minutes away. It used to be waiting for months or years or forever for some developer to get the same idea as mine and introduce it into the tool I use.

Why this is possible now

It used to be that writing your own editor, your own file manager, your own window manager, was a project of years. I know, it took me a few years to get RTFM right. A serious undertaking with a serious cost. The economics of it didn’t work for most people, even programmers. You’d touch a piece of it, get most of the way, run out of weekend, and go back to the off-the-shelf tool.

That barrier is much lower now. With Rust, CC as the workhorse, and the fact that the hard problems of TUI programming have been documented to death… the cost of “build the tool you actually want” has fallen by orders of magnitude.

I don’t think this is a story about AI or about Rust specifically. Both helped. But the deeper point is that the gap between “I wish my editor did X” and “okay, here’s an editor that does X” is now small enough to fit inside a few evenings of focused work.

I’m not selling anything

I should say what this post is not.

It’s not an invitation to use my software. Honestly, please don’t. None of it is built for you. It’s built for me — for the way I hold my hands, the way I think about email, the way I want my calendar to render. I’m sure other people would find a hundred sharp edges I’ve never noticed because they happen to align perfectly with what I do.

It’s also not a request for kudos. The code isn’t novel, nor are the ideas. There’s nothing here that hasn’t been done before by someone with more taste, discipline or talent.

What I want to do is show one specific thing: it is now genuinely feasible to make a desktop computing environment that fits one person. Instead of a configuration of someone else’s tools. This is no longer a heroic decade-long undertaking. This is an actual, weekend-by-weekend, “this thing in my life now does exactly what I want” replacement.

The joy of an audience of one

The best part of building for myself: the relief of not having to care.

I don’t have to think about configurability for someone with different preferences. And I don’t have to support corner cases I’d never personally hit. Nor do I have to write documentation for users who don’t exist. No more arguing on issue trackers about whether a default is the right default — of course it’s the right default, it’s the one I want.

The editor’s \? cheatsheet shows the keys I memorised, in the order I prefer, with the bindings I think are sensible. Arrogance? Nope, it’s design without committee. The audience is one person. Decisions take seconds.

It turns out an enormous amount of software complexity comes from accommodating users who aren’t you. Strip that out and what’s left is small, fast, exactly-shaped, and a quiet pleasure to use.

So

If you’ve ever caught yourself thinking “I wish my editor / file manager / status bar / shell just did this one thing differently” and you’ve been told the answer is to write a plugin, learn an obscure config language, or accept the way it is, then consider that the third option is more available than it used to be: Build Your Own Software (BYOS).

You probably won’t replace your whole desktop. I didn’t plan to either. But the satisfaction of having even one tool in your daily workflow that fits you exactly is worth a weekend.

I’m a rabbit in spring :)

联系我们 contact @ memedata.com