What is localfirst.dev?
We want technology that keeps working, in the face of network failures, company acquisitions and other disruptions.
There is a cultural desire underneath all of this to have services that do not spy on you, that are resilient in the face of network or company shutdowns, and that give you back a sense of ownership over the technology you purchased.
The prime example is GitHub: it looks like git, it works like git, but it is just an entry port to the Microsoft universe. It's a Microsoft platform, and their incentives are primarily aligned with increasing shareholder value. There will be a short span of time where users get a win, but eventually the choice will get made for you: it could be price increases, or the software stops working, or some hardware is required. There will be a point where you don't get a say anymore: that's fragile, that's not resilient.
The MacBook is another example. It's great, as the saying goes - everything is well-connected, synced and secure (ish), but if you overstay you welcome and keep the laptop for longer than Apple maintains OS patches, it just becomes e-waste. We'd like to be able to use things indefinitely, until they're really obsolete.
We are by no means the first to think this way, and look to others for inspiration and guidance. If you want a solid and inspiring definition of local-first as a software concept, check out the work and writing of Ink & Switch.
We want software that survives a regional outage.
When AWS had that problem a while ago, their mattresses stopped working and their thermostats got stuck at too high. This is a sign that things have gone too far in one direction.
When it goes down, the lead architect at AWS goes "everything goes down all the time" and everyone accepts that as thought leadership, when in reality, it is, put simply, mad.
The Empire today is the platforms, the cloud providers, the centralised structures. It is all anti-resilience.
We like the tech challenge in all this.
We look back at the Diaspora project from 2010, which was way ahead of its time. They faced the light house problem: who do I talk to to find the other peers in my network? They kind of got stuck because users weren't ready, the market dynamic was different, and the tech was not ready. The thinking was spot on though.
Some things have changed since then: cryptography is "easy" nowadays, to do all of these things. Conflict-free Replicated Data Types (CRDTs) exist now. Blockchain might actually be relevant for this stuff, too. There are projects like Radicle that simplify and push the envelope for distributed, peer-to-peer infrastructure that is resilient, fast and powerful.
If the Diaspora guys were to try again today, they'd have a menu available with tools.