HackerTrans
TopNewTrendsCommentsPastAskShowJobs

samwillis

no profile record

Submissions

[untitled]

1 points·by samwillis·12 ngày trước·0 comments

PGlite reaches 10M weekly downloads

electric.ax
4 points·by samwillis·16 ngày trước·1 comments

AI agents as CRDT peers – building collaborative AI with Yjs

electric-sql.com
3 points·by samwillis·3 tháng trước·0 comments

From science fiction to reality – you can build difficult things with LLMs now

electric-sql.com
2 points·by samwillis·6 tháng trước·0 comments

Scaling long-running autonomous coding

cursor.com
290 points·by samwillis·6 tháng trước·197 comments

The Bayesian Geometry of Transformer Attention

arxiv.org
4 points·by samwillis·6 tháng trước·1 comments

Attention Is Bayesian Inference

medium.com
152 points·by samwillis·6 tháng trước·32 comments

Concurrent JavaScript: It can work

webkit.org
4 points·by samwillis·7 tháng trước·0 comments

An Interactive Guide to TanStack DB

frontendatscale.com
4 points·by samwillis·10 tháng trước·0 comments

Liz Truss resigns as UK prime minister

bbc.co.uk
546 points·by samwillis·4 năm trước·631 comments

comments

samwillis
·7 ngày trước·discuss
contenteditable I believe was in IE 5.5 in ~2000, I remember playing with it back then. It landed about the same time as "Outlook Web Access" which is arguably the first SPA, originator of AJAX, and first use of XMLHttpRequest. I think TinyMCE and FCKEditor were a little later.
samwillis
·10 ngày trước·discuss
They have compiled to WASM64, the newer 64bit version of WASM. That's not available on iOS yet.

WASM till recently has had a 32bit address space, to match the limitations of JS numbers. With 64bit WASM you have to use BigInt rather than the floats that are numbers in js to address the memory.

It's only the address space that's affected - old WASM still handled 64bit math fine.
samwillis
·4 tháng trước·discuss
It's disingenuous to suggest that "Yjs will completely destroy and re-create the entire document on every single keystroke" and that this is "by design" of Yjs. This is a design limitation of the official y-Prosemirror bindings that are integrating two distinct (and complex) projects. The post is implying that this is a flaw in the core Yjs library and an issue with CRDTs as a whole. This is not the case.

It is very true that there are nuances you have to deal with when using CRDT toolkits like Yjs and Automerge - the merged state is "correct" as a structure, but may not match your scheme. You have to deal with that into your application (Prosemirror does this for you, if you want it, and can live with the invalid nodes being removed)

You can't have your cake and eat it with CRDTs, just as you can't with OT. Both come with compromises and complexities. Your job as a developer is to weigh them for the use case you are designing for.

One area in particular that I feel CRDTs may really shine is in agentic systems. The ability to fork+merge at will is incredibly important for async long running tasks. You can validate the state after an agent has worked, and then decide to merge to main or not. Long running forks are more complex to achieve with OT.

There is some good content in this post, but it's leaning a little too far towards drama creation for my tast.
samwillis
·4 tháng trước·discuss
Have you considered doing property tests with Mathematica as an oracle?

An ai based development workflow with a concrete oracle works very well. You still need the research and planing to solve things in a scalable way, but it solves the "are the tests correct" issue.

What we've done is pull out failing property tests as a unit tests, makes regression testing during the agentic coding loop much more efficient.
samwillis
·6 tháng trước·discuss
I'm convinced that LLMs results in all software needing to be open source (or at the very least source available).

In future everyone will expect to be able to customise an application, if the source is not available they will not chose your application as a base. It's that simple.

The future is highly customisable software, and that is best built on open source. How this looks from a business perspective I think we will have to find out, but it's going to be fun!
samwillis
·6 tháng trước·discuss
Manifold works on solid triangle meshes, OpenCascade is a true BREP kernel that represents solids as edges (straight and curved) and surfaces (not meshed) computed from those edges. There is no triangulation in the root model in OpenCascade.
samwillis
·6 tháng trước·discuss
Higher level overview and links to the other related papers: https://medium.com/@vishalmisra/attention-is-bayesian-infere...
samwillis
·6 tháng trước·discuss
Yes, exactly. The other reason Cloudflare workers runtime is secure is that they are incredibly active at keeping it patched and up to date with V8 main. It's often ahead of Chrome in adopting V8 releases.
samwillis
·7 tháng trước·discuss
This is one of the main use cases we are building "Durable Streams" for, it's an open source spec for a resumable and durable stream protocol. It's essentially an append only log with a http api.

