frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Doing gigabit Ethernet over my British phone wires

https://thehftguy.com/2026/01/22/doing-gigabit-ethernet-over-my-british-phone-wires/
203•user5994461•4h ago•116 comments

FOSS "Just Fork It" Delusion

https://hamishcampbell.com/foss-just-fork-it-delusion/
35•mimasama•1h ago•35 comments

XHTML Club

https://xhtml.club/
23•bradley_taunt•1h ago•24 comments

Many Small Queries Are Efficient in SQLite

https://www.sqlite.org/np1queryprob.html
48•tosh•3h ago•38 comments

I Like GitLab

https://www.whileforloop.com/en/blog/2026/01/21/i-like-gitlab/
56•lukas346•4h ago•30 comments

Internet Archive's Storage

https://blog.dshr.org/2026/01/internet-archives-storage.html
206•zdw•3d ago•54 comments

MS confirms it will give the FBI your Windows PC data encryption key if asked

https://www.windowscentral.com/microsoft/windows-11/microsoft-bitlocker-encryption-keys-give-fbi-...
33•blacktulip•1h ago•8 comments

Unrolling the Codex agent loop

https://openai.com/index/unrolling-the-codex-agent-loop/
382•tosh•17h ago•178 comments

How I Estimate Work as a Staff Software Engineer

https://www.seangoedecke.com/how-i-estimate-work/
32•mattjhall•4h ago•1 comments

80386 Multiplication and Division

https://nand2mario.github.io/posts/2026/80386_multiplication_and_division/
68•nand2mario•8h ago•14 comments

Proof of Corn

https://proofofcorn.com/
423•rocauc•20h ago•279 comments

Show HN: Coi – A language that compiles to WASM, beats React/Vue

121•io_eric•3d ago•47 comments

JVIC: New web-based Commodore VIC 20 emulator

https://vic20.games/#/basic/24k
8•lance_ewing•2h ago•2 comments

Management Time: Who's Got the Monkey? [pdf]

https://www.med.unc.edu/uncaims/wp-content/uploads/sites/764/2014/03/Oncken-_-Wass-Who_s-Got-the-...
19•rintrah•4d ago•2 comments

Modetc: Move your dotfiles from kernel space

https://maxwell.eurofusion.eu/git/rnhmjoj/modetc
33•todsacerdoti•6h ago•16 comments

Extracting verified C++ from the Rocq theorem prover at Bloomberg

https://bloomberg.github.io/crane/
75•clarus•4d ago•5 comments

When employees feel slighted, they work less

https://penntoday.upenn.edu/news/penn-wharton-when-employees-feel-slighted-they-work-less
61•consumer451•4d ago•52 comments

“Let people help” – Advice that made a big difference to a grieving widow

https://www.npr.org/2026/01/20/nx-s1-5683170/let-them-the-small-bit-of-advice-that-made-a-big-dif...
96•NaOH•11h ago•16 comments

Traintrackr – Live LED Maps

https://www.traintrackr.co.uk/
66•recursion•5d ago•24 comments

Some C habits I employ for the modern day

https://www.unix.dog/~yosh/blog/c-habits-for-me.html
187•signa11•5d ago•109 comments

Telli (YC F24) is hiring eng, design, growth [on-site, Berlin]

https://careers.telli.com/
1•sebselassie•7h ago

Gas Town's agent patterns, design bottlenecks, and vibecoding at scale

https://maggieappleton.com/gastown
357•pavel_lishin•22h ago•370 comments

The fix for a segfault that never shipped

https://www.recall.ai/blog/the-fix-for-a-segfault-that-never-shipped
13•davidgu•3d ago•2 comments

Banned C++ features in Chromium

https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++-features.md
203•szmarczak•18h ago•172 comments

Ask HN: What's the current best local/open speech-to-speech setup?

191•dsrtslnd23•1d ago•49 comments

Microsoft gave FBI set of BitLocker encryption keys to unlock suspects' laptops

https://techcrunch.com/2026/01/23/microsoft-gave-fbi-a-set-of-bitlocker-encryption-keys-to-unlock...
928•bookofjoe•20h ago•584 comments

Comma openpilot – Open source driver-assistance

https://comma.ai
307•JumpCrisscross•13h ago•166 comments

New YC homepage

https://www.ycombinator.com/
272•sarreph•20h ago•148 comments

Booting from a vinyl record (2020)

https://boginjr.com/it/sw/dev/vinyl-boot/
328•yesturi•1d ago•110 comments

Mental Models (2018)

https://fs.blog/mental-models/
113•hahahacorn•17h ago•17 comments
Open in hackernews

