Can the Local-First Software Movement Free Us from the Cloud Prison?

Can the Local-First Software Movement Free Us from the Cloud Prison?

The Local-First Software Movement: Revolutionizing the Cloud

A few years ago, a phrase entered the coding lexicon, intriguing engineers on the discussion forum Hacker News. The phrase was “local-first software,” and it quickly gained attention for its potential to solve a problem that many felt – the brokenness of the software they were writing. This phrase had an artisanal, farm-to-table sort of ring, at once familiar and promising something new.

The local-first software movement emerged as a response to the dominance of cloud-based computing. While the cloud offers accessibility and collaboration across devices, it comes with limitations and drawbacks. The cloud is essentially someone else’s computer, controlled by corporations, who either monetize user data or charge fees for access. The local-first manifesto proposed a third way – keeping the benefits of the cloud, but making software essentially cloudless. It prioritizes personal computers and allows users to collaborate without relying on centralized servers.

To build local-first software, developers needed to rethink how data is structured and stored. The development of conflict-free replicated data types (CRDTs) played a crucial role. CRDTs, co-developed by computer theorist Marc Shapiro, enable multiple people to collaborate on a file and automatically resolve conflicts in sensible ways. With CRDTs, the order of changes doesn’t matter, and each replica snaps to a state identical to other replicas. The algorithms behind CRDTs open up new possibilities for more efficient and collaborative software.

The implementation of local-first software has several advantages. Startups and independent developers can bypass the need for VC funding and pursue more interesting apps. They can also take advantage of hardware improvements, as local-first apps run all the code on the user’s device. This eliminates the performance limitations imposed by reliance on centralized servers. To developers, the opposing trends of accelerating machines and stagnant load times seem absurd. The local-first approach offers a more efficient and empowering way to build software.

The cloud, once seen as heavenly, has also faced criticism for its downsides. Platform capitalism, driven by business logic, often devolves into what journalist Cory Doctorow calls “enshittification.” Platforms start by providing value to users but gradually prioritize advertisers and profit-seeking strategies, resulting in a decline in user experience and convenience. Local-first software offers a different path, challenging the prevailing industry trends and focusing on creating genuinely good software.

Martin Kleppmann, the co-author of the local-first manifesto, is at the forefront of this movement. He has dedicated his research to exploring new approaches to programming, uncovering strange atomic arrangements in data structures that enable different types of applications. His open-source implementation of CRDTs, called Automerge, has gained attention and started attracting developers looking to build local-first apps.

Local-first software has gained traction beyond the developer community. Companies like The Washington Post and Apple’s Notes app have incorporated CRDTs into their applications. Developers at the Strange Loop conference also discussed the possibilities of local-first software, envisioning local-first versions of popular collaborative tools like Slack, Google Docs, and Photoshop. The potential for private, end-to-end encryption and a better relationship with our data is a compelling draw.

The local-first movement is not without challenges. It requires a shift in mentality and adopting new approaches, which can be a barrier for many accustomed to the convenience of cloud-based solutions. However, developers like Brooklyn Zelenka, co-founder of Fission, see the potential and believe it is an exciting time to explore local-first. As the movement grows, it may attract more talent and resources, paving the way for a future where local-first software becomes the norm rather than the exception.

The local-first software movement is not about rejecting technology or smashing all cloud servers. Instead, it aims to carve out something better, a more efficient and empowering way of using software. Martin Kleppmann and his collaborators are diligently working to sharpen their tools, and the local-first community continues to grow. As the tech giants stumble and platforms face increasing criticism, the local-first approach offers a timely and promising alternative. It’s a quiet revolution, one that seeks to reclaim the power of software for individuals and foster a better digital future.

Sign up for our Longreads newsletter for the best features, ideas, and investigations from WIRED.

Let us know what you think about this article. Submit a letter to the editor at [email protected].