Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

We are beyond fucked in terms of any effort to build local-first software.

Notably:

1. product people and interaction designers don't understand or care about the difference, which isn't strictly their fault, because

2. users don't understand (heck some even want a team of engineers making sure the DB doesn't drop their writes all day every day) and only care when the software can reasonably be used offline anyway, which means

3. standards, protocols, and platforms have baked in dependence on servers (oauth, tls, ip, mobile device native apis, the goddamned entire browser, etc.) for example, you can't do anything on iOS in the background unless you have a server sending the devices silent push notifications every 5 seconds ... also

4. true offline with anything more than 1 client is a distributed system and instantly hard, so

5. the entire tech community is not trained to build offline applications, we're trained to glue react UIs onto CRUD backends because thats how you 10x your SAAS revenue in valuation over 3 years.

I am lucky enough to have worked on a few products where we did have to care about offline and it still ended up being relegated to the realm of "obscure edge case", for all intents and purposes. So you end up continually justifying why you're spending resources on supporting these weirdos who don't have reliable internet connections.

Sigh.

/rant

These days, I do honestly think that some things just need to be online. The internet is meant to be a globally addressable network. You're not supposed to have these little islands of accidentally private because-we-ran-out-of-addresses-and-hacked-the-shit-out-of-the-protocol-(NAT) networks. You're not supposed to be afraid of someone sending port 22 on your laptop an ssh handshake because the crypto is good. The whole IP world is supposed to be zero trust. We dropped IPv6 scopes because they were a crazy idea for a different world where we all ran federated networks and whatever.

The real point of "local first" in our modern world is about data ownership. If we can do anything as a community to help move the needle and get to a better place, it's building applications where clients truly own the data and the server just provides convenience and redundancy. Give clients cryptographically strong identities. Use webauthn. Sign requests. Trust users with their own data. Help users be sovereign and we solve lots of privacy and centralization issues all at once.

/soapbox



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: