Live data from Hacker News

Zig Creator Calls Spade a Spade, Anthropic Blows Smoke

raymyers.org

501–510 of 862 posts

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

#501
There are billions of lines of garbage code out there written in C, C++, Java, you name it. So much garbage, it has driven people to create languages with tighter guardrails to help programmers.

Yet, I've never seen those language creators blame anyone else. I don't recall Bjarne Stroustrup lashing out at people migrating from C++ to Java, Rust, or anything else.

Maybe humility is just a generational thing.

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

#502

Earlier quoted context omitted.

A drum I've been banging increasingly often recently is that having friction and time to work ideas over in your mind adds huge amounts of value. Vibe coded projects have this very specific, well, vibe to them where you can clearly see that the lack of time to digest has allowed the person to not challenge their own worst impulses. You can see it in the feature bloat, the lack of depth and polish in core features and…

I disagree with this, and I've been spending time thinking about it because some of my friends had a similar conversation. The friction itself does not add value. The time spent thinking on the problem does. Friction should be minimized beyond the absolute bare minimum. Programming is a discipline where your workstation is already streamlined, and it is easy to forget where the friction is. Programming is done in a w…

>Programming is done in a world of pure though, in a sense, so most of the friction already lives in your head

It seems that way, but that's not actually true. A fully greased-up brain would produce just incoherent nonsense decoupled from reality, because it would lack all constraints that would allow it to judge the value of an idea (i.e. how possible and useful it would be to implement in the real world). The friction comes from fitting your ideas into the real world.

>They reduced friction wherever they could so that they got the most work done that they could with the least amount of distraction.

They reduced unnecessary friction. They could have eliminated all friction by imagining a teleporter machine that can send you anywhere instantly and that runs on the hopes of children. But they still wanted the friction of unsuccessful attempts so they could actually build a plane that worked.

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

#503

Earlier quoted context omitted.

He essentially was having a tantrum

You're allowed to have a tantrum when a 10 figure company is doing a marketing stunt and shitting on your life's work to do so. If you spend X amount of years building something, and someone you know to be a mediocre dev trashes it in an effort to enrich themselves, you're allowed to expose the things you know about them. End of story. I wish more people would throw a tantrum . We should expose all these charleton an…

Kinda like how the Bun team spent years building their product then this guy trashes it? Except for real?

And he didn't "expose" anything but gossip.

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

#504

Earlier quoted context omitted.

According to Andrew, bun-zig is not something some brave soul would be eager to maintain. > We became increasingly horrified at the programming practices we saw in Bun's codebase. Hacks on top of hacks. Abuse of assertions. Most of all, recklessly speeding past feature after feature with very little time taken for reflection and elimination of bugs and technical debt. Just "1MLOC JavaScriptCore wrapper" is enough to…

How many lines of code is Node, which is a wrapper for v8? I'm aware bun is not great quality, I tried and abandoned it myself, but Andrew's consistently bitter and spiteful tone makes him the worst conveyor of his own message.

> How many lines of code is Node

src/ 143k

lib/ 127k

test/ 716k

deps/v8/ 3.6M

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

#505

Earlier quoted context omitted.

Are we talking about the same post? This is the one I’m talking about[1], and I can’t see where it’s claimed that Rust’s build times are better. Apologies if I’m missing it. (The one reference I found to Rust’s compile times is them talking about how they had to split their Rust rewrite into 100 crates. A plain reading of this is the opposite of what you’re saying: they’re pointing out that Rust’s compile times are s…

You don't have to claim that they're better, but making a big fuss about them in Zig - to the point of maintaining a compiler fork - and then not talking about it at all in the Rust doc (where it's apparent to anyone who's used Rust that compilation there is guaranteed to be slower) is dishonest or at least massively hypocritical.

The bun team made no mention of compile times in their post. The author of this post points to other work by bun that was hardly making a big fuss. It was just a Twitter post about parallelizing some things to make builds faster.

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

#506

Earlier quoted context omitted.

No one involved in the port proposed "blindly porting Zig code 1:1 and calling it a day". From the first blog post the creator said: > We can gradually refactor it to reduce unsafe usage and look more like idiomatic Rust after Bun v1.4 ships. What the rewrite does is make the unsafe code greppable, which is a necessary first step to eliminating it and one that's actually achievable rather than going straight to idiom…

> We can gradually refactor it Is quite a hell of a statement, when memory management issues are highly nonlocal and need some careful design upfront in order for you to nail it. Unsafe isn't something that you can gradually clean up. Even one single flawed usage of unsafe (an ill-assumed invariant) can poison the whole program in scary ways, and might require a total refactor of your codebase to fix it.

You're not helping your case.

So if I use Zig, I need to do all of that perfectly from day one and I don't get any help from static analysis to do it. Or else I've poisoned my whole program in scary ways and will require a total refactor where I still won't have any help and once again can't make a single mistake.

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

#507

Earlier quoted context omitted.

Yes, but your reply has now also recharacterized my original comment. I wasn't being pedantic. I was saying that LLMs even worse at writing for the web than humans, and humans are pretty bad! I'm saying this as a web developer.

>I'm saying this as a web developer. Do you think this gives your claim extra merit? You understand it does the opposite, right? What it actually achieves is that it makes you look like you're raging against the dying of the light, in utter and complete futility. Yes, LLMs are especially good at the web stack, given that training data is overwhelmed with enormous volumes of such data. It is the one realm that has bee…

The only dead end is this argument.

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

#508

Earlier quoted context omitted.

I would say the flagship Zig project is TigerBeetle, not Bun.

TigerBeetle has a unique static memory allocation strategy at launch time. It’s a strategy that sidesteps a lot of memory management issues but only works for very specific use cases. Their success with this strategy isn’t portable to most other projects. I think they really need more traditional flagship projects that generalize to typical memory management use cases. The way the conversation keeps coming back to Ti…

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.

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

#509
post #337

Earlier quoted context omitted.

Because underneath the code you have more than one architecture to support.

if LLM is your abstraction - you give it a task to produce multiple targets. EASY PEASY, next!

Determinism is a feature.

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

#510

Earlier quoted context omitted.

The very next sentence justifies why they didn't do it: it argues that they would have ended up with what was technically Zig but something that was much less ergonomic than what would be expected from Zig. You can argue that that's a bad justification for not doing it, but that's a debate on the technical merits, not a claim that they didn't provide justification.

As the article mentions, the follow on question from that is: why does that matter if your codebase is written exclusively by AI agents?

Because if you have to quadruple the number of tokens in your code base in order to make the Zig provably safe, you have 1/4 of the context window to do useful work.
Post reply on HN