frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

LocalFirst: You Keep Using That Word

https://www.deobald.ca/essays/2026-01-01-localfirst-you-keep-using-that-word/
50•deobald•1d ago

Comments

B3RTICUS•1d ago
Minimum viable localization
cadamsdotcom•1d ago
Most users seem not to care if their app has amnesia and forgets data it loaded 1 minute ago just because they backgrounded it and came back. Most users don’t care if their data fails to save the in the train tunnel. People don’t complain verbally even if it pisses them off. They just wait for the data to load and shrug and retry after a moment.

Things won’t improve without a grassroots campaign. And it’s trending worse: more and more apps & tools are doing amnesia on purpose because it’s simpler and doesn’t anger the fussy few users for not going far enough..

So what do local-first demanders want?

Is local first when the software does a sync after storing locally? Is it when the local store is the source of truth? Is it offline support? Is it owning your data? Is it automatic resync when the connection/backend come back? Yes; all of the above and more.. and it’s complex and expensive to maintain and doesn’t get a lot of attention.

There needs to be 5 or 6 terms to cover each of the local-first sub-concepts so the discussion can progress..

immibis•1d ago
> This person’s example scenario was migrating an entire GNOME environment from one computer to another. In many cases, I’d like an iCloud-style service for that.

In the distant past we'd copy our whole home folder to a floppy disk and then to another computer. In the slightly less distant past, a USB stick.

born-jre•1d ago
Instead of local first what if we wrote cloud first but cloud part is so easy to run that if you want to run just locally just run small “cloud” locally. My attempt

https://github.com/blue-monads/potatoverse

llmslave2•1d ago
I was gonna comment that Go is a fantastic language for this since it's trivial to package everything up into a single binary that contains everything necessary and has everything you need in its stdlib as well. And low and behold...
cr125rider•1d ago
Excellent name! I love it
theamk•1d ago
Sadly the many "local-first" apps have significant usability problems which mean you got to be _really_ dedicated to ideals to run them.

The P2P is the worst offender.. Who is going to "keep my laptop awake every night just to ensure a p2panda node was available for new users"? Pretty much every P2P needs some sort of centralized support to work.. IPFS needs pinning services, large torrent trackers use out-of-protocol "reputation score" to ensure rarely used files are seeded.

"No spinners" gets super annoying when devices go to sleep or internet is spotty. Am I looking at the latest data? Is it safe to turn off my phone / exit the app, or is still uploading? I dunno, let's give it a minute just in case...

This is could be all tolerable if there were real advantages.. but the main argument for local-first is "if the company dies, your data is gone". Thats not a good reason! To sane your data, there is no need to suffer "local-first" apps. Use cloud services with good UX and nice mobile device support, but run automated backups... Use Google Drive, but run "rclone" via crontab to ensure you can still access data even if you get banned. Own your email domain, and sync to local maildir. Download your notes hourly. Yes, your workflow would be disrupted if one of the companies die, but at least the data is safe.

IMHO if we want to stop depending on megacorps, the right approach is open data format and export protocols first, and easily hostable cloud second. Kinda like email - BYO domain + IMAP means I can migrate from one hosted provider to another with minimal disruptions.

undeveloper•1d ago
> "No spinners" gets super annoying when devices go to sleep or internet is spotty. Am I looking at the latest data? Is it safe to turn off my phone / exit the app, or is still uploading? I dunno, let's give it a minute just in case...

This is easily solvable with any sort of sync button. Granted, you may in fact have to at least in name break "no spinners" (but to my understanding not in practice), and shove one in the top right corner of your app when syncing / uploading / downloading is occuring, but obviously it's better than just sitting there and waiting.

teleforce•1d ago
We just into new year and already we have one of the contenders of HN article of the year. I know HN does not has this ranking but this article is impressive.

I agree most of the points in the article except the point according to the article that local-first app must be free and open source.

Arguably one of the best app I've been using is the original Napster. At that time TIME magazine did not has the breakthrough of the year award, otherwise the Napster surely the breaktrough of the year when it was released back in 1999.

Napster single-handedly introduced and popularized p2p concept, and listening to song need not to be cumbersome and expensive. The latter facts were vindicated with the iTunes and iPod success. It also fit the very definition of local-first app defined in the original Kleppmann's article.

esseph•8h ago
I was probably 16 or 17 at the time when napster (himself) was hanging out on efnet/irc and working on the program that became Napster. It was wild to see that period play out like it did with a front row seat. That 98ish-2000 and early 2001 era felt like we were on the cusp of so many things with just cool computer technologies that were coming of age. And then 9/11 happened, and everybody's mood soured for quite awhile.
tracker1•22h ago
With many people running "home lab" servers and docker accessibility, IMO "local first" can definitely include your own server.

“Stop Designing Languages. Write Libraries Instead” (2016)

https://lbstanza.org/purpose_of_programming_languages.html
121•teleforce•2h ago•63 comments

A4 Paper Stories

