Live data from Hacker News

Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

raymyers.org

621–630 of 862 posts

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#621

There's so much good stuff in this post. Can't help to think of a recent HN post about most AI-generated projects being abandoned within months. Why? Because value of a project is not in the code produced. It's in the amount of battle-testing that code has seen. Battle-tested, mature code > fresh rewrite. Existing Zig codebase has seen X amount of battle-testing. Rust rewrite: 0 (except -I'm assuming- passing test su…

>I don't think Zig community should get triggered on any of this.

As far as I can tell No one from Zig community got triggered by this other than the Zig team. People were angry about Bun switching to Rust not because it is abandoning Zig, but this reckless behaviour of not letting users know up front, no migration path or two parallel version testing and basically trust AI on everything.

The internet was pretty much on Zig's side or at least between Bun and Zig they were Anti-Bun for a lot of things. That was until Zig's reply.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#622

I think like most people, I don’t have a problem with Andrew “calling a spade a spade,” even if I find his reasoning motivated. The bigger problem with the post is that it talks out of both ends of the mouth: it’s clearly meant as a personal attack, but also insists that it isn’t. When I read the post, my first thought was that I wouldn’t want to build things in Zig, because any technical decision I make, good or bad…

> I can’t conceive of the leadership of the Python or Rust or any other community I’ve ever worked with doing something like that.

I'd be prudent to use a clear faux-pas by a BDFL as an argument to push for an alternative, seemingly more consensual, leadership style. I'd also be careful to fall for the apparent lack of overt aggression in the latter type of structures, as a necessarily positive signal. I've seen people in various such communities (including the two cited languages) that have chosen not to interact with their steering committees, because of perceived toxicity.

This can and does happen with any kind of structure and can take many shapes, some of whom are too subtle or passive to even accurately pinpoint, in the way you would for example directly index a BDFL. In The Tyranny of Structurelessness Jo Freeman made the case that the lack of a clear structure in the make up of a movement presents with opportunities for very fuzzy power dynamics and related abuses that are also much more challenging to deal with.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#623

There's so much good stuff in this post. Can't help to think of a recent HN post about most AI-generated projects being abandoned within months. Why? Because value of a project is not in the code produced. It's in the amount of battle-testing that code has seen. Battle-tested, mature code > fresh rewrite. Existing Zig codebase has seen X amount of battle-testing. Rust rewrite: 0 (except -I'm assuming- passing test su…

I think the line is between AI-generated and AI-assisted - I have AI assisted projects that I have happily been developing for several months and they are going fine, I feel just as engaged with them as I did with my hand coded projects, but also I am more engaged insofar as I actively manage the architecture and the code, and see to it that the AI is following the plan I have in mind.

people chasing after "one shot" code certainly aren't helping, I agree.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#624

This paragraph is written by AI. I did not notice it earlier in the piece: > The piece about the migration process is very cool, with details that are reusable. No complaints, I think that’s the real contribution here. I particularly like the honesty in explaining that this was a port to unsafe Rust, allowing a literal file-by-file migration to minimize risk, paving the way for redesign in future steps. That’s a sens…

Why would the author write this paragraph alone using AI?

I doubt that is what happened, but this is where I quit reading so I did not evaluate the rest of the article. I'm assuming the previous section was either largely written by hand or it was much more carefully edited.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#625
post #582

Earlier quoted context omitted.

> If you don't intend to write misleading stuff that makes Zig look bad What misleading stuff? Makes Zig look bad how? The posts I read were appreciative to Zig. The only “misleading” piece of either blog post that I recall was the Andrew Kelley claim that Bun wasn’t fuzzing, which was easily refuted by pointing to their fuzzing work. If there’s something more then I’d like to see it, but every time I ask nobody can…

https://news.ycombinator.com/item?id=48891496

But even the dates they’re pointing to as evidence of fuzzing in that post pre-date Andrew Kelley’s accusation that they weren’t fuzzing.

When it gets to the point of having to click HN links to other HN posts which link to a reply in a thread on Mastodon which is splitting hairs over dates that are still prior to the accusation, you’ve lost me.

At best it seems like a more accurate outcome would be to update the original blog post with an edit saying that he meant they only started fuzzing recently and acknowledging the PR from 8 months ago?

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#626
post #181

Earlier quoted context omitted.

