HNHacker News
TopNewBestAskShowJobs

phpnode

7,416 karma · joined October 23, 2009

Founder of https://codemix.com/ - authoritative product context which makes sure coding agents build the right thing and humans stay in control.

Email: charles@codemix.com

submissionscomments
phpnode··on The West forgot how to make things, now it’s forgetting how to code
I used to be an expert at php but now I haven’t written any in over a decade, I can still read it but it would take me a little while to get back to where I was (hopefully I’ll never need to), same thing could easily happen due to ai
phpnode··on Statecharts: hierarchical state machines
Cloudflare workers shows a visualisation of your workflow in their dashboard, but it’s imperfect
phpnode··on I don't chain everything in JavaScript anymore
unfortunately iterators have their own set of overheads and it's not clear that these new methods are any faster for most use cases.
phpnode··on Ask HN: How do you build a technical audience online in 2026?
hello, fellow wanderer! If you see this my email is in my profile.
phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
Gremlin-like API gives end to end type safety if you're querying the database from TypeScript. This was the original motivation for the library.

Zod/Valibot/ArkType/Standard Schema support because you need a way to define your schema and this allows for that at runtime and compile time.

Y.js as a backing store because I needed to support offline sync, branching/forking, and I use Y.js for collaborative editing in my product, so I needed to be able to store the various CRDT types as properties within the graph. e.g. you can have a `description` property on your vertices or edges that is backed by a Y.Text or Y.XmlElement

Cypher because until the arrival of codemode it wasn't feasible to have LLMs write queries using the Gremlin-like API and LLMs already know Cypher.

Most of all though, this was an experiment that ended up being useful.

phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
Instances that have not updated to the latest version of the schema will ignore the additional property but will not break or conflict.
phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
it depends on the backing store (which is pluggable). I would not want to exceed let's say 50Mb in a Y.js doc, but i've tested the in memory storage with graphs approaching 1Gb and it's been fine - like any graph it really depends on how you query it. Most of the docs I'm dealing with in production are less than 10Mb, so this is fine for my use cases, but... buyer beware!
phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
unfortunately it's unavoidable if you want to preserve type safety. I did consider parsing Cypher in typescript types, but it's not worth the effort and it's not possible to do safely.
phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
thanks, it was as close to Gremlin[0] as I could get without losing type safety (Gremlin is untyped)

[0] https://tinkerpop.apache.org/

phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
I needed it to be possible to run the graph in the browser and cloudflare workers, so TS was a natural fit here. It was built as an experiment into end to end type safety - nothing to do with LLMs, but it ended up being useful in the product I'm building. It's not designed for large data sets.
phpnode··on A type-safe, realtime collaborative Graph Database in a CRDT
the airline graph is more complex, I can show the schema for that if you think it's useful?
phpnode··on Vercel says internal systems hit in breach
yes, https://developers.cloudflare.com/workers/framework-guides/w...
phpnode··on Everything we like is a psyop?
> Have we really reached a point where marketers have polluted our lives with so many ads for garbage that we're incapable of discovering anything worthwhile unless it has a massive marketing agency behind it?

Yes, exactly this. It is extremely difficult to get attention these days, no matter how good your offering.

phpnode··on Gas Town: From Clown Show to v1.0
It's really about granularity - when I'm building something there are parts of the system where I want very fine-grained control and oversight over what is built and how, and there are others where... it just doesn't really matter. What matters to who is contextual - a software architect tends to care about different things from a product manager for example. This is the idea of gradual specification - I should be able to defer some decisions to the AI and exercise full control over other aspects, but it's the humans that should be able to choose what level they want to work at.
phpnode··on Gas Town: From Clown Show to v1.0
I'm pretty excited about agentic coding myself, but this does appear to be an extended ai-psychosis (i'm not super comfortable with this phrase, but it is becoming pretty recognisable).

I think he's boxed himself in by continually layering more complexity on his approach, rather than stepping back and questioning the fundamentals or the overall direction.

