But to be honest, my time using Emacs didn't teach me to "build personal software". My Emacs set up was extremely brittle, and it was a nightmare when I tried to use it across Windows & macOS. My university project was written using an unholy combination of org-mode & some workflow to create a beautiful LaTeX file, and I couldn't tell you how to recompile it (if I were to try, I'd probably get an LLM to literally translate it to LaTeX).
I want my life to have as little maintenance as possible, and making my own software for everything isn't always compatible with that.
[0]: A rewrite of a NETFX application in Rust, simply because the 20 minute installation time irked me: https://github.com/bevan-philip/wlan-optimizer
That is, the idea that a non-expert might create interesting software in an authoring environment with good, well-thought-out building blocks and easy-to-grasp metaphors, shorn of layers of accidental or over-engineered complexity.
In this vision software still requires careful logical thinking, but it makes it much less cumbersome to translate that thinking into running code, with no tooling and build system nightmares.
Instead, we've invented such powerful models that they can regurgitate and recombine complex incantations on our behalf. The complexity is still there, though, and it's still inscrutable to non-experts.
But maybe they can help us eliminate some of it?
I think that path is still possible, and it may even nicely complement the LLM world, where LLMs help generate software that individual humans can still easily comprehend and manually modify.
To me, it isn't a matter of if, and the matter of when is also very clearly in "at most 10 years, probably much, much earlier", given that I have relatives already doing this without knowing how to code.
This is a future of computing I am absolutely in love with, and is so incredibly empowering!
We probably won't end there due to how lazy most of us are, but it's certainly something to consider
I'm excited that the weird grey-zone of excel sheets with business critical logic is likely going to disappear as LLMs slowly make the logic driving those too complex to be comprehended and managed and those get foisted off onto actual engineering resources. It'll be painful but probably for the best... but for actual tools people need to use day-to-day I think the assurance that the tool will work has a lot more value than the AI hype has comprehended.
Oddly enough, Google’s LLM is the only one that has been answering my questions well on a research project these last weeks. I’m getting information from scanned text files that exist on the internet but were never adequately OCRed by other LLM companies (i.e. both OCRed at all, and moreover OCRed as the specific language in question that picks up all the diacritics). Google search results may be disappointing and polluted for years, but the company is still offering a useful product in another tab of its interface.
Everyone having their own hyperspecific apps or even different UIs/visualization in the same app
The whole idea of an application becomes a much more fluid thing
If your app is built with a dynamic language why not let users re-write the code themself and add whole new features
Arguably LLMs take us further away from that than we've ever been. All they do is automate copying and pasting in shit from StackOverflow.
We were closer to everyone being able to learn how to program computers in the mid-80s when everyone had one and they started up with a BASIC prompt.
For CRUD apps, the API spec and UI mockups -- or even a photo of how it looks on the already coded platform -- would go a long way. That's exactly the kind of well defined task work LLMs do well with. It should be possible to automate a lot of the equivalence testing too.
Is there still an excuse for "maybe we'll add Android someday" or "not enough Mac/Linux users"? And is there still a justification for not building those less-used flows like password reset into the iOS app instead of throwing up random WebViews?
For those apps that do have non-trivial logic on device, LLMs have shown a lot of promise at rewriting to cross-compiling-is-easy languages like Go or Rust.
My original spicy take is: why learn SwiftUI at all at this point? It's a skill that, for most tasks, falls into the same kind of bucket as "learning Microsoft Word really, really well". I appreciate people who take the time to do that, but the outcomes are within millimeters of each other whether or not we do that.
I don't think that's true of programming generally. But I think there are languages now where the rationale in specializing in them has gotten, hrm, more complicated.
Over the years I've replaced 90% of the plugins I used when I started. Plus I get a nice outlet from any pesky NIH symptoms.
In all honesty, when you start up emacs for the first time with a blank config, it looks terrible. But then you start building it up with plugins and adding code to support your own quirky workflows and slowly it becomes too powerful in your life to ignore. I have not been able to drop it for 13 straight years. With AI taking over the development experience, emacs and neovim have only become even better, because now you can get AI to bake your custom workflows into the config for you.
Emacs/neovim should be the gold standard for all workflow tools.
I make small config changes every day and its super fun to use my computer this way. I wish everything was configurable like Emacs.
It's not "about" Emacs, it's more about the vibe of personalized software in 2026 to someone who does a lot of Emacs stuff.
Another thing is configuration (which also ties to the previous statement). You have to be able to split the idea of the program (what it aims to do) and your personal preferences. Emacs make that easy by having a framework for user preferences. That makes for an extendable program.
The closest, but not as user friendly is unix and suckless philosophy combined. Small programs, easy to understand, configure, and extend.
Besides being an everything app for you, Emacs is an (unconventional) operating system with weak boundaries between user apps. It makes it easy to modify anything, write new things, or combine two existing ones with very little code, something that e.g. Microsoft could have only dreamed of in Office with its awkward embedding that barely worked. Emacs is one the few survivors of the idea that users should program what they need, which was popular during the personal computing revolution in the 80's. Two others are spreadsheets and BASIC.
Programming turned out to be too complex for the untrained users to handle, but AI makes the idea of custom one-off apps or weird hybrids pretty damn close, that is true in practice. I see a lot of people that vibe code their own little things to get things done. That's precisely what BASIC (often shipped in the stock ROM!) was supposed to be used for.
Most other "knowledge" professions -- by which I mean teaching, programming, some engineering, and the arts -- are even further along into obsolescence. That said, you can still use the knowledge gained in a knowledge profession to convert into a more hands-on profession. We might have a bit longer before humanoid robots destroy all hands-on job opportunities as well. Once that happens, every person will be equally poor and destitute.
edit: typo
Software production is so trivial now that everything is becoming a .emacs file: meaning, each individual living in their own entirely personal, endlessly customizable software cocoon. As the OP says, it's "easier to build your own solution than to install an existing one" - or to learn an existing one.
The other analogy that works here, not by concidence, is Lisp in general. The classic knock against it—one I never agreed with but used to hear all the time—is that Lisp with its macros is so malleable that every programmer ends up turning it into their own private language which no one else can understand.
Then there was Mark Tarver's 2007 piece "The Bipolar Lisp Programmer" which had much discussion over the years (https://hn.algolia.com/?query=comments%3E0%20The%20Bipolar%2...). For example:
The phrase 'throw-away design' is absolutely made for the BBM* and it comes from the Lisp community. Lisp allows you to just chuck things off so easily, and it is easy to take this for granted. I saw this 10 years ago when looking for a GUI to my Lisp [...] No problem, there were 9 different offerings. The trouble was that none of the 9 were properly documented and none were bug free. Basically each person had implemented his own solution and it worked for him so that was fine. This is a BBM attitude; it works for me and I understand it. It is also the product of not needing or wanting anybody else's help to do something.
Sounds pretty 2026, no? He goes on:
Now in contrast, the C/C++ approach is quite different. It's so damn hard to do anything with tweezers and glue that anything significant you do will be a real achievement. You want to document it. Also you're liable to need help in any C project of significant size; so you're liable to be social and work with others. You need to, just to get somewhere.
And all that, from the point of view of an employer, is attractive. Ten people who communicate, document things properly and work together are preferable to one BBM hacking Lisp who can only be replaced by another BBM (if you can find one)
By BBM he means "brilliant bipolar mind" - I won't get into how he connects these things or whether fairly or not, but it's interesting how mental illness comes up, given how the phrase "AI psychosis", in both ironic and unironic variants, is so popular right now.
The other clearly emerging trend is the flip side of this shift: as production becomes the easy part now, consumption becomes the hard part, and sharing software becomes a real problem. This is why the Emacs analogy is so good. A .emacs file is as personal as a fingerprint. You might copy snippets from elsewhere into your .emacs file, but you'd never just use another person's - (besides maybe as a way to get started as a noob).
The more customized these things get, the harder it is for anyone else to understand them, or to want to understand them, and this distinction isn't important. It isn't just the cognitive cost of understanding the innards of someone else's cocoon—it's also uncomfortable, like wearing someone else's clothes. One could even say it smells strange.
[editing - bear with me...]
> monospaced and thus fatiguing to read.
Monospaced text is fine. I don't see how people who read code (and code comments) all day care that strongly about this. Plaintext is king
And why did you author them in LaTeX if you think reading in monospace plaintext is fine for everyone?
But the beauty of this moment is that if you want a really good SwiftUI monospaced Markdown reader, you can have it before dinner. This is exactly what I'm talking about. You have an idiosyncratic personal preference, and it's now reasonable to expect software to shrink-wrap around that preference.
Legacy decisions as a remnant from a time when taking more space on paper cost pages and therefore resources, remaining as a default from centuries of inertia in how text is printed?
But seriously: you do you. There are people who code in proportional typefaces and they're as baffling to me as you are right now. Let a thousand Markdown viewers bloom.
The legacy is proportional, at least in Latin script and its ancestors. Handwriting was proportional, of course, and so was Gutenberg's printing press. Books and newspapers have virtually always been printed in proportional type.
In Chinese and Japanese, monospace is legacy in both handwriting and print... and also still universally used today. All Chinese and Japanese text is monospaced by default. Billions of people are getting by just fine reading monospaced prose.
I don't really know where this conception that monospaced is somehow objectively harder to read is coming from. Actually, this is the first I've ever heard of the complaint. I can't help but wonder if you've been subjected to some very bad monospaced fonts in prose or something.
The "0% product hunt, 100% show and tell" bit is one of the benefits of an ecosystem with painfully high upfront entry costs.
Does anyone know of an active forum of any kind (discord, reddit, phpbb, mailing list, whatever) for people who are building personal applications like this for love of the game, which takes hardline stances about desirable vs undesirable motives and behaviors, and enforces high entry/participation costs in exchange for unusually low quantities of transient grifters and self-interested status seeking by day-old accounts?
The reason people who like emacs write their one-off program in emacs is that it is an extraordinarily introspectable and debuggable programming environment. There is no "code, compile, run" loop - you just write code against the live running environment. Devoid of that fast feedback loop, writing code just isn't as much fun.
But...I like MDV.
"Content creation for an audience of one" is really the revolutionary change that is happening right now because of AI. Disposable apps, disposable books, disposable movies, disposable music. Things that are made for a single person, used once or a handful of times and then thrown away. The entire economic model of content creation and distribution is going to explode in the next 3 or 4 years, and very few people are prepared for it.
> The entire economic model of content creation and distribution is going to explode in the next 3 or 4 years
I think this is also inherently self-contradictory. What's the point of distributing content made for one? This gets into the same fallacy that people engage in w.r.t. "applications for one" displacing software developers. Yes, LLMs can pump out buggy software that suits one person's needs, and it doesn't need to be reliable enough to deploy at scale. It serves real utility here, because there was a gap between "the value of such software" and "what software developers are willing to work for", which meant that this software wasn't being created because there wasn't economic value in it. But then, how does one suppose software that has no economic value is going to replace all the professional software developers who were being paid to produce software that has economic value? LLMs filled a gap software developers weren't being paid to do, but given that they were not paid to do it, their jobs are not contingent on the existence of this niche. It simply doesn't follow that being able to produce content with zero economic value, whether that's applications or content for one, will cause an 'explosion' in the existing economic models.
If this is the starting thought, I don't know how you wrap back around to publishing and advertising the generated code.
Either you create the best possible mac markdown viewer and should share it as that, orthogonal to any statement of AI use. Or you're just adding to the noise of tools available online. Where other people should ignore your work, and go slopcode their own markdown viewer.