Local-First Software Is Easier to Scale
22 points by elijahpotter
22 points by elijahpotter
FYI: when I go to your article and then hit 'back' to go back here I get a flash 500 internal server error.
It's a bit unclear reading the article what your actual architecture is. Does the software run on the client, or on the edge? I understand local and edge to be different. Maybe my terminology is wrong. The edge, to me, usually means running close to the client on some CDN.
It is indeed local to the client, the usage of "edge" is quite confusing since edge has an established meaning already.
BTW elijah - on https://writewithharper.com/ under Where Did the Name Harper Come From?, it says "See this blog post." but none of it is linked to anything. I presume that means to link to https://elijahpotter.dev/articles/naming-harper
Cool app. Don't think local first conveys any particular advantage here?
You can handle HN front page traffic surge on a 5$ server with an embedded database like sqlite. Even more so with the JVM and virtual thread.
It provides an advantage in applications that take a nontrivial amount of compute. Sure, you can host a website on a $5 VPS, but you can't do what we do with that many users with that amount of traffic on a machine like that.
I think the big caveat there is if that nontrivial amount of compute is completely isolated data set (users have data that is entirely unique to them, spellcheck is the perfect example of this). The minute it's over a shared or partially shared data set (even more so if the data set is large) the value of client side compute diminished considerably and local first is not going to help you scale.
Can confirm. I make an iOS app for tracking anything called Reflect and it’s all local to your device (unless you opt into iCloud backup) and so it’s infinitely horizontally scalable and my customers cost me nothing. Local first is great