https://susam.net/a4-paper-stories.html
88•blenderob•2h ago•38 comments

The Eric and Wendy Schmidt Observatory System

https://www.schmidtsciences.org/schmidt-observatory-system/
38•pppone•2h ago•28 comments

LaTeX Coffee Stains [pdf]

https://ctan.math.illinois.edu/graphics/pgf/contrib/coffeestains/coffeestains-en.pdf
6•zahrevsky•16m ago•0 comments

Show HN: KeelTest – AI-driven VS Code unit test generator with bug discovery

https://keelcode.dev/keeltest
13•bulba4aur•1h ago•4 comments

Formal methods only solve half my problems

https://brooker.co.za/blog/2022/06/02/formal.html
46•signa11•4d ago•14 comments

The first new compass since 1936

https://www.youtube.com/watch?v=eiDhbZ8-BZI
52•1970-01-01•5d ago•33 comments

Vector graphics on GPU

https://gasiulis.name/vector-graphics-on-gpu/
107•gsf_emergency_6•4d ago•18 comments

Everyone hates OneDrive, Microsofts cloud app that steals and deletes files

https://boingboing.net/2026/01/05/everyone-hates-onedrive-microsofts-cloud-app-that-steals-then-d...
29•mikecarlton•1h ago•13 comments

Stop Doom Scrolling, Start Doom Coding: Build via the terminal from your phone

https://github.com/rberg27/doom-coding
502•rbergamini27•19h ago•352 comments

Opus 4.5 is not the normal AI agent experience that I have had thus far

https://burkeholland.github.io/posts/opus-4-5-change-everything/
679•tbassetto•21h ago•962 comments

Optery (YC W22) Hiring a CISO and Web Scraping Engineers (Node) (US and Latam)

https://www.optery.com/careers/
1•beyondd•3h ago

Electronic nose for indoor mold detection and identification

https://advanced.onlinelibrary.wiley.com/doi/10.1002/adsr.202500124
155•PaulHoule•14h ago•87 comments

The creator of Claude Code's Claude setup

https://twitter.com/bcherny/status/2007179832300581177
490•KothuRoti•4d ago•319 comments

Show HN: SMTP Tunnel – A SOCKS5 proxy disguised as email traffic to bypass DPI

https://github.com/x011/smtp-tunnel-proxy
99•lobito25•14h ago•33 comments

A 30B Qwen model walks into a Raspberry Pi and runs in real time

https://byteshape.com/blogs/Qwen3-30B-A3B-Instruct-2507/
291•dataminer•18h ago•101 comments

Show HN: Comet MCP – Give Claude Code a browser that can click

https://github.com/hanzili/comet-mcp
9•hanzili•3d ago•5 comments

Vietnam bans unskippable ads

https://saigoneer.com/vietnam-news/28652-vienam-bans-unskippable-ads,-requires-skip-button-to-app...
1468•hoherd•22h ago•747 comments

On the slow death of scaling

https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5877662
96•sethbannon•11h ago•18 comments

I wanted a camera that doesn't exist, so I built it

https://medium.com/@cristi.baluta/i-wanted-a-camera-that-doesnt-exist-so-i-built-it-5f9864533eb7
421•cyrc•4d ago•131 comments

Oral microbiome sequencing after taking probiotics

https://blog.booleanbiotech.com/oral-microbiome-biogaia
168•sethbannon•17h ago•71 comments

Investigating and fixing a nasty clone bug

https://kobzol.github.io/rust/2025/12/30/investigating-and-fixing-a-nasty-clone-bug.html
20•r4um•5d ago•0 comments

The ISEE Trajectories

https://www.drmindle.com/isee/
5•drmindle12358•2d ago•4 comments

We recreated Steve Jobs's 1975 Atari horoscope program

https://blog.adafruit.com/2026/01/06/we-recreated-steve-jobss-1975-atari-horoscope-program-and-yo...
86•ptorrone•14h ago•38 comments

What *is* code? (2015)

https://www.bloomberg.com/graphics/2015-paul-ford-what-is-code/
63•bblcla•5d ago•25 comments

CES 2026: Taking the Lids Off AMD's Venice and MI400 SoCs

https://chipsandcheese.com/p/ces-2026-taking-the-lids-off-amds
123•rbanffy•17h ago•70 comments

Calling All Hackers: How money works (2024)

https://phrack.org/issues/71/17
298•krrishd•18h ago•189 comments

Launch HN: Tamarind Bio (YC W24) – AI Inference Provider for Drug Discovery

74•denizkavi•21h ago•17 comments

Sergey Brin's Unretirement

https://www.inc.com/jessica-stillman/google-co-founder-sergey-brins-unretirement-is-a-lesson-for-...
266•iancmceachern•6d ago•334 comments

Gnome dev gives fans of Linux's middle-click paste the middle finger

https://www.theregister.com/2026/01/07/gnome_middle_click_paste/
44•beardyw•1h ago•44 comments