I just read a new post by Edmar Ferreira titled:
It’s his take on what we previously called “chat-driven programming”, but perhaps broader.
I thought it was user-focused, but his description too is engineer focused, but more personal. His journey.
Selfish software refers to writing code for yourself without any external customers in mind.
I like the name, I guess.
Perhaps the process of creating software this way we can call “chat-driven programming” and the artifacts that are a result we can call “selfish software”, or what I have previously been calling “disposable software”.
I like the “how to start section” too.
For example, this snippet on the need to re-think the approach:
It can be challenging to jump into selfish software after being accustomed to searching for customers and making projects for profit. I had to rewrite my own workflows and to rethink how I approached work.
The main steps:
- Tune out external noise (e.g. play, get creative, have fun, rather than market-focus)
- Identify personal pain points (e.g. track small user pains all the time)
- Start with small pieces of “disposable software" (e.g. one-off scripts)
- Develop personal software for ongoing use (e.g. larger projects once you have confidence + processes)
- Maintain a playful mindset (e.g. what would make this cooler, do that)
- Scale or don’t scale—it’s your choice (e.g. scale or stay small/personal, and that’s okay)
Nod.
So far, most of the code I have generated feels like “disposable software”, even the stuff I’ve put on webpages and github.
The reason is because I know I can generate it again fast, and probably better.
I strongly believe software (interfaces) are going to be generated on demand.
For example:
Why talk to an LLM when it can generate a custom interface to show you the answer to a question and allow you to play with it.
Agree with the final point, it’s about re-discovering the joy in making/creating.
Selfish software is not about ignoring user needs altogether; it’s about restoring the joy of building by making yourself the user you’re most eager to please.
A nice swing-back from indie-hacking software for the market that was so popular for a decade+.
Building for yourself has never been more accessible—or more fun.
Agreed!
Good piece.
Also see some of Edmar’s substack pieces where he tested some of these ideas: