There’s nothing quite like the clarity of losing your job on a friday that forces you to contend with the bigger question; who and what kind of future do you want to build for? For the last year, I’ve been deep in the local-first ecosystem, learning alongside peers and building the infrastructure to power local-first software. Amidst the hype of AI and agent-driven code, I’ve witnessed a quiet hum of folks demanding to take back control, of their data, of their tools and of the role software has in their everyday lives. Local-first is not just a software methodology, it is a philosophical movement. It’s about building software for people in the context of where they’re at.
As the web has progressed over the last few decades, data has become increasingly centralized in the cloud. For the promise of convenience and the freedom to scale, we’ve given cloud providers full reign over our data and our autonomy. You don’t have to look too closely to notice this, just look at the many aws and gcp outages that take entire systems down. More than ever before, we’re at the mercy of a select few companies. With the rise of AI, this is becoming a more alarming reality.
The concentration of power among a handful of key players isn’t just about convenience, it has far reaching effects on how software gets made and what innovations get prioritized. When a select few control our data and infrastructure, the things that get built are no longer determined by user needs or creative potential, they become driven by capital and revenue margins. This model of people over profit feels brittle and uninspired. At the risk of romanticizing the yesteryears of software, some of the best tools were built when profits were not of chief concern. Early email clients, text editors and even spreadsheets were made to solve real world problems for real people.
I’m not advocating that we outright reject the cloud and become barefoot programmers. On the contrary, I think we should leverage the cloud as yet another tool in our arsenal, one that helps us collaborate across a network and back up our data reliably. By focusing on making our apps local-first, we, by extension, focus on solving real-world problems. For one, an app that works offline and enables seamless collaboration mirrors how we interact as humans in the world. Technology can thus adapt to and work for us rather than us being forced to adapt to its idiosyncrasies. Imagine a tool that enables a robust emergency response coordination during a natural disaster or an app tracking disease outbreaks in real time. A human centered approach opens the door to tackling problems that matter most to people instead of inventing ones for them to deal with like loading spinners.
The beauty of the local-first movement is that it offers us a roadmap for building software that respects the people who use it. When I first started working in this space, I didn’t set out expecting it to change the way I think about software. But now I’m convinced, this is the future I want to be building for.