For example, I want to make:
- A mini OS on top of SeL4
- A UI framework based on SolidJS, for native apps, in rust.
- My own photo manager (which can do backups & sync across all my devices). And a gallery to share photos with friends
- A local first data store, built on top of CRDTs
- My own programming language
And lots more.
Each of these projects on their own would take months of time. If LLMs can speed up development, that's great! I don't care if nobody else uses what I make. I want a personal computer full of my own software.
For example, the photo backup system I want to make will let me manage my ~400gb photo library. I want my library backed up on a couple devices, running linux and freebsd. I want my mac and iphone to have a local mirror of all the favorited photos, and when I'm at home, I want to be able to browse all photos from those devices by streaming them over the local network. I want native macos & ios app interfaces to view and manage all that.
I don't know any existing software that meets my requirements. I don't think any such software exists. Apple, Dropbox and Google will solve this problem for me if I store all my photos in their cloud and pay them an ongoing subscription for the privilege. I'd much rather make something myself, and back up my photos on my own hard drives.
Making something like this is simple enough, but very time consuming. If claude can take the drudgery out of it, well, I think that's just delightful.
You can accomplish most of that by installing Syncthing.
But the objection is that you’re not really building anything new even if you think it’s a new idea. By your definition you’re building for yourself and not sharing…so what good are your little projects. Reading your original list it just seems like you want to build and run software without having to do any research, even if a solution already exists.
At some point developers seem to forget that making stuff is fun. The fact SQLite and GCC exist doesn't mean you're banned from making a database or a C compiler.
You're allowed to make stuff just because.
What an incredibly blinkered view. You think there's no value at all in making software unless your program solves a truly novel problem, and does so for millions of users?
There's so much joy that can be found in simple, disposable acts of creativity. I don't need the world to applaud when I cook an omelette, make a table out of wood or play a piece on the piano. Why would I need that from the software I make? Just because you can buy a table from IKEA doesn't mean its not fun to make one yourself. Just because someone on spotify played it better doesn't mean there's no joy in playing music.
Why would I hesitate to make my ideal photo library program, just because other programs exist? What a sad, self-limiting rule.
Does that make you mad? Why does other people enjoying themselves with LLMs make you mad?
AI is seen as a way out of drudgery but you're just trading one problem for another.
It's actually quite similar to buying the services of a programmer off Upwork to build something for me, only with LLMs it's way cheaper and faster, with a shorter feedback loop.
If I spend a weekend standing up a self-hosted media system or something, I doubt anyone would dispute that's a fun building exercise.
If I do the same thing but use an LLM to build out instead, somehow it's not.
Yeah it's not the same kind of building as what we might have done pre-LLM but it need not be any less satisfying or rewarding.
The real disconnect seems to be the classic dichotomy: people who see coding as the point and the purpose, vs people who just want an outcome.
And that's fine!
I'm just don't understand why the one camp feels the need to deride the other.
I don't enjoy CSS, so I delegate that to an LLM. Just like I don't like writing assembly by hand, so I delegate that to a compiler. So what?
Take woodworking for example. When I build a kitchen cabinet, I can get lumber that's already smooth and treated, I can buy drawer tracks, I can use power tools instead of a handsaw and a screwdriver, I can use a pocket hole jig to make joints easier. I still have to do more planning and assembling than with the Ikea cabinet, which also takes more work than having a contractor do everything for me.
I'm doing it my way because it's fun for me. Other people might enjoy other parts of the process - or different things altogether.
There's a whole spectrum between doing everything from scratch and paying someone to have it done for you.
What do you think architects do? Or interior designers? Or civil engineers?
Architecture certainly isn't building, and neither is interior design. Civil engineers calculate and specify the loads in excruciating detail, because if they didn't, people would die.
The biggest value proposition of an LLM is being able to focus on the truly high-value activities while allowing the machine take care of much of that reification.
That you think architecture or interior design isn't building tells you prefer to downplay or devalue any work that isn't hands on construction. It's an interesting perspective, but it's one I'll never be able to understand or agree with.
For someone who's been around the block a few times, there's little new under the sun. Coming up with good architecture for a problem space and having the LLM fill in the details is incredibly effective as a pattern.
That said, tbh I'm not sure why we keep exchanging messages. Your other comment about coding with AI assistance as being akin to buying a statue tells me you have either never coded with an agent, and so think it's a simple matter of saying "build me a to-do app" and then calling it a day, or you're experienced with these tools and deliberately misrepresenting the process.
If it's the former, then we don't share enough understanding to have a healthy conversation, and if it's the latter then there's little point in arguing with someone who insists in doing so in bad faith.
- I want native desktop apps
- I want P2P device sync. My laptop and my home server should be peers. Just with different rules for which photos are stored locally on each device.
- I want per-device storage rules. (Eg, "I want all my favorited photos, and recent photos up to 50gb on my laptop").
- Backups. I want to be able to plug in an external hard drive and backup my photos (with some rules). Then disconnect the drive and see in the metadata for those photos that I have a copy of the full res RAW on that drive.
But even if other programs exist, its still fun to make something myself. Authoring your own software gives you a different relationship with the computer. You're less of a consumer. You can change or tweak features on a whim. Psychologically, its kind of like being in your own home vs being in a hotel room. If you hate the furniture at home, you can move it or change it. You can decorate however you like. In a hotel, you're affected by your environment but you have no agency over it. I think its much more healthy to create.
But I’m optimising for the feeling of joy and agency over my tools. I also want to experiment with p2p / local first data structures in a real app. I could fork immich and rewrite the data model. But that all seems much less fun.
At the end of the day, I’m not doing this for other people. I’m doing this for me. Learning dart so I can hack on someone else’s code sounds like a pain in the butt. Not like something I’d want to do for fun on the weekend.
Working on someone else’s code seems like a strange default. You and others have jumped on me for wanting to make my own thing instead of using - or forking - someone else’s software. Can you help me understand why? Why would that be the default for a fun hobby project? I’m confused.
Back to 1988.
Think I have a fair bit of experience.
Is it not engineering anymore even if you micromanage and relegate the machine to a better typist, following patterns and doing research around?
Oh get off your high horse.
You may as well say "If the compiler compiles your code, you achieved nothing". Its the same argument.
I love meaty algorithmic challenges. And I enjoy the design challenge of making a piece of software. But I don't write CSS for fun. Debugging styling issues on mobile? I hate it.
LLMs let me work on the parts that I find enjoyable and satisfying. Like UI design, or figuring out the data model. And then I can delegate the parts I don't like to Claude. It seems very happy to bang away at CSS.
That's a great deal. If you want to personally write every line of code, good for you. But don't police my leisure projects.
There are a ton of opportunities available right now to make new things. And make them better, more customizable, and more sovereign.
To the replies: be the change you want to see in the world, guys. That may be trite but focusing only on the negative will just make your own life shitty.
Is that the same as buying a computer program from anthropic?
I have a friend who's an architect. Sometimes we're in the city and he says "Oh see that building? Its one of mine." He didn't lay the concrete, or do the wiring or anything. Should he not be proud, because a construction company built each floor? Does it not count? Does his contribution not matter?
Since you said you want to make those things that you list, I assume none of these things have been built yet. If so, I would encourage you to consider how excited you will be to constantly maintain those things you build. But even if the maintainence cycle won't be as exciting, since you are the sole user you have the advantage of being able to proceed at a leisurely pace even while doing maintainence work.
In a professional setting, the dopamine hit of being able to build something quickly that works in an area that you have little to no knowledge in makes you more dependent on the AI in the maintaince cycle as you want to chase that dopamine high by maintaining the same development speed. This in turn leads to a bigger burnout crash after that peak dopamine hit. Maintainence is a phase of diminishing returns even without AI, but when your coding agents are introducing new bugs at record pace with their bugfixes with no new features to write home about you are in a special place in Hell.
I'm all for using AI to build ambitious projects. I have yet to see a person/company/organization continuously release huge software endeavours in a stable professional manner day in and day out with a coding agent harem in tow.
If something like the Ladybird browser, or any browser that is "built by scratch", achieved Chrome parity in six months and consistently maintained the same level of stability with continuous releases then I would see that as proof that this approach has become professionaly sustainable.
The reason people are getting away with so much using AI is because of the open secret in most enterprise engineering practices: the customer cares more about the response time for fixes they report than they do about overall or longterm product quality.
Why should I consider that?
Its funny how the default with programming is that the piece of software exists forever. I've been learning to play the piano lately. The default with piano is that every piece is ephemeral. If I don't go out of my way to record something I play, after the notes have run out, the piece is gone forever. The same is true of cooking - except you can't record a meal at all. Once you eat it, its gone. Lots of art forms are like this - theatre. Dance. The circus. They're no less beautiful for being ephemeral.
Why do we assume software has to be maintained indefinitely? Why even think about that right now? Maybe I'll work on these projects for awhile, maintain them as long as I want, and then in a few years someone will make something way better and I'll use that instead? Would that make the effort I put in pointless? I don't think so. I think it would make programming more like playing the piano. How lovely.
> I'm all for using AI to build ambitious projects. I have yet to see a person/company/organization continuously release huge software endeavours in a stable professional manner day in and day out with a coding agent harem in tow.
Yes, I've burned through enough claude tokens now that I find myself agreeing with you. I wouldn't use an LLM to make and maintain google chrome. But I wasn't planning on doing that anyway. There are also a lot more options than (1) write everything yourself and (2) vibe code the whole thing.
LLMs are good at small-to-medium scope tasks right now. Fine. I'll use them - or not use them - with their limitations in mind.
By all means don't consider it if you don't plan on using them for a considerable amount of time, but there's a lot of of distance between a decent amount of time and "forever". You listed a mini OS and a UI toolkit among your projects, I hope you can forgive me for assuming you were planning to use those things to build more things, which would in turn often entail improving and maintaining these building blocks while they are actively used.
Adding the features I have a need for over time is the fun part as far as I’m concerned.
I actually want less software for myself. Less things to maintain. I've become a "digital minimalist" in that I use very few software, only ones maintained by others who can afford and are willing to keep them working.
Some people find joy in home cooked meals. To others, wealth is never needing to cook again.
To each their own.
As for maintenance, I think LLMs are actually very well suited for small maintenance tasks. The expensive part of programming is loading and unloading context into my head. "Oh dear, what is all this code doing? Oh no, coffeescript? And some ancient version of express JS? How does any of this work?". LLMs can bomb in, fix a compilation error and bomb out. "This program isn't compiling any more on macos X.Y.Z. Read the patch notes. Figure out why and fix the problem." Perfect.
Think about it: everyone has characterized AI slop, as slop. Which means that we negatively value it in terms of originality. Combine that with the fact that there will be a lot of it, this means that original work will 1. stand out or be very distinct from slop, and 2. have its value amplified as a result of this polarization.
basically, we value originality more AND are able to identify it more readily.
related is also the fact that originality will literally be valuable as training data for future models
Also there have been dozens of HN submissions and comments where the poster didn't even bother to remove the em dashes. Most people just don't care. The people who continue to post like this wouldn't have been as visible had they not discovered AI and pounced on it, but they were always there. The idea of posting with an AI voice, em-dashes and all, would likely have still appealed to them if you'd asked 5-10 years ago. Nowadays it takes hardly any energy for them to have a persistent voice.
Slop has always been around. AI has cheapened its creation.
If something is able to generate things with soul and true originality... we're talking about something incredible, a new intelligent species potentially
think about how in music, when an artist comes out with something original and awesome, and then everyone starts copying it and creating their own derivative works, like Jimi Hendrix or something.
Did Hendrix become useless? Did everyone end up thinking he sucks or something? No, he is even more revered, as the originator of a new type of sound that probably created multiple genres
The same thing applies here. Originality will be valued and even empowered as extrapolation and development off of it can increase in speed and quality in the case you mention
True, but some nuance is that a LOT of artist/creative types lean exclusively on the mechanical skill needed to create, without anything really much to say. They also very frequently copy other's styles, etc.
I'm not defending AI pumping out crap, but this also shows a lot of folks don't have much to offer beyond the mechanical aspects and we shouldn't glorify churning out stuff by hand as high art either.