Many Small Queries Are Efficient in SQLite

https://www.sqlite.org/np1queryprob.html
48•tosh•3h ago

Comments

rustybolt•1h ago
This feels like a very elaborate way of saying that doing O(N) work is not a problem, but doing O(N) network calls is.
jstummbillig•1h ago
It being so obvious, why is sqlite not the de facto standard?
skrebbel•1h ago
I haven't investigated this so I might be behind the times, but last I checked remotely managing an SQLite database, or having some sort of dashboarding tool run management reporting queries and the likes, or make a Retool app for it, was very messy. The benefit of not being networked becomes a downside.

Maybe this has been solved though? Anybody here running a serious backend-heavy app with SQLite in production and can share? How do you remotely edit data, do analytics queries etc on production data?

chuckadams•1h ago
No network, no write concurrency, no types to speak of... Where those things aren't needed, sqlite is the de facto standard. It's everywhere.
mickeyp•1h ago
Perfect summary. I'll add: insane defaults that'll catch you unaware if you're not careful! Like foreign keys being opt-in; sure, it'll create 'em, but it won't enforce them by default!
ogogmad•11m ago
Is it possible to alleviate some of these limitations by building DBMSes on top of SQLite, which might fix the sloppiness around types and foreign keys?
Cthulhu_•1h ago
It is for use cases like local application storage, but it doesn't do well in (or isn't designed for) concurrent use cases like any networked services. SQLite is not like the other databases.
password4321•1h ago
As another example, a SQL Server optimization per https://learn.microsoft.com/en-us/sql/t-sql/statements/set-n...:

> For stored procedures that contain several statements that don't return much actual data, or for procedures that contain Transact-SQL loops, setting SET NOCOUNT to ON can provide a significant performance boost, because network traffic is greatly reduced.

Neywiny•1h ago
Rather I think their point is that since O(N) is really X * N, it's not the N that gets you, it's the X.
zffr•1h ago
IMO the page is concise and well written. I wouldn’t call it very elaborate.

Maybe the page could have been shorter, but not my much.

sodapopcan•10m ago
It's inline with what I perceive as the more informal tone of the sqlite documentation in general. It's slightly wordier but fun to read, and feels like the people who wrote it had a good time doing so.
hahahahhaah•1h ago
One index scan beats 200 index lookups though surely?

I.e. sometimes one query is cheaper. It is not network anymore.

Also you can run your "big" DB like postgres on the same machine too. No law against that.

Kinrany•1h ago
One query isn't cheaper than two queries that do the same amount of IO and processing and operate in the same memory space
wenc•16m ago
For analytic queries, yes, a single SQL query often beats many small ones. The query optimizer is allowed to see more opportunities to optimize and avoid unnecessary work.

Most SQLite queries however, are not analytic queries. They're more like record retrievals.

So hitting a SQLite table with 200 "queries" is similar hitting a webserver with 200 "GET" commands.

In terms of ergonomics, SQLite feels more like a application file-format with a SQL interface. (though it is an embedded relational database)

https://www.sqlite.org/appfileformat.html

philipodonnell•1h ago
I’ve been experimenting with LiveStoreJS which uses a custom SQLite WASM binary for event sync, so for simplicity I’ve also used it for regular application data in browser and found no issues (yet). It surprised me that using a full database engine in memory could perform well vs native JS objects at scale but perhaps at scale is when it starts to shine. Just be wary of size limits beyond 16-20mb.
causalscience•1h ago
Make sure you click this link https://sqlite.org/src/timeline

So the sqlite developers use their on versioning system which uses sqlite for storage. Funny.

kmeisthax•1h ago
Yes. Git is the same way: it uses the Linux kernel for storage, and the Linux kernel is managed with Git. :P
1f60c•53m ago
And all made by a group of Christian friends
nchmy•1h ago
The article doesnt make it at all clear what it is comparing to - mysql running remotely or on the same server? I'm sure sqlite still has less "latency" than mysql on localhost or unix socket, but surely not meaningfully so. So, is SQLite really just that much faster at any SELECT query, or are they just comparing apples and oranges?

Or am i mistaken in thinking that communicating to mysql on localhost is comparable latency to sqlite?

Neywiny•1h ago
I think they're trying to not shame other services, but yes the comparison is vs networked whether that's local on loopback or not. For a small query, which is what they're talking about, it's not inconceivable that formatting into a network packet, passing through the userspace networking functions, into and through kernel, all back out the other side, then again for the response, is indeed meaningfully slower than a simple function call within the program.
wild_egg•1h ago
Connecting to localhost still involves the network stack and a fair bit of overhead.