https://github.com/durable-streams/durable-streams

https://electric-sql.com/blog/2025/12/09/announcing-durable-...

When we built ElectricSQL we needed a resumable and durable stream of messages for sync and developed a highly robust and scalable protocol for it. We have now taken that experience and are extracting the underlying transport as an open protocol. This is something the industry needs, and it's essential that it's a standard that portable between provider, libraries and SDKs.

The idea is that a stream is a url addressable entity that can be read and tailed, using very simple http protocol (long polling and a SSE-like mode). But it's fully resumable from a known offset.

We've been using the previous iteration of this as the transport part of the electric sync protocol for the last 18 months. It's very well tested, both on servers, in the browser, but importantly in combination with CDNs. It's possible to scale this to essential unlimited connections (we've tested to 1 million) by request collapsing in the CDN, and as it's so cacheable it lifts a lot of load of your origin when a client reconnect from the start.

For the LLM use case you will be able to append messages/tokens directly to a stream via a http post (we're working on specifying a websocket write path) and the client just tails it. If the user refreshes the page it will just read back from the start and continue tailing the live session. Avoids appending tokens to a database in order to provide durability.
samwillis
·7 tháng trước·discuss
> But they need to FEEL the weather

You mean they need to smell it!
samwillis
·7 tháng trước·discuss
The key limitation (at the moment) is that it only supports a single connection. W're planning to lift that limitation though.
samwillis
·7 tháng trước·discuss
This is such awesome work! We *are* going to get this integrated with the ongoing work for "libpglite".
samwillis
·7 tháng trước·discuss
You can use http://electric-sql.com to sync into PGlite in the browser from postgres. There are docs here: https://pglite.dev/docs/sync
samwillis
·7 tháng trước·discuss
I'm not aware of anything trying to compile timescale for it. Some extensions are easer than other, if there is limited (or ideally no) network IO and its written in C (Timescale is!) with minimal dependencies then its a little easer to get them working.
samwillis
·7 tháng trước·discuss
There are a few people using it in prod for customer facing web apps.

Extensions are also available - we have a list here: https://pglite.dev/extensions/. We would love to extend the availability of more, some are more complex than others though. We are getting close to getting PostGIS to work, there is an open PR that anyone is welcome to pick up and hack on.
samwillis
·7 tháng trước·discuss
We have a long on running research project with the intention of carting a "libpglite" with a C FFI and compiled as a dynamic library for native embedding. We're making steady progress towards it.
samwillis
·7 tháng trước·discuss
It's now used by a huge number of developers for running local dev environments, and emulating server products (Google firebase and Prisma both embed it in their CLI). Unit testing postgres backed apps is also made significantly easer with it.
samwillis
·7 tháng trước·discuss
Hey everyone, I work on PGlite. Excited to see this on HN again.

If you have any questions I'll be sure to answer them.

We recently crossed a massive usage milestone with over 3M weekly downloads (we're nearly at 4M!) - see https://www.npmjs.com/package/@electric-sql/pglite

While we originally built this for embedding into web apps, we have seen enormous growth in devtools and developer environments - both Google Firebase and Prisma have embedded PGlite into their CLIs to emulate their server products.
samwillis
·8 tháng trước·discuss
I'm really intrigued by the use of differential dataflow in a static site toolkit, but there isn't much in the way written about it. If anyone from the team are here I would love it if you could explain how it's being used? Does this enable fast incremental builds, only changing the parts that change in the input? If so how do you model that? Are you using multisets as a message format inside the engine?

For context, I work on TanStack DB which is a differential dataflow / DBSP inspired reactive client datastore. Super interested in your use case.
samwillis
·8 tháng trước·discuss
Oh, yeh, don't get me wrong. I meant impossibly expensive to drop into a mid range car with no scaling up from a higher value lower volume product range first.