> I think the Zig people are really just concerned that maybe Zig itself is a DOA language because it doesn't offer enough over C for any serious use and their flagship project has now abandoned it. You hit the nail on the head there. Zig is 10 years old now and it’s pretty clear that the industry isn’t biting, compared to the behemoth that is Rust. Between Rust, C, and C++ there is very little room for another langu…

> it’s pretty clear that the industry isn’t biting Zig isn't finished yet (they still have not released a v1.0). They're still iterating on the language itself and want the flexibility to make backwards-incompatible changes while they do so. So in a sense, they have not yet asked anybody in mainstream industry to "bite." After v1.0, when there's an understanding of stability and ongoing language support, industry ado…

I hear you, but Zig is also 10 years old now. While the authors may not want to signal they're ready, people make assumptions based on age regardless.

Either users think (a) it's actually ready after a decade, since many langs/libs are conservative with jumping to v1.0, or (b) they'll think it's [a toy/a side project/run by perfectionists] that's not ready for production, and might never be.

This isn't exactly fair for those who want to just take tir

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#627

There are a lot of posts going on, but let me just post this link to a specific file of the bun zig code base so you can have your own impression: https://github.com/oven-sh/bun/blob/bun-v1.1.42/src/bundler/... My take is they vibe coded too close to the sun

I'm left with a good impression.

Lot's of comments on the whys and historic context.

Backed by tons of tests.

Yes the file could use some modularisation and splitting into smaller parts but maybe the gains were weighted and judged against.

That file is a great example of KISS.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#628

The more I interact with the real world and mature as a person the less respect I have for temper tantrums such as these. Even if everything you say is correct, coming across as emotional and petty just does not help your case. This just makes Zig look like a zealot fighting a turf war rather than a serious ecosystem.

> The more I interact with the real world and mature as a person I don't think this statement has the effect you want it to have. You're not laying out the experience you're speaking from. You're just setting it up so that no matter how reasonable the next thing you say is, it will appear maximally arrogant and condescending.

I disagree. It's fine to contextualise that an opinion solidifies over time.

And your parent is right to point out that emotionally loading posts tend to be a disservice to the message being carried.

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#629
post #622

I think like most people, I don’t have a problem with Andrew “calling a spade a spade,” even if I find his reasoning motivated. The bigger problem with the post is that it talks out of both ends of the mouth: it’s clearly meant as a personal attack, but also insists that it isn’t. When I read the post, my first thought was that I wouldn’t want to build things in Zig, because any technical decision I make, good or bad…

> I can’t conceive of the leadership of the Python or Rust or any other community I’ve ever worked with doing something like that. I'd be prudent to use a clear faux-pas by a BDFL as an argument to push for an alternative, seemingly more consensual, leadership style. I'd also be careful to fall for the apparent lack of overt aggression in the latter type of structures, as a necessarily positive signal. I've seen peop…

Yeah, I don’t mean to detract from the serious communication issues that other ecosystems have.

(I don’t think committee/unstructured/BDFL communities do better as a rule, it’s more about the culture that’s promulgated by whoever is at the top, regardless of how many of them there are.)

Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

#630

Earlier quoted context omitted.

I would say the exact opposite, actually - Zig is a language specifically suited for TigerBeetle's all-at-once approach to memory management, and the approach more commonly used in Rust (allocate wherever and whenever) is non-idiomatic in Zig. > only works for very specific use cases. It's not clear to me what you mean by this.

> It's not clear to me what you mean by this. TigerBeetle calculates all the memory it needs at startup. It allocates that much memory once. It does not allocate memory dynamically. This only works for very specific use cases, like a fixed server size where you know exactly how much memory you want to allocate to a process. It’s not portable to general purpose computing, where it’s expected that apps aren’t allocatin…

> This only works for very specific use cases, like a fixed server size where you know exactly how much memory you want to allocate to a process.

So, like, the JVM with its "initial heap size" setting? After reserving that space from the OS on startup, pieces of the space are then handed out by the JVM's internal allocator, where and when needed.

If initial heap size and max heap size are the same, that initial one is the only malloc() call that ever happens. Not as common for desktop software, but a common best practice when deploying JVM applications to servers.

(I think we're perhaps tripping over two different meanings of "allocate" - you can "allocate" in the sense of calling malloc(), and you can "allocate" a piece of that reserved memory to a particular scope/function/object without actually calling malloc.)

> Allocating memory as needed isn’t a Rust-specific idiom.

I never said that.

Post reply on HN