SQLite is embedded in your program's address space. You call its functions directly like any other function. Depending on your language, there is probably some FFI overhead but it's a lot less than than an external localhost connection

Cthulhu_•1h ago
Even if you're on the same local server, you're still going over a socket to a different service, whereas with sqlite you remain in the same application / address space / insert words I don't fully understand here. So while client/server SQL servers are faster locally than on a remote server, they can (theoretically) never be as fast as SQLite in the same process.

Of course, SQLite and client/server database servers have different use cases, so it is kind of an apples and oranges comparison.

zffr•1h ago
I think the most common set up is to have your application server and DB on different hosts. That way you can scale each independently.
pmbanugo•1h ago
quite interesting. So SQL patterns can be optimised differently in SQLite
cyanmagenta•1h ago
There is some risk that, if you design your website to use a local database (sqlite, or a traditional database over a unix socket on the same machine), then switching later to a networked database is harder. In other words, once you design a system to do 200 queries per page, you’d essentially have to redesign the whole thing to switch later.

It seems like it mostly comes down to how likely it is that the site will grow large enough to need a networked database. And people probably wildly overestimate this. HackerNews, for example, runs on a single computer.

Kinrany•1h ago
There's also the alternative of having a cluster with one local DB in each node
luckylion•53m ago
The same is true for regular databases though, isn't it?

Network adds latency and while it might be fine to run 500 queries with the database being on the same machine, adding 1-5ms per query makes it feel not okay.

63stack•42m ago
I don't see how anyone would design a system that executes 200 queries per page. I understand having a system that is ín use for many many years and accumulates a lot of legacy code eventually ends up there, but designing? Never. That's not design, that's doing a bad job at design.
anamexis•41m ago
Did you read the OP?
ctxc•39m ago
Sounds a bit like me, reading the comments before the article!
andersmurphy•2m ago
The thing is sqlite can scale further vertically than most network databases. In some context's like writes and interactive transactions it outright scales further. [1]

That's before you even get into sharding sqlite.

[1] - https://andersmurphy.com/2025/12/02/100000-tps-over-a-billio...

daitangio•55m ago
I am using SQLite on paperless-ngx (an app to manage pdf [4]). It is quite difficult to beat SQLite if you do not have a very huge parallelism factor in writes.

SQLite is an embedded database: no socket to open, you directly access to it via file system.

If you do not plan to use BigData with high number of writers, you will have an hard time beating SQLite on modern hardware, on average use cases.

I have written a super simple search engine [1] using python asyncio and SQLite is not the bottleneck so far.

If you are hitting the SQLite limit, I have an happy news: PostgreSQL upgrade will be enough for a lot of use cases [2]: you can use it to play with a schemaless mongo-like database, a simple queue system [3] or a search engine with stemming. After a while you can decide if you need a specialized component (i.e. Kafka, Elastic Search, etc) for one of your services.

[1]: https://github.com/daitangio/find

[2]: https://gioorgi.com/2025/postgres-all/

[3]: https://github.com/daitangio/pque

[4]: https://docs.paperless-ngx.com

charcircuit•38m ago
>For a 50-entry timeline, the latency is usually less than 25 milliseconds. Profiling shows that few of those milliseconds were spent inside the database engine.

And instead were spent blocking on the disk for all of the extra queries that were made? Or is it trying to say that the concatenation a handful of strings takes 22 ms. Considering how much games can render with a 16 ms budget I don't see where that time is going rendering html.

NorwegianDude•29m ago
I do t have time to test myself now, but it would be interesting to see a proper benchmark. We all know it's not suitable for high write concurrency, but SQLite should be a very good amount faster for reads because of the lack of overhead. But how much faster is it really?
flipped•29m ago
Has anyone tried using distributed versions of sqlite, such as rqlite? How reliable is it?
lifetimerubyist•26m ago
Definitely was something surprising that I discovered when building with Sqlite recently. We're tought to avoid N+1 queries at almost any cost in RDBMs but in Sqlite, the N+1 can actually be the best option in most cases.

I had to build some back-office tools and used Ruby on Rails with SQLITE and didn't bother with doing "efficient" joins or anything. Just index the foreign keys, do N+1s everywhere - you'll be fine. The app is incredibly easy to maintain and add features because of this and the db is super easy to backup - literally just scp the sqlite db file somewhere else. Couldn't be happier with this setup.

meken•16m ago
Side note - is this post accessible from the site somewhere? I don’t see where you’d find it (along with the C is Best post [1] shared here recently).

[1] https://sqlite.org/whyc.html

nefarious_ends•11m ago
https://www.sqlite.org/doclist.html