AI doesn't substitute developers, it empowers them 🚀
And not only professional developers. Suddenly it's easier to implement your personal software, even if you have 0 knowledge of programming
We are entering an era of personal software, for everyone 👇
How I learned to code
This morning I heard a quote by Brandon Sanderson on the Tim Ferris podcast:
“I heard that your first five books are generally terrible. I said, ‘Well, that’s good. I don’t have to be good yet.’ It took a lot of pressure off me. I said, ‘I’m going to write six, and the first five I’m not going to send out to any publishers.'”
Brandon wrote 5 books for himself. For practice. Hours and hours of work, knowing beforehand that he was going to throw away the final result, but that the lessons learned will stick.
Software development has been the same for me.
I have a graveyard of projects that went nowhere. Apps that took ages to implement, and that I never used once afterward.
But I put in the reps. That was all practice.
When I then work on professional software there is no doubt or hesitation.
I have done it before, thousands of times in different formats.
Missing features
The number 1 reasons driving all my personal software: Missing features.
It doesn't need to be innovative (it never is).
It's mostly a single use-case missing in other apps, that I want in my workflow.
This single spark starts a journey of hours. When I emerge on the other side I realize it was all about the excitement of implementing something, more than the final result.
It was for me after all. No pressure, all flow.
And over time skills compound.
AI as an assistant
AI makes the process of (personal) exploration even faster. And also accessible to non-developers:
- Developers: leverage AI to fix gap in your knowledge as you explore a new technology
- Non-developers: instruct AI to implement an app specific for you exact problem
This is the catalyst that will spark a surge of Personal Software 🪄
LLMs will not become the all-in-one apps. Instead, they become the tool that makes many small personal apps available to everyone.
Local software
This all leads to the idea of local software, aka local-first.
Personal software is small scale, and it should not require a huge cloud provider for hosting.
I want to shorten the time from problem, idea, and (app) solution. I don't want to send my private data in some cloud somewhere for my own personal app. And I want the app to be fast and work offline.
That's why local-first is inevitable 🙌
I have been exploring local-only for a while, and it works great (see Local-only calories tracker app or DexieJs: Reactive local state in React).
Lately I moved to full local-first by building my own sync engine. And it works. Great.
I implemented a sync engine for the web ⚡️ End to end, from reactive and fast client storage to server sync with web workers, socket, and CRDT Article on how it all works coming soon 🔜
For a more extensive overview of how the future of local-first + personal software looks like, highly suggested the video below:
I am working on a complete overview article on how to build a sync engine for the web. Coming soon 🔜
Thinking about joining the Effect Days 2025? (You should!)
Here is a discount link for your ticket!
See you next 👋