Live data from Hacker News

Why haven't local-first apps become popular?

marcobambini.substack.com

431–440 of 494 posts

Re: Why haven't local-first apps become popular?

#431
post #362

We have been building a local-first browser app (PWA) for personal finance, based on double-entry accounting. https://finbodhi.com/ It's not always offline. We do use online services like firebase for auth and subscription, and some service to fetch commodity prices etc, but rest of the data is stored in browser storage (sqlite) and backed to local disk and dropbox. We also syncs data across devices, always encryptin…

If you go on step further with double-entry accounting you will need to book the "stack" to the "journal" as required by the tax office. I do not see how this should work with you local-first approach, because you cannot really guarantee the correct order. If something is in the "journal" it has to be "canceled", if the action was wrong beforehand. This is an additional booking step and not a "revert" of the previous action. No conflict resolution will help you here. Especially the area of double-entry accounting, is something where I never would choose such an local-first/sync approach. Local-first in the classic desktop app single source of thruth sense, sure, but not this way.

Re: Why haven't local-first apps become popular?

#432

Earlier quoted context omitted.

That's an UX issue with git, not really what's being discussed.

I don’t agree at all. Merging conflicts correctly is often incredibly hard and requires judgement and understanding of semantics and ramifications that are difficult for even skilled developers.

So in other words it requires the skills you need to make an edit in the first place.

Re: Why haven't local-first apps become popular?

#433

Earlier quoted context omitted.

> But since the entire world economy has turned to purely optimizing for control and profit, there's just no good reason to not screw people over as much and as often as possible, what'll they do ? I worked on a somewhat well-known (at the time) product that used on-site hosting. One of our biggest customer complaints was that we didn’t have a cloud hosted option. Many companies didn’t want to self-host. They’d happi…

I can't imagine wanting to self-host something like Jira, GitHub, or some wiki product unless there's a very big financial cost difference that more than offsets my time and hardware investment. Otherwise it seems like I'm just spending time and effort achieving the exact same result.

I think Gitea is superior to Github to organize your repos. I deploy it in the corp I work for too and everyone is very happy with it. It is blazingly fast running on a small virtual machine.

Granted, this is a business that needs on-premise infrastructure anyway because we have inhouse production. So we have a domain controller that can be used for everything auth. We use a combination of that and Entra (shitty name).

I wouldn't want to host Jira because I don't like to work with it. Our wiki is self-hosted as well.

Sadly, we also buy into MS infrastructure and use SharePoint and co. It is soo incredibly slow to work with...

While you can be cloud only, it isn't an environment I would like to work in. Local alternatives are almost maintenance free these days and the costs are so much less for a faster service.

Re: Why haven't local-first apps become popular?

#434
post #356

Earlier quoted context omitted.

What are some examples of popular apps that do this which aren't web apps, and could feasibly work offline? Every native app I use is local-first. Eg. Photoshop, Blender, Figma, Xcode, Zed, Kitty, Affinity Photo/Designer, Notes, Music, Calendar, Messenger, Maps, Email, etc.

Notion is a big one. I tried it out but didn't end up using it because it doesn't work offline. (I know you said not web apps, but it does have a desktop version)

Is the desktop version more than just a webview? :P

Re: Why haven't local-first apps become popular?

#435

Local-first was the first kind of app. Way up into the 2000s, you'd use your local excel/word/etc, and the sync mechanism was calling your file annual_accounts_final_v3_amend_v5_final(3).xls But also nowadays you want to have information from other computers. Everything from shared calendars to the weather, or a social media entry. There's so much more you can do with internet access, you need to be able to access re…

> Local-first was the first kind of app. Way up into the 2000s, you'd use your local excel/word/etc, and the sync mechanism was calling your file annual_accounts_final_v3_amend_v5_final(3).xls To be precise, these apps where not local-_first_, they where local-_only_. Local-first implies that the app first and foremost works locally, but also that it, secondly, is capable of working online and non-locally (usually wi…

That sync mechanism was called save to floppy and hand it to whoever you want to share your changes with.

Re: Why haven't local-first apps become popular?

#436
I have a note keeping app I have been building for well over a decade at this point. It's never going to release and it's chock full of features only I seem to care about. No one I've shown it to has cared.

Recently I went to the grocery store and presented with no signal had to try to recall my grocery list from memory. In all my years using my own app I think this is the first time I'd ever wished it were "local first"

Re: Why haven't local-first apps become popular?

#437

Earlier quoted context omitted.

>Example: two people starting to work on the same task in an offline-enabled task tracker. Wouldn't this just mean both people are working on it? I agree that this means humans intervening.. It sounds like there was a comms breakdown. But rather than doing a first-in-best-dressed, it sounds like accurately recording that both users are in fact working on the same thing is the best option since it surfaces that interv…

Sure. But then you need to notify users when they come back online that there's a conflict, so they can resolve what to do. You likely need to have a report on the frequency of such occasions for the managers, and so on. These kinds of conflicts simply can not be solved by CRDTs or any other automated process. The application has to be designed around that. > In principle, local-first to me means each instance (and t…

I’ve been experimenting with this, it’s a very interesting problem space!

https://github.com/evelant/synchrotron

Idea is to sync business logic calls instead of state. Let business logic resolve all conflicts client side. Logical clocks give consistent ordering. RLS gives permissions and access control. No dedicated conflict resolution logic necessary but still guarantees semantic consistency and maximally preserves user intentions. That’s the idea at least, requires more thought and hacking.

Re: Why haven't local-first apps become popular?

#438
Such a weird and absurd conversation to be having from the PoV of someone who started using computers a long time ago.

Offline first apps 'sound like the future'? I agree they're far better than the trash we have now, but it's not like we can't build them now.

We should be building them now. The web was never meant to be an app delivery platform :(

Re: Why haven't local-first apps become popular?

#440

Earlier quoted context omitted.

I can't imagine wanting to self-host something like Jira, GitHub, or some wiki product unless there's a very big financial cost difference that more than offsets my time and hardware investment. Otherwise it seems like I'm just spending time and effort achieving the exact same result.

I think Gitea is superior to Github to organize your repos. I deploy it in the corp I work for too and everyone is very happy with it. It is blazingly fast running on a small virtual machine. Granted, this is a business that needs on-premise infrastructure anyway because we have inhouse production. So we have a domain controller that can be used for everything auth. We use a combination of that and Entra (shitty name…

For me it's just a question of where I would want to invest my org's time.

For example: how much time do I want us to spend looking after a task/ticketing system? About zero. How much time do I want my org to invest in DR planning for our self-hosted wiki? About zero.

So unless there's a convincing difference (cost, features, etc), cloud-hosted SaaS would be my choice there.

The answers also probably change a lot based on how the company operates. Would I have been comfortable with a self-hosted wiki when I worked at Facebook and we had a pretty damn good team providing DBs as a service? Yes. Would I have wanted to do the same when I was the sole infra person in my group at another job? No.

Post reply on HN