Unusual tones all around in the thread here. My initial observations before reading the comments here:
* "wow, OSS projects are starting to have some pretty wild landing pages, guess it's not just AI logos at the top of the README anymore"
* "wow, all in one commit. was it vibe-one-shotted, curated private work that was squashed, or something in between"
* "wow, Zig is kind easy to read although I really don't want to learn another language in 2026 although I already started learning some to use libghostty"
* "wow, is Zig really this much performant than Golang at the tails"
* "weird it uses Bazel, doesn't Zig have it's own build system like Golang"
* "so who is the author? I see they made an GitHub org for this. Are they going to keep doing stuff after the commit and should I keep this in my messaging queue neurons? Is this some company or person I should follow"
* "the README has a misalignment, do I PR that?"
* "oh cool, it lets you tune memory and the dispatcher"
---
I never thought of exactly how it manifested, except about the single commit. I have started "vibe coding" much more as the capabilities really improved in the last few months, so that isn't intrinsically a trash approach.
But the "who" and the "how" and the "why" do matter, in terms of whether one should look at it for education or infotainment or as a potential tool.
Disclosure of the intention and method would be courteous to the community when we create and share these things. Otherwise we'll all have high cognitive burden with the amount of projects we'll be seeing in 2026!
That’s fair, I should have framed it more clearly upfront. Thanks for the feedback.
I was excited about the results. The intent was to talk about performance and architecture, not to imply this was a quick or effortless project. There’s been a lot of iteration and experimentation behind it, and I should have communicated that context better as well as the use of AI for the help.
I'm also building a network server with thread-per-core and io_uring, except it's a web server, it's written in Rust, and io_uring is provided by a fork of Monoio runtime (I forked it to make it work with Windows and FreeBSD).
You and OP both work for the same "High Performance AI Inference" company, you might want to disclose that.
EDIT: and while you're at it, you might also want to work on your attitude. "you idiot", "get lost" and "you need to touch grass" are not helping any HN discussions
Well, in that case I'm curious... Why did you think hijacking OP's stance of "Claude did rewrote lots of my original messy code" with your own opposing position of "the project itself is not AI", and getting quite offensive about it, would benefit any discussion about this 13h old project?
It's a personal project of your dear ex-colleague, mind you!
Sure, the author just happened to one-shot a project and a landing page on new year's eve. And their writing style is just coincidentally very similar to Claude's.
Its an extract of two weeks of work. And yes Claude did the website and rewrote my code that was absolutely without comments and a gigantic mess. It's an extract of the fourth attempt actually. Src4/ was the original folder. But my goal my to test the architecture applied to nats not to say I've done it without ai?
Upvote for Bazel. I think these days I place a lot more value on how well an ecosystem slots into Bazel/friends because monorepos are increasingly more useful and relevant.
So nice to see there are good rules for Zig and that folks are using them.
Also ironically I think starting with Bazel/Buck/whatever your poison of choice is almost always a good move even if people tell you it's overkill. The easiest time to do it as at the beginning, all times after that is too hard and the marginal cost of building with it from the start is minimal.
People are free to knock themselves out with Bazel if they’re into that kind of masochism, but having it as the ONLY way to build your OSS project is a big no.
The problem with "the language tooling is already a build system" is that cross-language dependency chains are a thing. The moment you need a Rust or Zig file to be regenerated and recompiled when a JSON schema or .proto file is updated, you're outside what most of those language-specific toolchains can support. This is where Bazel absolutely shines.
If all of your dependencies need to use the same build system as your project then your build system/process is defect anyway. It should be possible to invoke a foreign build system as part of your build.
Oh god no. Just having fun with zig and being a little over enthusiast I guess. I'm a big fan of nats, and really wanted to see how far you can push the idea if you do it differently. I was not expecting that tbh but, hpn too!
Claude did rewrote lots of my original messy code. No shame in that? But in the end the interest was in the underlying architecture, applied to nats protocol. Anyway.
I’d invite you to reconsider the kind of language you’re using to interact with other forum members here.
Dropping to profanities is not conducive to maintaining an environment that’s facilitating dialogue between its members.
I’ve seen you at least twice call other members here “you idiot”, “get lost”. Etc. Have a hard think as to whether you could rephrase that without the name calling, and if at worse you can’t manage to, you can always ask an LLM to do it for you.
Is the only zig community that Andrew Kelley "anti-endorses"[1]:
> I don’t have the time or energy to evaluate most Zig communities so I can neither endorse nor anti-endorse them, however, the Zig subreddit is an exception.
> It’s an awful place and I stand by my decision to permanently close it. I am unhappy that it was reopened against my will.
There may have been less pushback if this had been expressed up front. But also, what is it ? Is it to "test the architecture applied to nats" or is it to be a fully fledged NATs replacement (as per the impression given by table at the bottom of the website) - which becomes much harder if AI has significantly re-written the authors original code (and commented it badly).
Fair point. And as what it is, not a nats replacement, certainly dont have the time to maintain that this way, a test/tech demo/fun side project that yielded super interesting results is probably the answer. As usual I'm probably way too enthusiast when I see some nice results like that and the goal here was to talk about that, but it shifted super fast. So yes Claude rewrote lots of parts, and that's what I love about it. Testing an idea happens in way less time than before, and I find that super cool.
Nothing individually is a good indicator of slop in itself, a human could also have written this readme full of Claud-isms and a borked ASCII schema or the code littered with idiosyncratic comments.
It's the convergent set of clues that makes the case.
* "wow, OSS projects are starting to have some pretty wild landing pages, guess it's not just AI logos at the top of the README anymore"
* "wow, all in one commit. was it vibe-one-shotted, curated private work that was squashed, or something in between"
* "wow, Zig is kind easy to read although I really don't want to learn another language in 2026 although I already started learning some to use libghostty"
* "wow, is Zig really this much performant than Golang at the tails"
* "weird it uses Bazel, doesn't Zig have it's own build system like Golang"
* "so who is the author? I see they made an GitHub org for this. Are they going to keep doing stuff after the commit and should I keep this in my messaging queue neurons? Is this some company or person I should follow"
* "the README has a misalignment, do I PR that?"
* "oh cool, it lets you tune memory and the dispatcher"
---
I never thought of exactly how it manifested, except about the single commit. I have started "vibe coding" much more as the capabilities really improved in the last few months, so that isn't intrinsically a trash approach.
But the "who" and the "how" and the "why" do matter, in terms of whether one should look at it for education or infotainment or as a potential tool.
Disclosure of the intention and method would be courteous to the community when we create and share these things. Otherwise we'll all have high cognitive burden with the amount of projects we'll be seeing in 2026!
I was excited about the results. The intent was to talk about performance and architecture, not to imply this was a quick or effortless project. There’s been a lot of iteration and experimentation behind it, and I should have communicated that context better as well as the use of AI for the help.
- Where did you get the machine to test your server on?
- Why did you end up going with zig?
[1]: https://github.com/bustermq/bustermq/commits/master/
Maybe there is a niche market for artisanal software engineering where real humans make holes in punchcards, but I would not bet.
Maybe 12 hours after the first commit is a bit early to be confident about that…
> Maybe there is a niche market for artisanal software engineering where real humans make holes in punchcards, but I would not bet
Or maybe there exist a world between punchcards and evening AI slop “projects”, who knows.
EDIT: and while you're at it, you might also want to work on your attitude. "you idiot", "get lost" and "you need to touch grass" are not helping any HN discussions
i already said in another reply that i knew him personally
It's a personal project of your dear ex-colleague, mind you!
Who's going to buy that?
One day Claude will do it correctly but today is not that day.
So nice to see there are good rules for Zig and that folks are using them.
Also ironically I think starting with Bazel/Buck/whatever your poison of choice is almost always a good move even if people tell you it's overkill. The easiest time to do it as at the beginning, all times after that is too hard and the marginal cost of building with it from the start is minimal.
perhaps, just perhaps, why people go through the trouble not because they are idiots but for actual engineering reasons
you need to touch grass
1/ AIs are terrible at Zig
2/ I happen to know the author personally
Dropping to profanities is not conducive to maintaining an environment that’s facilitating dialogue between its members.
I’ve seen you at least twice call other members here “you idiot”, “get lost”. Etc. Have a hard think as to whether you could rephrase that without the name calling, and if at worse you can’t manage to, you can always ask an LLM to do it for you.
Claude isn't, and the zig subreddit is actually full of AI slop projects unfortunately.
And yesterday's front page Zig project was also vibe coded (though in that case the author acknowledged it: https://news.ycombinator.com/item?id=46442792)
Is the only zig community that Andrew Kelley "anti-endorses"[1]:
> I don’t have the time or energy to evaluate most Zig communities so I can neither endorse nor anti-endorse them, however, the Zig subreddit is an exception.
> It’s an awful place and I stand by my decision to permanently close it. I am unhappy that it was reopened against my will.
[1]: https://ziglang.org/community/
I do this to avoid having to check e-mail addresses and names in commits - maybe I mistakenly made a commit from my work account etc.
After the “initial” commit making it all public, I start to work “in the open”. I see many others doing it the same way.
That is NOT a reliable indicator of slop!
https://news.ycombinator.com/item?id=46452907 https://news.ycombinator.com/item?id=46452841
There may have been less pushback if this had been expressed up front. But also, what is it ? Is it to "test the architecture applied to nats" or is it to be a fully fledged NATs replacement (as per the impression given by table at the bottom of the website) - which becomes much harder if AI has significantly re-written the authors original code (and commented it badly).
The website being AI coded I can take or leave.
It's the convergent set of clues that makes the case.