All of the steps Gas Town or Gas City etc are taking are towards reducing human oversight and control. This is profoundly misguided! In a world of infinite cheap software it is precisely this human decision making and control that matters.

> There will be nothing like it. You are going to want to use Gas City.

No. I do not want to talk to the mayor of my software factory, as its cartoonish minions build an infinite mountain of slop. Unreviewable, both in terms of code and the finished product.

Instead, I want to precisely capture human ideas, have those ideas questioned, challenged, improved, and then I want to bring those ideas to life, keeping the human in the loop whenever they want. Neither Beads, Gas Town, nor Gas City or anything like them are required for that.

phpnode··on The economics of software teams: Why most engineering orgs are flying blind
The trick is to generate a spec from the old code, then generate the new codebase from the spec.
phpnode··on Ask HN: What Are You Working On? (April 2026)
I just released @codemix/graph - a fully end-to-end type-safe, real-time collaborative graph database that lives in a CRDT.

There's a demo here: https://codemix.com/graph

and it's open source on github at: https://github.com/codemix/graph

It powers the underlying knowledge graph for codemix.com - it's like an IDE for your product, not your code.

phpnode··on AI Will Be Met with Violence, and Nothing Good Will Come of It
I think this is overly simplistic. e.g. Hans Reiser is clearly a pretty smart guy, but how else would you describe his actions, other than evil?
phpnode··on AI Will Be Met with Violence, and Nothing Good Will Come of It
This categorisation of evil as stupidity lets the evil off the hook, there are plenty of smart, evil people.
phpnode··on AI Will Be Met with Violence, and Nothing Good Will Come of It
Then you should explain yourself better
phpnode··on My Google Workspace account suspension
I mean, you can do that already, you use your own domain name and can then change email providers at will, in theory.

But maybe you logged in to your domain registrar through google oauth. If your google account is locked you can't now get into your domain's settings to change your MX records.

The real problem isn't the email address itself, it's all the access that google owns on your behalf. Lose access to Google, lose access to everything.

phpnode··on Good ideas do not need lots of lies in order to gain public acceptance (2008)
the author of this post has a book called Lying for Money which I'd definitely recommend.
phpnode··on r/programming bans all discussion of LLM programming
Right, they allow for the idea of gradual specification - you can write in broad strokes where you don't care about the details, and in fine detail when you do. Whether the LLM followed the spec or not is mostly down to having the right tooling.
phpnode··on r/programming bans all discussion of LLM programming
It exists today, please message me if you’d like to try it
phpnode··on r/programming bans all discussion of LLM programming
You're only thinking that because we're mostly still at the imperative, REPL stage.

We're telling them what to do in a loop. Instead we should be declaring what we want to be true.

phpnode··on r/programming bans all discussion of LLM programming
This is the same argument that people used to have against compilers
phpnode··on I quit. The clankers won
Have you seen the kind of code an average developer writes?

I agree that LLMs produce code that is less good than what a good developer could write, but most developers are not good developers, and even the good developer gets tired and must sleep eventually.

Arguments against LLMs are like the old arguments against high level languages like C. People argued that the compiler wrote trash code, that humans could do better, that the costs weren't worth it. None of that mattered and it's the same story here.

phpnode··on I quit. The clankers won
This just isn’t true at all, with guidance and guard rails they produce much better code than the average developer does. They are only going to get better.
phpnode··on 404 Deno CEO not found
I'm not saying that we should care more for the CEO, but that we should have empathy for someone who is, ultimately, an engineer who built something and gave it away for free, watched everyone else around him get rich off the back of his hard work, and then tried to do something worthwhile again and still chose to give it away for free. There's a lot of immoral CEOs out there, I'm yet to see evidence that Dahl is one of them.
phpnode··on 404 Deno CEO not found
Bad faith reply. The government grants do not exist, it's not a failure of imagination, I too would like to live in that world, but we don't and aren't likely to any time soon. And even if we did, do you think that Deno would have been likely to receive a grant? I do not.
← PreviousPage 2 of 34Next →