Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
andersmurphy
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
31.
▲
by
andersmurphy
3mo ago
Wait what? gpt5.5 is better than fable. I thought fable was the endtimes?! Wonder if this is because fable swirches down to opus for somethings without telling you?
32.
▲
by
andersmurphy
3mo ago
Neither of the companies you mentioned are listed.
33.
▲
by
andersmurphy
3mo ago
Personally the main advantage of monoliths is performance.
34.
▲
by
andersmurphy
3mo ago
Yeah, it's an intellectually intoxicating idea but incredibly hard to get right. For me the problem is that in practice it only fits really well with quite a specific subset of problems, but we desperately want it to be a general solut
35.
▲
by
andersmurphy
3mo ago
> Generalization breaks down for offline-capable applications. Offline writes require conflict resolution, create authorization edge cases, and demand coordinated schema management across server and client replicas. > ...These constra
36.
▲
by
andersmurphy
3mo ago
I honestly think streaming HTML is a game changer for collaborative realtime web apps.
37.
▲
Datastar: It's Pretty Good – With David Nolen [video]
(youtube.com)
6 points
by
andersmurphy
3mo ago
|
1 comments
38.
▲
by
andersmurphy
3mo ago
I feel like independent thought will decrease considerably with LLMs. I wonder if they will effectively become oracles in the sense that the average output of an LLM will be what most companies do therefore you can predict what most compani
39.
▲
by
andersmurphy
3mo ago
I've found what works really well on 3G an MPA with streaming HTML with brotli compression rendering the whole page on every change.
40.
▲
by
andersmurphy
3mo ago
Is it slow though? Like in practice? This demo [1] using Datastar (a streaming HTML framework) every action including scrolling roundtrips to the server. Even the checkboxes changing colour is a roundtrip. https://checkboxes.ande
41.
▲
The Tao of Datastar
(data-star.dev)
6 points
by
andersmurphy
3mo ago
|
1 comments
42.
▲
by
andersmurphy
3mo ago
Also if anyone has a better way to do the pre-sort in Java/Clojure/JVM I'm all ears.
43.
▲
SQLite improving performance with pre-sort
(andersmurphy.com)
9 points
by
andersmurphy
3mo ago
|
1 comments
44.
▲
by
andersmurphy
3mo ago
Tokenfalls! My dwarf fortress eyes read this deluge completely differently.
45.
▲
by
andersmurphy
3mo ago
In SQLite all writes are serialisable by default and it scales really well. I think having a single writer is what makes the big difference here.
46.
▲
by
andersmurphy
3mo ago
User permission can often be very dynamic. Sync engines (local first ones even more so) give them access to a much larger set if that data in a client side database. This also makes them much more vulnerable to a data leak/breach if th
47.
▲
by
andersmurphy
3mo ago
You don't even need your backend that close if your server is fast enough. Streaming HTML immediate mode is pretty good. See this demo (server is in Germany and runs on a potato uses no optimistic updates, eveb scroll round trips) [1]
48.
▲
by
andersmurphy
3mo ago
Sync engines are fast to a point but if you start working with large enough datasets and/or care about security you ultimately end up with something closer to streaming immediate mode HTML. Of course that means sacrificing local first.
49.
▲
by
andersmurphy
3mo ago
Although not as prominent as insert SELECT and UPDATE both benefit from page cache locality, assuming rows that are stored near each other are often selected/updated together.
50.
▲
by
andersmurphy
3mo ago
An insignificant amount for the comparison (why I didn't mention it), it's a fast implementation and the JVM C2 JIT has kicked in by the time the first batch has completed.
51.
▲
by
andersmurphy
3mo ago
I've updated the article with the correct rowid alias (integer not int) so the rowid version is now 715ms. I've also added an example of rowid and a secondary index UUID4, and that also seems to be bad for performance (as although
52.
▲
by
andersmurphy
3mo ago
Update the article there's now a section for UUID4 with rowid. It's less bad than UUID4 without rowid but it's still about 4-6x slower than UUID7 without rowid.
53.
▲
by
andersmurphy
3mo ago
Yeah that was just a holdover from when I was playing with smaller batch sizes. It's not in the actual linked source.
54.
▲
by
andersmurphy
3mo ago
That's a good question. I don't know the answer. I will say, generally you can get higher write throughput with a single writer. Even more so if you're prepared to shard along boundaries where you don't need atomic trans
55.
▲
by
andersmurphy
3mo ago
Yes this matters even more if you are doing a lot of joins. Naive string UUIDs are 32 bytes (though I use binary uuid in the post which is 16) compared to 8 bytes for a 64-bit int. This matters even more with sqlite as it uses varint encod
56.
▲
by
andersmurphy
3mo ago
It's running on an M1 mac with synchronous full. Wouldn't surprise me if it's possible to get higher numbers.
57.
▲
by
andersmurphy
3mo ago
Yes it's writing to disk (on a M1 mac which has terribly slow fsync). But, because of the transaction the fsync dance is done once per batch. Each row is the id + a 50 byte data blob. There's only one index so there's no real
58.
▲
by
andersmurphy
3mo ago
You don't even need to that. SQLite auto increments the ids and is a single writer (which you should be coordinating at the application level. Regular rowids are definitely the way to go if you can use them.
59.
▲
by
andersmurphy
3mo ago
This is actually a draft. I Wanted to add more details about how this changes with row size etc. I might get time to update it later today.
60.
▲
by
andersmurphy
4mo ago
Datalog is the dream. But SQL with a good query builder like Clojure's honeysql is not so bad. That and SQLite seems to be able to scale to almost any problem, is disgustingly fast and with litestream incredibly resilient.
More ›