- I have learned so much reading Andrew’s code and as I said in the original post: Bun would never have happened without Zig.
> The post claims they were fuzzing their Zig code, while during our calls the whole Bun team told us that they were not fuzzing anything. This appears to be an outright fabrication.
Fuzzilli integration: https://github.com/oven-sh/bun/pull/24826
Merged PRs fixing issues Fuzzilli found in Bun’s Zig code:
- https://github.com/oven-sh/bun/pull/28926
- https://github.com/oven-sh/bun/pull/28934
- https://github.com/oven-sh/bun/pull/29255
- https://github.com/oven-sh/bun/pull/29210
- https://github.com/oven-sh/bun/pull/29199
Searching “Fuzzilli” shows more PRs: https://github.com/search?q=repo%3Aoven-sh%2Fbun+is%3Apr+Fuz...
- Not sure I follow. Is "fuzzing their Zig code" somehow related to adding a Fuzzilli integration to Bun?
- Yes, "their" refers to Bun's code, not the Zig compiler's code. Fuzzili is a fuzzing engine for JavaScript, so integrating it into Bun means that Fuzzili is fuzzing Bun.[0]
From the Bun post[1]
> We fuzz Bun's runtime APIs 24/7 using Fuzzilli, the JavaScript engine fuzzer used by V8 & JavaScriptCore
From Andrew Kelley's post today[2]:
> The post claims they were fuzzing their Zig code, while during our calls the whole Bun team told us that they were not fuzzing anything. This appears to be an outright fabrication.
Sumner says that the Bun team has been fuzzing Bun's Zig code. Kelley says that this is a fabrication. Sumner showed proof that the Bun team has been fuzzing Bun's Zig code.
It looks like Kelley is incorrect and made an unfounded claim. The generous interpretation is that at the time Kelley and Sumner had a more collaborative relationship, Sumner was not fuzzing Bun's Zig code, but I'd expect Kelley to check if anything had changed since then before publicly accusing Sumner of lying in this week's Bun blog post.
[0] https://github.com/googleprojectzero/fuzzilli
[1] https://bun.com/blog/bun-in-rust
[2] https://andrewkelley.me/post/my-thoughts-bun-rust-rewrite.ht...
- AFAIU fuzzing code != fuzzing results. Through skimming it seems that integration tests were using fuzzing, but I would call it fuzzing the code itself.
From "product" perspective there's no difference, but in program-compiler perspective (and e.g. raising bugs about compiler), Fuzilli isn't fuzzing.
Per Wikipedia > (then...) The program is then monitored for exceptions such as crashes, failing built-in code assertions, or potential memory leaks.
As for myself, I wouldn't use term fuzzing for integration testing such the one used by Fuzilla. I always caught it dynamic testing, scenario testing and in bigger cases property based tests. Fuzzing in my mind is reserved to a low-abstraction calls.
Might just be me, though.
- I don't understand what distinction you're trying to draw here. The very specific claim[0] in the Bun blog post that Kelley is calling a fabrication was:
> We fuzz Bun's runtime APIs 24/7 using Fuzzilli, the JavaScript engine fuzzer used by V8 & JavaScriptCore
It does not look to be a fabrication, and is very explicit just about what they meant by fuzzing.
[0] I mean, that sentence doesn't actually match Kelley's paraphrase, but it is literally the only claim in the post related to what fuzzing was done on the Zig-based bun codebase. So it has to be what Kelley was referring to, and his paraphrase is as sloppy as his fact-checking.
- For me, using Fuzzilli for testing a Zig code is not fuzzing, it's integration testing. If you're running code externally (e.g. wrapping binary) you cannot guarantee that side effect isn't caused by IO. I consider fuzzing a low level activity with many external variables removed.
Depending on where you are and how you communicate semantics matter more or less. It's very similar to compiler/transpiler. E.g. TypeScript "Compiler" is called compiler but in fact it's transpiler (it emits other high-level language as a result).
- My point is that Kelley did not argue that what Bun does isn't really fuzzing. He wrote that the post's claim is a fabrication. But that claim is really specific, and to evaluate whether it is true it doesn't matter what Kelley's unstated definition of fuzzing is.
So an argument about definitions doesn't seem super valuable here.
- > For me, using Fuzzilli for testing a Zig code is not fuzzing, it's integration testing. If you're running code externally (e.g. wrapping binary) you cannot guarantee that side effect isn't caused by IO. I consider fuzzing a low level activity with many external variables removed.
I've never heard anyone restrict the definition of "fuzzing" in this way. If I repeatedly generate inputs to a program and then run the program with those inputs, that's fuzzing. It doesn't matter if there's IO or not.
> Depending on where you are and how you communicate semantics matter more or less. It's very similar to compiler/transpiler. E.g. TypeScript "Compiler" is called compiler but in fact it's transpiler (it emits other high-level language as a result).
It's still a compiler. It translates code from one language to another. You can argue whether we need the term "transpiler," but a source-to-source compiler is a compiler.
- > You can argue whether we need the term "transpiler," but a source-to-source compiler is a compiler.
That's true today, but compiling was historically was defined as getting source code (human readable) to bytecode (machine runnable without an interpreter).
Some people didn't like that definition, and consequently the waters have been murkied. Just like with eg crypto. Or real time.
- The conversation amounts to “You should fuzz your code” “we’re already fuzzing the big external dependency, using their own fuzzing setup that they already use upstream”.
It’s not nothing, but clearly not what Andrew meant.
- Why are you not using hyperlinks and adding links citation style?
- This is standard convention on HN for when you have more than one link. HN does not support masked links.
- Andrew means the zig build test --fuzz command probably the built in zig fuzzer, that's the tool that is in his scope.
- I have no buns to pick here in this discussion really, but doesn't it strike you as slightly pointless to specifically address one particularity of Andrew's blog post while not addressing a single other thing from it, or maybe try to move one step up to about the discussion itself, or something else?
Again, I have no dog in this fight, I "worship" neither of you, I'm just curious about the whole conversation apparently degrading rather than anyone of you trying to step in a different direction.
- You want to see him address being "a stinky manager", having "beginner energy", choosing to take VC as opposed to "a solid living via crowdfunding", or "already writing slop well before he had access to LLMs"?
Those are all opinions where arguing about them isn't going to be productive.
Countering the accusation of "an outright fabrication" on the other hand is worthwhile because it's a claim that can be countered.
If somebody called me a liar for something that demonstrably wasn't a lie I wouldn't let that stand, either.
- > Countering the accusation of "an outright fabrication" on the other hand is worthwhile because it's a claim that can be countered.
Hmm, fuzzing integration was merged 8 months ago. First found bug mentioned 3 months ago. Bun is 4 years old. I think both arguments can be true at the same time based on this evidence. It is entirely possible that for more than 3 years team has said that no fuzzing was done, and the first fuzzing was done just 3 months ago, and this information did not travel.
- If you're going to accuse someone of "an outright fabrication" it's on you to check that you're not wrong before you say that.
- I agree that ""an outright fabrication" is a bit too much.
But also the claims about the fuzzing in the original blog post are kinda too misleading. Fuzzing harness is basically just coverage-guided random bytes towards Bun's JS APIs and it will not really catch anything in depth from the code. Just the most obvious from the surface. And 24/7 fuzzing is introduced likely around the same time when Rust rewrite seemed to be main focus, as then the first issues were created. Current fuzzing does not give much trust about the code stability, but indeed the fuzzing has been started and likely improves in the future if someone puts some work for the harness.
- > And 24/7 fuzzing is introduced likely around the same time when Rust rewrite seemed to be main focus,
This is false, it was done many months before (Nov 20 2025). There is some irony in your comment being in reply to a thread about verifying claims before posting them...
- > This is false, it was done many months before (Nov 20 2025). There is some irony in your comment being in reply to a thread about verifying claims before posting them...
There is no evidence for this. It is integration PR to support fuzzing with one tool. The public repository does not have CI pipeline for it. Fuzzing is done privately somewhere, and the first linked issues are around April.
- > You want to see him address being "a stinky manager", having "beginner energy", choosing to take VC as opposed to "a solid living via crowdfunding", or "already writing slop well before he had access to LLMs"?
No, that would also just continue to degrade the conversation, instead I'd expect one of them to step upwards instead, elevate the conversation in some way. But also, I typically don't follow "tech semi-celebrity drama", maybe I'm expecting too much from them, they're human after all too.
- Those statements are all consistent with the publicly observable facts like this whole thing going from "I'm experimenting with this" to "this is merged into main now, yolo" within a week or so. The complaints from Jarred on the amount of bugs they've been having is too.
It all checks out.
- Bun donates $60,000 per year [month] and Jarred acts with graciousness and soft tones when talking to outside parties. Why do you think it's Jarred's obligation to continue after being insulted for professional dishonesty?
Isn't it Andrew's obligation to show that he was worth that much kindness to begin with?
- > worth that much kindness to begin with?
Maybe I'm overly cynical, but I don't know that directing some funding towards the open-source project that is the foundation of your whole tech stack is really "kindness" per se.
When you are vending a devtool to other open-source developers, and making a lot of hay about the specific technology choice, it's basically marketing spend. It's also often a way of buying favour (attention to issues, PRs, etc) from the project maintainers...
- > Bun donates $60,000 per month
Per year, not month.
- Your links show you used a fuzzer, but that doesn't address the other half of Andrew's statement. Is Andrew misreporting/misremembering your conversations?
EDIT: It's really telling that asking a factual clarification question is somehow downvote worthy. I probably shouldn't be surprised, but this epitomizes the reason online discussions devolve in to flame wars (even moreso than real life, though it happens more and more there as well).
The answer could be as simple as we didn't use a fuzzer until recently so both are accurate. I honestly don't know, which is why I'm asking. Yet somehow just asking is triggering to people.
- Or, did the whole Bun team indeed state the otherwise to Zig?
- Without having any opinion on whether or not the Bun team was meaningfully fuzzing their codebase... Andrew's claim was not about whether or not they were, it was noting that the story was different between what they claimed in conversation and what they stated in this article.
- This is unprofessional and embarrassing for Zig.
I know very little about Jared but his article yesterday, which I read, seemed appreciative of Zig. I now learn he's donated significant chunks of money to them.
This entire article is publicly and personally attacking him for choosing a different product.
It's insane to me that Andrew thinks this post will somehow exonerate Zig when it really just makes them look childish. Or maybe he doesn't care, and just wants to attack Jarred?
- It's kind of strange to not engage with any of the points made in the article. Unlike you, I don't think the post makes them look childish at all. I think it raises a lot of valid points and makes me want to use Zig more.
- > It's kind of strange to not engage with any of the points made in the article. Unlike you, I don't think the post makes them look childish at all. I think it raises a lot of valid points and makes me want to use Zig more.
I know nothing about the drama here other than what's in the blog post, but these feel more like unnecessarily public personal attacks which don't really reflect well:
- a stinky manager. Poor communication, unrealistic expectations, low empathy, no experience. Just a total shit show, from an employment perspective
- already writing slop well before he had access to LLMs
- their vague "sell some cloud something" business plan was a farce
- I also know nothing of the drama, but what I picked up from the first blog post was that even with access to near unlimited funds and unreleased god-tier coding llms from a trillion dollar AI corporation it was apparently impossible to fix a backlog of bugs in Zig code but it was possible to fix them by automatically doing a rewrite in rust.
I can see why that might feel like an existential attack on Zig even if starts with a bit about how great Zig is.
So pointing out that the zig code was full of bugs because the author was doing weird stuff and ignoring advice, couldn't hire/retain any good Zig devs because he mismanaged people and is the kind of guy to do a full rewrite because that's more interesting than fixing bugs or learning the old tools feels like stuff he'd want out there in the public domain.
- > So pointing out that the zig code was full of bugs because the author was doing weird stuff and ignoring advice, couldn't hire/retain any good Zig devs because he mismanaged people and is the kind of guy to do a full rewrite because that's more interesting than fixing bugs or learning the old tools feels like stuff he'd want out there in the public domain.
All of what you say may be true, but the point remains: the Bun project lead can do whatever the hell he wants with his own project. There is no objectively "right" path here, in a moral sense.
People are allowed to rewrite their own software whenever they want to for whatever reasons they want, people are allowed to be "stinky managers" (Andrew's words), people are allowed to only hire people who want to work 7 days a week, people are allowed to only work on things that interest them, people are allowed to write crappy, hacky code in their project.
What business is it of Zig's that Jarred is (apparently, secondhand) a "stinky manager"? What business is it of Zig's that Jarred wants to run his own company the way he wants to?
Going after the guy's character after he decided he wanted to go a different direction is _incredibly_ petty.
It's so easy to deal with this like a professional: "Zig and Bun are no longer affiliated. I thank Jarred for his contributions to Zig over the years and wish him and the Bun project the best." or some variant of that. Bland and corporate, but who cares? It's done. Move on. Save the grousing for the DMs, keep on attracting new contributors, avoid alienating bystanders/potential contributors, build your project.
This post does nothing to burnish the reputation of the Zig project or its leadership, and in fact has the opposite effect. The message from the top is apparently "it's fine to be petty and vindictive".
- I agree with the spirit of what you're saying: that many aspects of this post seem unnecessary. But I do think there are reasonable answers to your (admittedly probably rhetorical) questions.
Zig is a relatively young language with a small community, and Oven/Bun is one of few places that someone could previously have written Zig code professionally. It's therefore Zig's business to make sure that either it's a good place to refer community members for work, or that they don't explicitly encourage people to work there. Likewise, as one of the highest-profile Zig projects, the community's leaders were understandably invested in making sure it represented the language well.
I feel like I am exactly the target audience for this post: someone who uses Zig regularly, but hasn't touched Bun, despite being aware of it. While I would have proceeded differently than Andrew Kelley here in terms of framing and phrasing (and leaving out some parts entirely), I do think reading this gave me new information about Zig's relationship to Bun. A dry, professional post like you suggest wouldn't have given me any new information at all.
- > I actually don't have any personal criticisms of Jarred.
was the cherry on top.
- Those are not personal criticisms, those are all professional criticisms. There are many people who don't seem to know the different between work and life and so they may conflate the two, but to me it's pretty obvious.
- > There are many people who don't seem to know the different between work and life and so they may conflate the two, but to me it's pretty obvious.
Nobody is conflating anything, you're just misinterpreting the same words with different meanings.
A professional criticism can, in fact, be unprofessional, and even a personal attack. These are not mutually exclusive.
> Those are not personal criticisms
You're using "personal" to mean "regarding non-professional matters", whereas others are using "personal" to mean "regarding the individual person themselves".
> those are all professional criticisms
You're using "professional" to mean "regarding the profession" whereas others are using to mean... you know, the opposite of "unprofessional".
- Yes, professional has two meanings in use here. Professional as in relating to one's profession, and professional as in how one may be expected to behave when carrying out one's profession.
In my comment I was using the former.
I'm not really sure what you're on about me "misinterpreting" something. The author of the article claimed to not have personal criticisms, and I was pointing out that there's a standard interpretation of those words that is true.
- > others are using "personal" to mean "regarding the individual person themselves"
Following your logic, we cannot critique anyone in particular ever. How absurd!
> You're using "professional" to mean "regarding the profession" whereas others are using to mean... you know, the opposite of "unprofessional".
At the end of the day, it is the same thing. Person does what is their job according to common standards.
Andrew runs a software foundation, and it is his job to make sure that behavior of one of related projects does not disrupt the stream of all donations or buries his project under a pile of slop submissions. Highlighting the technical dysfunctions of the other project is an effective way to show the differences between the two. Do you have a suggestion that would be just as effective, while being more "professional"?
- "a stinky manager ... Just a total shit show" are examples I would reach for to demonstrate someone is not being professional.
- I don't know why choice of language is having such sway in determining what you view as professional. Maybe it's just a cultural difference but where I'm from people just use the words they need to to communicate what they're trying to say. If something's a shit show I'd prefer someone just said it rather than dancing around it with corpo-speak.
- > I don't know why choice of language is having such sway in determining what you view as professional
This is a blog post: it's purely textual, language is the only thing it uses to convey meaning. The words chosen to do so reflect what the author thinks.
> where I'm from people just use the words they need to to communicate what they're trying to say
Yes. What ark is trying to say, via the words he chose, is what's earning him the description of "unprofessional".
He could say every factual thing in the blog post without being unprofessional, he just chose not to.
- I think you're, intentionally or not, misinterpreting my comment. Language is used to convey meaning, and Andrew wrote words that presumably meant what he meant them to mean. However, in many comments on here people are not commenting on "what he meant them to mean" and instead focusing on which words he chose to convey that meaning.
I'm sure Andrew could've switched out every word in the post and still conveyed the same meaning, and perhaps offended the peanut gallery's sensibilities a little less, but why should he?
In the example I was originally replying to, suppose Andrew had instead said "Jarred showed poorer than desired management abilities" and "Employees disliked working at Oven". Approximately the same message is communicated, a little watered-down maybe, but who's gaining from this tone-policing? Certainly not us, the readers. And I don't see how this affects how "professional" this is, unless "professional" is just performative nonsense and nothing to do with the substance of the text?
- > And I don't see how this affects how "professional" this is, unless "professional" is just performative nonsense and nothing to do with the substance of the text?
It changes my opinion of whether I trust ark to actually be right, or whether he has (and will continue to) let his emotions get in the way. The particular quote I noted was
> We probably tried to tell you to try enabling it and you didn't listen. We have good advice, damn it!
He wanted to say this, more than he wanted to know if he was right. It reduces my trust in his judgement.
- Do you normally assume that if someone shows any emotion that that emotion is "get[ting] in the way"? People's emotions are influenced by real things, and they don't have to speak dispassionately about those things. Especially when the blog post is entitled "My Thoughts on ---".
I don't know what you're getting at with your final paragraph, I feel like he's in a pretty good position to assert something he probably did or did not do.
- As someone from a cultural background that is considered very direct and blunt, I can say that there is a rather fine line between being direct and being an asshole.
This post devolves into a personal attack one sentence in. There was no reason to go into Jared's life at all to begin with. The entire post doesn't need to exist at all if you're confident that Bun leaving will have zero or even positive impact. Why turn an already negative event of a slop rewrite into drama? It's petty and immature.
- If you view that first sentence as a personal attack I'm not really sure what response I can make here. As a sentence it almost says nothing at all. 'When Jarrad started he gave off a real "starting" vibe'.
Also I learned nothing about Jarred's life from this post, so I don't understand that point. That he lives or lived in San Francisco I guess, and didn't go to university?
- Well, first off, it's literally the first sentence of a post which is ~62% about Jared, ~26% about the rewrite itself and 10% closing thoughts. It also sets up Jared as a beginner who apparently never learned.
Again, this post never needed to say anything about Jared. It looks weird to pull him in in literally the first sentence. It really shows what you're actually writing about.
- This blog post about Jarred never needed to say anything about Jarred? What on Earth does that mean? It is a response to a blog post written by Jarred, about actions taken by Jarred, and yet you think Jarred shouldn't have been mentioned.
- It's not really titled "My Thoughts on the scumbag Jarred Sumner" though, is it? Nor does Jarred's post even mention Andrew by name.
Should Jarred's post have mentioned how Andrew kept bikeshedding Bun code style and how he always felt superior about others?
- Also notice how I didn't have to bring up Andrew soiling his Pampers when he was a wee beginner.
- It's a good thing there's nothing of the sort in TFA then?
Quoting:
"He moved fast and tried a lot of different stuff, jumping head first into problems that he was not yet equipped to solve, leading to mediocre outcomes in terms of engineering, but learning a whole heck of a lot in the process. I see it as quite a healthy attitude, particularly for young people and students. This is the best way to level up and learn new things."
I don't know, maybe you just don't understand what he's saying here? Or rather, are applying some sort of a negative spin to what is a factual analysis of a valid approach to doing something?
- My issue with the paragraph is that it doesn't really connect into anything meaningful. It's just saying that Jarred was a beginner.
The only connection it has is as a segue into calling Jarred a terrible manager here:
> It was at this point - when he suddenly became a manager - that this "beginner energy" started to hit differently for me.
Note how "beginner energy" is considered good in the first paragraph, but suddenly terrible when applied to a different thing here. Terrible work culture aside, and the fact that it seemingly worked out for those who joined aside, Jarred would obviously have beginner energy in management as well considering he's not done it before. Why is it suddenly bad here?
Honest question, is there any record of Andrew actually saying Jarred had "beginner energy," or was this invented for the post as well?
- That's true, claims of professional dishonesty is a kind of professional criticism. Shall we begin discussing whether Jarred is the kind of person who makes up fake conversations about Andrew?
As fellow professionals in this field, shall we engage in this very professional debate about Jarred's honesty as a moral human being?
- Yes, perhaps Jarred is professionally dishonest, making up fake conversations about Zig. That is the most salient point in the whole article, and Jarred shows up to simply post receipts with kind words and minimal commentary.
Would you like to discuss that point as a fellow professional in the field?
- What points? All I'm reading is just a collection of emotional ad-hominems.
- The points in the article aren't great. It opens up personal and stays personal. As people in this thread have pointed out, several of the falsifiable bits turn out to be false.
The big thing though is, you get to the end of it and have to ask: why did this need to be written at all?
"It's almost like the marketing department of a trillion dollar company has a lot of money riding on this article."
He does get that Anthropic is Don Draper in the elevator meme here, right?
- FWIW I was really interested in Zig and now I see that its lead developer is thin-skinned and bitter and has confused minimal criticism of his project with an attack on his person.
This is such a bad look and it's also flatly self-contradictory. He spends time in his conclusion asserting he doesn't have any personal criticisms of Jarred but he's fully happy to claim, reframe and repeat everyone else's, even criticisms he evidently heard in private.
You can also see that it was incompletely rewritten from a pure, personalised and personally-directed rant: "I noticed that you…" does not belong with the rest of the text.
Whatever the merits of Claude-driven rewrites (I suspect few, long-term), the article he is responding to has little to none of the vituperative quality of his own.
I think if it needed a response, and I was this angry, I would have written this whole post as a draft, filed it away in Apple Notes, and then posted "I have, yes, seen the article on the Bun blog; you don't need to send me it anymore! I will respond to parts of it in the future as and when they are particularly relevant."
Writing the response post can be valuable as emotional release or exploration. Posting it in this sprawling, mean form was dumb.
- This entire thread puts me out on devs. I stuns me that there are this many people who either excuse or cheer on being hateful. Wanting to use a project becaues the author was this rude....what?
Just a complete lack of emotional intelligence. You do not treat people like this.
- I've read some of your other comments in this thread and I completely agree.
It's dismaying how many devs seem unable to distinguish poor project leadership/communication from being a bold truth-teller "telling it like it is".
This is a major project lead demonstrating that if things don't go well between him and you, he's going to retcon your whole relationship, collect gossip about your company and management style, chastise you for your life choices (taking venture capital?), talk shit about your code and your project, question your moral choices, and then publish all of it.
This insistence on "being right" is really caustic. It's just ugly.
- Bro lol is this like your first day on the job? The faux "brutal honesty" as a personality trait is what smelly antisocial computer nerds have always been known for. Just ignore them.
- >Posting it in this sprawling, mean form was dumb.
Thank you for putting my thoughts in words I can never string together so well.
I too would just stash the letter in my ZFS dropbox and never let it see the light of day again.
The letter reads like a husband who was just served a divorce notice from his wife. The man is angry, and wants everyone to know that he is not angry, and he is very much not bothered by the whole affair even though he has misgivings since the first day of marriage.
The letter would be much more convincing if it has any technical rebuttal against the decision.
- And I see AI maximalists circling the wagon.
- Do you have bias? I'm not saying I don't have some hidden bias but I have no skin in the game. I don't use Bun or Zig or plan to.
My reflection comes after reading Jarred's post yesterday, which I found interesting, and then Andrew's today.
I just pasted this article into an LLM to understand the tone and the summary is:
> The overall tone is deeply personal, cathartic, biting, and polemical, with flashes of humor and a deliberate attempt to soften the ending.
- Did you have a hard time picking that up from the article itself? I don’t see the point of asking an LLM to tell you what to feel about the article.
- I'm rather critical of spamming humans with low effort LLM writing as well, but getting a neutral opinion about a text seems like a decent use tbh - for lack of alternatives because you'd hardly ask a human to do it.
Conventions are still being made, and I think this use might end up being acceptable.
- How is pasting an article into an LLM going to get you a neutral opinion? It'll be at best an 'opinion' that aligns towards the fine tune dataset used by the org that made the LLM. I'd rather people own their own bias and bring something into the conversation rather than act as a mouthpiece for a statistical median.
- i think only if you contrast it with your own assessment. just using LLM to get an opinion is bad. eg: after reading the article i felt this X. LLM says it's Y. then draw conclusions from that.
myself i found the article contained a bit to much personal criticism. the kind that eg. on hackernews would not be welcome. so i guess i mostly agree with the LLM assessment.
- I'm glad that you asserted that you do have potential hidden bias and say that you used an LLM to judge the tone of an article partly pertaining to AI usage in coding right after.
- Let me check real quick with ChatGPT if you are being sarcastic or not.
- Edit: Ah, my brain's been fried by comments that say this unironically and I read this as sincere, thanks commenter below, and apologies commenter above.
- They are saying that someone who will summarize an article with AI is already implicitly biased. It's not about the AI, it's about the user.
- > I just pasted this article into an LLM to understand the tone
That's your brain's job, don't outsource it.
- I think I have some bias. I like rust. I like using opus, I don't want to use zig, don't see the point for it, but I find it aesthetically pleasing. I don't use JavaScript I wish it would disappear. If I did ise JavaScript I wouldn't run it on bun. Some of those tilt me either way. I agree with the LLMs take on the tone. The result of the two posts is that I think Jarred is a poopyhead, andrew is a bit childish but genuine and I'd probably like him, and I still won't use zig or bun or JavaScript. I plan to keep using rust and opus.
- Bun is better in rust and they can finally break up their relationship.
It's not a happy breakup, but not a super sad one either.
- Uhm, I'm very confused by the last part of your comment. You put it into an LLM to...understand the tone? Is that supposed to convince me of something?
- They phrased it poorly, but from context it seems clear they intend the LLM as a less biased third-party measure of the tone which agrees with their own assessment.
- which they very much are not
- Less biased? Maybe on political questions, etc, but this is a classic NLP task and I expect LLMs to be very reliable here
- LLMs are predictive engines based on Reddit data, what they generate is very far from neutral
- Reality check. The confirmation that the author is not alone in having this particular feeling by using an LLM as a proxy.
- Using an LLM as a proxy for an 'unbiased' source of personal confirmation bias is perhaps the most common 'use-case' for an LLM.
- I guess they use an LLM to work out the tone of prose they read. These are strange times.
- Very weird indeed. People must not realize that you can completely change the response you get back from an LLM by how you ask questions. Any bias can implicitly be implanted in the question you ask and drastically modify the response. This is what I got Gemini to say about the article:
very different from "The overall tone is deeply personal, cathartic, biting, and polemical, with flashes of humor and a deliberate attempt to soften the ending."The author’s tone in this piece can be described as brutally candid, deeply relieved, and unapologetically sarcastic.- Not very different, mind you.
I don't really agree with using LLMs to do this but it correctly identified the attempt to soften the ending, which is to my mind significant in the whole piece; this person wants to repeat and frame unkind things he's heard, say unkind things, and then assert that he wasn't doing either.
- Personally I don't think that matters, because the article is problematic enough when it can be read like ad hominem. Assuming that the question was phrased reasonably neutrally (but not necessarily free of hidden biases), the fact that LLM concluded so is an enough evidence here. Also as a non-LLM data point, I felt roughly same (especially the "softening" bit).
- this is what worries me. I have friends that love what AI tells them about their personal pet 'thing' and how awesome it is. Yet not one of them has even tried once to get the AI to criticise it's own answers, and hence learn that you can trivially get an AI to make a convincing-_sounding case for any point of view.
I tell them to try, and they laugh at me as they roll their eyes and waffle on about 'tricking' the AI like its some kind of hacking.
- Please, I'm begging you, and the people that scan across this comment: Finishing mastering reading comprehension; It will help you for the rest of your life.
I'm not snarking, this is a problem affecting 30% or more of the population here in the states, and it's getting worse because of tools like AI. I'm not judging you, I don't think you are bad or deficient people, but this externalsing of comprehension and trust is self-harm.
Worse, it will lead you astray in ways that you won't tie back to this core problem.
To use an LLM safely you must have the discernment to understand when it has fallen into sycophancy, folly, or madness.
- How is it unprofessional when it is simply someone giving their honest personal opinion on an issue that involves something that is valuable to them, on their personal blog nonetheless.
Is everyone a walking and talking brand now so that they have to always filter their words, walk on eggshells, hide behind corpo-speak so as to seem 'professional'?
More honest discourse is required in today's world, not less. It seems interactions online are becoming less and less authentic.
- Yes, “corpo-speak” is the language of professionalism.
- It's also a language of distancing from personal experience and honesty.
Not saying you're wrong. Professionalism is an important tool for maintaining professional relationships. Lack of professionalism is dangerous to the point where it is reasonable for certain kinds of societies to begin to shun people who don't engage with it.
And, at the same time, a certain amount of emotional honesty can be really important to share, too. And that includes some amount of judgement and criticism.
It sounds like Zig's relationship with Bun is over. While Anthropic/Jason/Bun did not write a personal narrative about the end of that relationship, they absolutely were the initiators and could not have done this in a more aggressive way. It feels to me to be approximately the equivalent of moving out in secret and serving the divorce documents through your lawyer.
- Nah, corpo-speak is the original slop. The result of too many comms/legal inputs to a conversation.
Professional communication is direct, clear, and ideally courteous (but only to a point).
- What is managing legal and PR risk if not professional?
- corporate != professional. Plenty of professionals who do not work in those highly risk-averse corporate roles
What's the actual risk here? I guess he could sue Andrew for slander, and then prove in court that his management style doesn't suck, and his code is not slop...
- The risk here is that a deep-pocketed entity elects to forgo funding Zig development because they don’t want to sign up for this level of dirty laundry airing if things go poorly.
- Calling someone’s code “slop” surely isn’t professional nor courteous.
- Nor is polemic against financiers.
- Well, I can't think of other people more qualified to know when a Zig code is slop.
- > Those people talked to each other. Everybody talked to everybody. The grapevine was large and healthy and full of juicy grapes, and all those grapes contained the juice of the same message: Jarred was a stinky manager.
There’s a big gap between corpo speak and “stinky manager”. That’s nowhere close to professional writing. And he’s not giving us his personal opinion, Kelley is telling us the conclusion of the “grape vine” - he’s reporting on rumors and gossip, and agreeing with it.
- Why does this person owe you "professional writing" on their personal blog?
- he doesn't owe it, but his writing reflects on him and the project. personal blog or not, the writing shows his personality, and that in turn affects how comfortable i am using a project led by this person. if this was just one of many zig developers then it would not matter as much, but as this is the founder and leader, his personality has a major impact on the project as whole. especially in how it attracts contributors, and how long those contributors will stay around.
- Maybe it's just filtering for the right contributors? More isn't always better ¯\_(ツ)_/¯
- [delayed]
- He doesn't owe me anything. But his community deserve better than this.
- He's not operating personally as the leader of a major project.
- > He's not operating personally as the leader of a major project.
What? So let me get this straight--if my open source project which I have given away for free becomes "major" (for some definition) then all of a sudden I have to filter my writing through some kind of average acceptableness test? Come on. [edit] It would be one thing if this was published on Zig letterhead, but it was the guy's personal blog...
- You have to if you give a shit about the community you are leading, yes. You're not operating as a private figure in that role, everything you do affects the community and it is blind or selfish to act otherwise.
- This is so deeply wrong. This person owes you nothing. You're accusing them of "selfishness" after they've given away thousands of hours of their time... Your entitlement is just breathtaking.
- giving away thousands of hours of work does not entitle you to be abusive to your users and contributors. i am entitled to walk away from your project if i don't like your tone.
- you have to if you want to continue to attract users and contributors. if you don't care about that then feel free.
- [dead]
- Treat it as a data point and make your own decisions (he does back it up with several sources that indicate a workaholic mentality with that expectation for others). Hiding it ends up perpetuating the behavior unseen.
*Below is an aside that explains why I think it's better to air these things even if it seems like "rumors and gossip."
I know first hand how toxic some people are irl compared to their public persona. There was a professor in my department during my PhD who was known to be a slave driver, but there are no accounts of it outside of the department. We would have to warn incoming students about working with her, though sometimes they wouldn't believe it could be as bad as we said. I spoke with one of her students after she left the lab due to being hospitalized for exhaustion from overwork: the professor contacted her while she was still hospitalized and asked her to complete a task ffs!
- > This entire article is publicly and personally attacking him for choosing a different product
The article seems to be happy about the switch to Rust, that point is re-iterated multiple times in the article, and seemingly they were both awaiting Bun moving away from Zig and wishing for it.
- I feel the same way as you do. Honestly, even though it was well-packaged, I did find it a bit rude. But since I don't know their personal relationship, it's not really my place to interfere.
- The people who steal with AI and give no credit to the actual creative forces (that they are stamping out) are the fucking rude ones.
I just return to them the kindness they show me when they say, "You made this?? I made this!!"
- I understand your anger too. AI did steal open source knowledge, and I agree with that part.
But separately from that, I think it's a bit unfair to talk about the people associated with it in such a dismissive way.
In reality, humans aren't purely rational beings, and I can understand why the Zig philosophy and the Bun manager who joined the AI side might not have looked good from that perspective. But I think that's a separate issue from the emotions involved.
- > AI did steal open source knowledge
It's really sad to see my fellow FOSS enthusiasts adopt this very strange vocabulary from the anti-pirate people. No, no one has stolen anything, the knowledge is still out there. No, you cannot even "shameless copy" from something that is asking the world to copy from it. Literally the point for me and others is that what we put out can be used by anyone for anything, that's why we use FOSS licenses in the first place.
- you cannot even "shameless copy" from something that is asking the world to copy from it
yes you can if you do not honor the license that the original was released under.
that's why we use FOSS licenses in the first place
some FOSS licenses are intended to insure that the code remains open even after modification. that's used by anyone for anything under the same license.
- Yes, fair, I agree; follow the license, that's the single both legal and social expectation.
- Fine, they're leeches. My problem is that if everyone behaved as selfishly as they do, there would be no more nice things for anyone.
- > Fine, they're leeches.
But of the points is that no-one owes anyone anything, if you use my code I don't owe you support or anything else and by you using it, you owe me nothing either, no money, effort or anything else. Sure, if the maintainer want, it's nice when people fix the issues for the maintainer, as long as they want it, or that people and companies donate when maintainer set that up, but in no way should that be an expectation just because the creator slapped a FOSS license on what they made public. Don't want people to (mis)use, criticize, mangle, transform or copy what you've created? Don't use those licenses then.
This whole "no warranties" and its related intentions goes both ways, intentionally.
- Again that behavior is legal but antisocial
- Again, I disagree, it's following the social expectations if anything.
- if you use my code you owe me to honor my license, unless that licenses explicitly frees you from that obligation.
- I just think you're fighting a losing battle. I'm pretty apathetic about it because I've never wanted to do anything but give away my stuff anyway. It only has value in my/your head most of the time.
I think how deeply you care about this and the way you castigate other people is unhealthy and it is critical for your own well-being that you come to terms with it.
- Unhealthy, yes. Well being, not so hot these days. But I could give a damn, cause I'm going to replace Git and Github both and have my name written in the history books.
As Lin-Manuel Hamilton said, "God help and forgive me; I want to build something that's gonna outlive me."
- It's not just in the past, and my anger isn't just about what was taken, but the community-destroying use it is being put to: Andrew's job isn't to make a JS runtime, it's to sell the idea that coding is dead.
When he made it his job to sell that narrative, he declared war on me. It should not surprise him or anyone else that I am going to take the war right back to his doorstep.
- There are some points I understand rationally but find hard to agree with emotionally.
What I understand rationally is the claim that AI is destroying your garden and community. It's an undeniable fact that intellectual property and the associated disruption are happening. That's simply true.
But what I find hard to agree with emotionally is that personal attacks aren't always justified just because of that. I've also been affected by AI. I had to create a new homepage because the traffic to my technical blog dropped due to AI. Of course, there are also benefits. As a non-native English speaker, it opened up a new path for me to access good programming resources, which I couldn't easily get before. So I have both affection and resentment.
Still, I understand your feelings. Because for you, the emotional anger of having something you built destroyed without any compensation is real. Our situations are different.
That said, I don't think that necessarily justifies attacking individuals.
People often think of blogs and homepages as places to write 'personal stories.' But once they're made public, they carry responsibility. And Andrew Kelly is a public figure—his words spread easily. So there needs to be a certain level of responsibility when writing.
In any case, I respect your perspective
- Again just to make the nuance clear: nothing I've built has been destroyed. What makes me red hot angry is the message that there's nothing left to build -- that the world will soon belong to the people who just mindlessly copy (Jarred and his ilk). They have been quite crystal clear in their message to me: not using AI makes me worthless garbage to be taken to curb, a snack for anyone using AI.
You see how many times people can tell YOU that you are worthless garbage before you start thinking, "I'm going to punch back at the people who punch me." 20? 50? 100 times you get punched in the face before you start to consider self-defense? Cause I've read that piss-poor message 50 times: "you will be replaced."
- That's just them being cruel, not your fault.
Your skills and knowledge aren't your entire worth. I think you're a perfectly fine person. They just said cruel things that hurt you. Don't let that define you.
I actually think if people become mindless AI imitators, creative people like you will become even more competitive. Of course, I think you can still be creative even while using AI, but the kind of creativity we're talking about is just different.
Why bother fighting them? They're just people who are anxious themselves. I don't think you need to waste your energy defending yourself over such a pointless issue.
The claim that you're useless trash just because you don't use AI is wrong. AI is just one kind of workflow. You and they just didn't click.
As for people calling me useless trash, well, I hear that all the time. It's part of the freelancer life. But even so, that's just their opinion. I don't think of myself that way.
It's just that our environment makes things painfully difficult for us, my friend.
I'm sorry you had to go through those cruel messages. But I don't think they define you. You're a perfectly capable person, capable of intelligent conversation. You just chose not to adopt one particular workflow. That's not your problem.
If we keep talking, we might just end up hurting each other's feelings, so let's stop here and take a deep breath. Have a good day
- > This is unprofessional and embarrassing for Zig.
It is. It's also why Anthropic and Bun moved off Zig.
Zig is effectively a one-man show, and that one man has been making increasingly erratic decisions.
It's his project so it's well within his rights, of course. But when you're a ~trillion dollar company you don't want to get hit by a supply chain risk like this.
For Anthropic, it's better to nip this in the bud rather than invest more into the Zig ecosystem, where there's a demonstrated risk of the not-so-BDFL going off the rails.
- > It's insane to me that Andrew thinks this post will somehow exonerate Zig when it really just makes them look childish.
Antirez made a post equivalent to: you'd be a fool not to use AI to increase test coverage.
Zig on the other hand has embarrassingly low test coverage given its adoption and time in development.
Their stance on AI is completely childish. They could benefit massively from it, yet refuse to even consider any potential usage.
It's one thing to try to stop PR spam. It's another thing to tie your hands behind your back and not even use it internally for the lowest hanging fruit where it could have major benefits.
They could use AI to triage potential real bugs from PR spam... but instead they just let real bugs go unnoticed for longer than need be because they won't even use AI to help triage...
- I am fine with people having principles and doing things their way. Not everything has to be a race to be the best. There are still plenty of people that appreciate traditional crafts. Anyway, if Zig+AI can be the next, greatest thing, can't someone just fork it and make it happen?
- No one cares enough of zig to do it, people will just continue moving to Rust and similar.
- People are doing the simpler thing: moving ecosystems more suppotive of their goal.
- in what way is it chidlish to have a principled position like this? you may disagree, i def use llms. but andrew has clear reasons for why he doesnt.
- Childish or no, anti-AI sentiment is ubiquitous and growing.
From a PR perspective there’s a lot to gain in the short term by picking the “anti-AI” lane. And you can always change your mind later.
- Surveys show that 60% of US adults don't like it which means 40% either don't care or do. I'd advise not getting your ideas about sentiment towards it from places like HN which are very biased and unrepresentative places of anything.
I find the anti crowd increasingly to be hateful and close-minded and it is disappointing because I have a lot of friends in it. There's a moral puritanism which gives people feelings that they are on the "right" side and thus any level of rudeness or hatred is justified and it only hurts their side.
- I don’t disagree with your characterization.
But from a purely Machiavellian perspective I don’t see a lot of downside in courting this group in the short term.
- It's ubiquitous among dinosaurs. Don't worry. They will be left behind.
- Bahahaha no, your little of time of delusion is coming to an end. Real engineers are coming back.
- Real engineers don’t eschew powerful engineering tools because of what their political tribe says about them.
- [dead]
- > Zig on the other hand has embarrassingly low test coverage
And? Why would low test coverage matter. It’s not an indication of project quality nor does a high coverage mean an absence of bugs or errors.
- No, it's embarrassing being obsessed with good tone to the point that people behaving badly should never be called out for it.
The article provides good background into how it got to this point - and it fits well with doing an opportunistic AI rewrite after being acquired by an AI provider.
- It is not about good tone it's about not being hateful and rude. Why is this that hard to pick apart?
Why do devs believe being rude is somehow a sign of honesty? They are orthogonal. This post needed none of the mean-spirited attacks that it contained to make its points. It is only hurt by the attacks as seen by the focus on "tone" throughout these comments.
- It's all about tone. The original bad behavior is done without overt "bad tone" but if the response to it is spicy then the former is ignored and the latter is condemned despite being of lesser severity.
I can buy that it can be good corporate politics to not upset the superficial crowd that will immediately lash out on tone, but I will not judge someone rightfully reacting on bad behavior that they've been on the receiving end of.
Also, I didn't say being rude is a sign of honesty, that's you extrapolating.
- You can call it superficiality but there are just some of us who believe that treating people right is the core of this. You're viewing that as some kind of superficial virtue signaling but if we're not treating people with respect then there's not a point in doing any of this, it gets to the very thing that Kelley is complaining about.
- I just don't think it's fair to expect people getting shit to be expected to use kid gloves when responding to it.
- The argument isn't to avoid calling out "bad" behaviour, it's that you can do so with a professional (or at least not actively childish) tone. Using phrases like "stinky manager" while taking multiple jabs at Jarred's personal and educational background (implying by not going to university he was too stupid to think critically about his path forward) paints a weirdly childish yet elitist viewpoint. The blog post reads as vindictive, akin to something along the lines of "screw you kid, glad to be rid of you, and thanks for the $120,000 btw."
I don't interact with Zig or Bun, but I certainly haven't been enticed to try Zig after this.
- I'm sorry but I honestly think this is just being superficial wanting to push it through some kind of corporate speak filter to be able to stomach it.
> Using phrases like "stinky manager"
I would've used a worse adjective given the WLB tweet etc. Is it just because stinky itself has a childish tone to it rather than something like shitty? Or do one need to reach to somewhat open-ended terms like "questionable" to be palatable?
> implying by not going to university he was too stupid to think critically about his path forward
I read that as emphasizing the Thiel Fellowship part, not the lack of university education.
> I don't interact with Zig or Bun, but I certainly haven't been enticed to try Zig after this.
I'm so tired of "I've never played [game] & have never had any intention to play [game] whatsoever, but given [newfound-grievance] I wont buy it!"-style dismissals - talking about childishness.
- [dead]
- > I now learn he's donated significant chunks of money to them.
Biting the hand that feeds you might make you an asshole. But sometimes you have to be an asshole to uphold standards and principles. I don't think Linus or Jobs would be known to produce such important technology if they don't care enough about their works to act crudely to people they consider substandard.
We can disagree with Andrew's standards of course. But saying he should not attack someone just because he took money from him is a weak criticism.
- Agreed. This article should have stuck to the cold facts, rather than a series of personal criticisms that you wouldn’t see written out in the workplace.
Sadly there are far too many open source developers out there who are far too comfortable writing like this. It’s one reason I have stopped being active in open source. You would be fired (or at least disciplined) from any reasonable workplace if you acted like this.
- you are right, to many people feel far to comfortable writing like this. but my reaction is to double down and be more active to counter this kind of expression and make it clear that this is not welcome. it worked with linus torvalds.
- That’s a good attitude to have. Any tips for identifying projects which have leadership which does this?
- "An unprofessional embarrassment" is exactly how I feel about Bun.
I don't get mad at people for standing up for their morals, I get mad when they have none. AI is an a-moral tech, and Bun is using it in an a-moral way: for team Bun the ends justify any means.
I'm on team Zig!
- I don't think it's too bad, but I also don't think it's good.
I also don't think Andrew can claim at the end "I actually don't have any personal criticisms of Jarred" when the post includes the sentence "Jarred was already writing slop well before he had access to LLMs".
- It accuses him of presiding over “a shitshow”, and basically seems to imply he’s a greedy narcissist.
So, yes, I find that line laughably disingenuous.
- I don't think it's an attack, more like a goodbye.
Andrew is happy bun is not zig anymore because it was not up to the level they would expect from a project that represents them.
- > It's insane to me that Andrew thinks this post will somehow exonerate Zig
I'm not sure that's his aim here. I imagine he has been asked dozens of times what he thinks about the switch, what it means for Zig, etc. etc. and wanted to just address it one time, which is understandable.
The tone is... strong. I think repeating grapevine rumours about Jarred's management skills adds very little and probably could have been removed. But at its heart I see this post as example of a common clash: open source code hackers vs Silicon Valley "growth hackers".
Kelley is disappointed that a promising Zig project took VC money and went from his passion project's prime example to one that shit talked it on the way out. I get why he's emotional. I wouldn't have written it the way he did but I also don't think policing tone is beneficial for honest communication.
- I don't think he is attacking, he's just organising his thoughts publicly.
- While organizing his thoughts publicly, Andrew says that the Bun team at large engages in outright fabrication. What do we think about that? Does Jarred and his team lie about professional matters to fellow peers in the field?
- Maybe their concept of fuzzing is different?
Jarred commented on the top that they use fuzzilli , which is a javascript engine fuzzer.
But zig has a built in integrated fuzzer!
Andrew must have been talking about the built in fuzzer because that's what is associated with zig.
zig build test --fuzz
- how is it attacking him for using a different product? except for compile times nothing here even indicates that rust would be a bad choice for bun
- I almost completely disagree.
Unprofessional? Maybe a little, but honest, and while the truth isn't flattering to Jarred, I'd say generally kind.
Embarrassing? Not from my seat. Andrew is just revealing the relationship dynamics between a principled programming language developers and pragmatic business users of that language.
I had already inferred a bunch that this post confirms based on the agentic port from forked-Zig to Rust. It's very nice to have suspicions confirmed.
- How can you say that a post which has the criticisms it does is kind?
- How is it kind to imply that by not going to university, Jarred was too stupid to think critically about his own path in life? Or just this in its entirety: "Jarred was a stinky manager. Poor communication, unrealistic expectations, low empathy, no experience. Just a total shit show, from an employment perspective."
We have very different ideas about what kindness looks like. Honesty and rudeness are not synonyms.
- > I'd say generally kind.
How is saying someone wrote “slop” and is stinky kind?
I can’t understand these comments that claim the article was generally kind, unless you and I read different articles with different words.
I legitimately had to go back and check that the article hadn’t been edited to remove some of the ad hominems
- I think he also wants to attack Anthropic by proxy.
- Before the post I didn't know what zig and bun is. I needed a llm to explain it to me. Now I think about trying Zig. So, no, I don't think it's childish. It reads like a engineer that knows which kind of people you don't need in your environment. I can feel every word he wrote because I know this situations.
- > This entire article is publicly and personally attacking him for choosing a different product.
Well, TFA has a conveniently titled section "Addressing the Blog Post", that raises (setting aside speculation) some good points:
The [Bun rewrite] blog post is ... almost like the marketing department of a trillion dollar company has a lot of money riding on this article ... There's a dichotomy being presented here where you have to either choose a "style guide" or a programming language feature in order to avoid bugs. The sleight of hand misdirects the reader away from the main way bugs are eliminated: by dedicating engineering resources to it ... [TigerBeetle] put in the time to find and eliminate the bugs, they make an effort to maintain a healthy relationship with ZSF, and Bun did not do that. The argument for shipping all the million lines of unreviewed code is that the test suite is good enough to catch everything. Then why are you saying you have so many annoying bugs in the Zig code? What happened to the test suite being sufficient to catch everything ... Performance increase is attributed to LTO, which Zig has supported for all of Bun's existence. It used to be enabled by default until we ran into too many LLVM bugs, all of which also affect Rust ... The post claims they were fuzzing their Zig code, while during our calls the whole Bun team told us that they were not fuzzing anything. This appears to be an outright fabrication. The blog post outlines a bunch of engineering work done to reduce binary size, to better make the case that "Bun is better in Rust" ... you were doing the engineering work that you should have done in the Zig codebase since the beginning ... I noticed that you neglected to mention compilation speed. Zig compiler project is about 600,000 lines of code - roughly the same size as Bun before the rewrite, and I'm clocking 16s to build from scratch with a clean cache, followed by 90ms for each subsequent edit with incremental compilation enabled. What are the corresponding measurements of Bun post-rewrite? - > Or maybe he doesn't care, and just wants to attack Jarred?
I've worked with ark enough that I think I've started to learn his default style, or at the very least to know that from him; this isn't an attack. If that was your read, I think you're taking more from sources that aren't this post.
I wonder if you're confusing statements of fact, for attacks? They're distinct, and the context for the post. I'm sure he's been asked a few, hundred, times what's his take on this decision made by this single person.
> Two, I actually don't have any personal criticisms of Jarred. He has different taste than me, he wants different things out of life than me. [...] Honestly, I think he did well for himself, and I don't wish him any ill will.
> That said I'm happy that our business interests are no longer intertwined! As soon as the Internet stops arguing in public about whether the rewrite was good or bad for Bun based on the language choice, I believe that concludes our interactions.
Translation, Jarred posted his thing, so now Andrew "has" to post his thing: hopefully so the internet will stop asking, and he can ignore this shit he doesn't care about, and people will leave him alone long enough that he can get back to spending his attention on his language, which is all he really wants.
- > I've worked with ark enough that I think I've started to learn his default style, or at the very least to know that from him; this isn't an attack. If that was your read, I think you're taking more from sources that aren't this post.
You start by taking more from sources that aren’t this post, then in the very next sentence accuse the other person of doing what you just admitted to.
This article has very clear attacks like calling him a “stinky manager” from literal gossip, or saying he wrote “slop” before LLMs.
If you can’t see these as personal attacks, you are taking more from other sources and your predetermined opinions than the article. That is what you admitted, but I don’t think you realize it.
- > I wonder if you're confusing statements of fact, for attacks?
Hearsay and gossip from the "juicy grape vine" along with implying Jarred is too stupid to critically think about his own path in life because he didn't go to university are not exactly statements of fact. They're elitist and vindictive, but those are not synonymous with honest.
> If that was your read, I think you're taking more from sources that aren't this post.
I'd encourage you to reread the post and try to catch how weirdly spiteful and inconsistent it sounds in places:
> But having graduated from the Thiel Fellowship school of thought rather than university...
> Jarred was a stinky manager. Poor communication, unrealistic expectations, low empathy, no experience. Just a total shit show, from an employment perspective.
> Jarred was already writing slop well before he had access to LLMs.
> Now, it's not our business to police what our users do... We made futile attempts to guide them towards better programming practices.
- Totally agree. This article really turned me off of ever using Zig for a project.
- > This is unprofessional and embarrassing for Zig
This isn’t like the official stance of the zig foundation or anything. I for one am happy to see people being honest about their frustrations instead of playing politics.
- I agree and I’m confused that some other commenters aren’t seeing it.
> The grapevine was large and healthy and full of juicy grapes, and all those grapes contained the juice of the same message: Jarred was a stinky manager.
> Jarred was already writing slop well before he had access to LLMs.
This isn’t about wanting “sanitized corpo-speak” or something, but I do expect leads of projects to behave like adults and not build arguments on ad-hominem attacks and rumors they supposedly heard.
Address the topic and put forth some arguments. I don’t care to hear your personal beef with someone aired publicly.
- > Two, I actually don't have any personal criticisms of Jarred
That’s quite a statement to make at the end of a post that seems to contain little else…all just thinly veiled.
Saying someone has „beginner energy“ but reframing it as a faux positive (this person fails and thus learns)
Or saying the grapevine says someone is a „stinky manager“? Basically I’m not saying this person is bad it’s just that I need to bring up on this blog that everyone agrees this person is bad.
All seems to be in very poor taste even if true…
- I'm quite confused by this. Is calling someone a "stinky manager" a personal attack? It's funny that we can't differentiate the person from his "job". I work with some shitty managers, but I don't hold it against them on a personal level...
- Is calling someone a "stinky manager" a personal attack?
yes!
- Word-engineer hat on:
> The grapevine was (...), and all those grapes contained the juice of the same message: Jarred was a stinky manager.
Per exact words these two are different:
i.e. I might myself not share the sentinment, or not know anything about it, or simply not engage - relay is not an opinion in itself.- I think someone is stinky - I spoke with people who said someone is stinky - You do your job for hours every week, it is undoubtedly part of you. Calling somebody that is very personal and rude. I'm shocked that there are this many people who don't find issue with it. It removes any kindness from the post and turns it all up to 11. I's deeply personal.
Do some of you really talk to others like this and find no issue with it? It's hard to say words like that and not end up with deep schisms and hatred.
- Lol. Imagine you were called a stinky employee, and you thinking that's not a personal attack. Would be very noble of you.
- Don’t think there is a clear line to draw as to where the person stops and the professional performance starts when it comes to management because on soft skill it is inherently driven by personal attributes. It’s a bit like a good salesman exudes likeability - it’s integral to the performance of the job and part of the person.
He may well be a shit manager. I have no idea. Either way it’s not something you casually throw out there in a blog like this
- > "Oven is going to be a grind, especially the first nine months or so. If work-life balance means a lot of time spent not working, it's probably not a good fit."
Stinky manager is charitable.
- Are you serious? If I told you to your face "you are shitty at your job" you don't see that as a personal attack?
- People who love me have told me many times that I'm "shitty" at something. Guess it dependes where you're coming from.
- It depends on what job you're talking about. I've definitely been shitty at several that I've had in my life, if you're talking about those I would simply agree with you.
- Sure, but getting a bad perf review then, is that necessarily a personal attack?
Andrew and Jarred and I are all peers in this situation. You get reviews from your peers.
- I don't understand, why isn't your attention focused on the claim that Jarred lies in professional settings and in public? Jarred himself shows up to post receipts with barely any commentary, showing where the focus is.
Anyways, what do you think about Jarred? Do you think he lies about Andrew in public? What was the term Andrew used? Outright fabrication?
- I value competence above all else, and bullshitting (e.g. using AI to say you used AI) is the opposite of competence.
I wouldn't claim he's lying because I have no first-hand knowledge to base such a claim on. I just think his whole persona is about selling the idea that "you don't need to look at the code anymore". I would have a hard time calling that a lie because I think he really believes it. It does mean that I think of him as a fool or a pawn, though: a friendly face whose purpose is to give a feeling of safety and human harmlessness to a destructive agenda of machine supremacy.
My moral condemnation for that is as strong as if I thought he was simply lying, and perhaps stronger.
- > I value competence above all else
This is very beginner energy lol. Are you possibly a teenager?
> and bullshitting (e.g. using AI to say you used AI) is the opposite of competence.
Your username name is conartist6....
- lolol you're just gonna die inside when you find out that such a piece of shit as I am owns... well, as I say, you'll find out ;)
- > well, as I say
Do you often quote yourself?
- oh god, yes. i sing. i dance. i scream. i'm a fucking human
- It’s an inconsistent statement to make when the rest of the article contains ad hominem attacks like these:
> The grapevine was large and healthy and full of juicy grapes, and all those grapes contained the juice of the same message: Jarred was a stinky manager.
> Jarred was already writing slop well before he had access to LLMs.
This is a weirdly childish post. I enjoy a good post where someone speaks their mind without running it through the corporate speak filter first, but it also gives you insights into how a person thinks and operates. With good leadership you can strip away the corporate filter and the result is still professional, but this article reveals something much less than professional
- I think its worthwhile to hear how some self promoting person is actually a piece of crap.
- Beginner energy is faux? I relish my beginner energy in all my side projects - I fail and learn. This is completely normal when done safely and without people depending on you. Unlike management.
- > So, when the Anthropic aquisition finally happened, we at ZSF breathed a sigh of relief. When the donation silently stopped, our bank account was ready for it. When they neither canceled their monthly meeting with us, nor showed up, we were not surprised. The relationship was over.
Seen this time and time again, project/organization gets taken over, and everything "good" they did doesn't get exited with fanfare or anything, just silently dropped as your benefactor starts silently ignoring you.
I'm really happy they saw the writing on the all and were prepared for the inevitable, a really great lesson you shouldn't need to learn yourself the hard way, and FOSS project relying on one/two big donators should take heed, we'll see a lot more of this in the developer tooling ecosystem moving forward for sure.
- I found this post very refreshing! I’m sure it would have been very tempting to one-up the “PR-speak” of the Bun post. Likewise, it would have been very tempting to include the same set of facts that reflect negatively on Jarred, while studiously concealing one’s own opinion (eg “I heard people called him a stinky manager. I am not saying that, other people are, but I’m not”). I appreciated that it was just … genuine.
- Refreshing that the author doesn’t try to conceal his character or thoughts.
The contents of his character and thoughts are quite objectionable though.
- It’s just one long ad hominem
- I don't think you are using that right. Saying someone is bringing a bad vibe to your project, as the point he has a bad vibe is just stating the conclusion.
Like if someone calls you a bad programmer and doesn't hire you as a programmer, isn't ad hominem
- No, the discussion started with a the article from Bun, stating that rust has some technical advantages for them. The response from the Zig creator is a bunch of personal attacks directed at one guy, like calling him a stinky manager. All of these are fully unrelated to which language is better for Bun.
This is like the textbook definition of an ad hominem.
- Ad Hominem is only a fallacy when the speaker's personal qualities are irrelevant to the topic at hand. When one man has unilateral control over a project, you have to consider it as an extension of their personality.
- To be pedantic the ad hominem fallacy is about trying to deny an argument by attacking the author, so in a discussion about zig Vs rust if Andrew isn't trying to enter the discussion and just argue "that guy was stinky, glad he is gone" is not really an ad hominem, just not classy let's say.
- > if Andrew isn't trying to enter the discussion
But he is. Both in the title, and in later half of the blog post, he directly enters that discussion. I'm not saying an ad hominem argument is always bad, but this clearly is one.
- > This is like the textbook definition of an ad hominem.
No, it isn't at all. Ad hominem is only in effect and fallacious when the logic turns on the personal attack. "You're wrong because you're stupid" is ad hominem. "You're wrong and also you're stupid" is impolite, but logically fine.
To clarify, I think that the entire "History" section is unrelated to Andrew's argument, only the "Addressing the Blog Post" section actually contains arguments, and that section doesn't contain the rude comments, it's focused on technical decision-making.
- Oh yes, I didn't clarify that I meant an argumentum ad hominem, which isn't the same thing as the informal fallacy of the same name. So yeah, I agree, this isn't directly fallacious.
- Right I think the correct term is “character assassination”. It starts by calling him a novice, goes on to call him a “stinky manager”, and then lands the deepest cut possible in this profession: his code sucks. At least Kelley thanked him for his money.
This is not refreshing, I usually expect better from Kelley. The best move would have been to say nothing at all except “best of luck, Zig will miss him but”. Now all Ziglings must wonder if they’re going to receive a hit piece from the Zig founder if they cross him.
- Do you think that all ziglings refuse to write idiomatic code, have public fights with the language maintainers, and then write giant blog posts about how they're ditching the language because it just isn't good enough?
- It isn't. The grapevine stuff was unnecessary and should have been cut out but there is plenty of concrete stuff in there as well.
- Part of it might feel like ad hominem, but I think the bluntness is justified in this case. It provides some pretty important context on the situation.
As an outside observer who knew little about Zig and Bun, the impression I got is that the rewrite came out of nowhere, and that the Zig community was surprised by it. The post makes it quite clear that this wasn't the case, and describes how the actions and overall mentality of Bun's creator already suggested such a thing was likely to happen, straight from the mouth of someone who worked with him and isn't afraid to voice his thoughts. Not everything needs to be PR speak.
- You can be blunt without being hateful or an asshole. It's not about PR, it's about treating other people as human beings.
- Agreed. This blog post strikes the balance between PR-speak and x.com
- There are astute comments about the post's tone elsewhere in this thread[0]
But this killed my hopes for Zig.
The drama is fun, and Andrew is maybe even admirable in his earnest, but this just isn't the kind of professionalism needed for a serious project. I know that's boring and uninspired, but that's what I want my tech stack and it's management to be.
Also, maybe Jarred was a net negative, but bun was also a really big project using Zig, and the project leaving isn't as good for Zig as Andrew is making it seem. It genuinely seems he's putting a lot of priority on purity and ideology over just growth of the language. And I am sorry, but adoption and reaching critical mass is an important part of a serious programming language.
[0] esp. nilirl.
- > this just isn't the kind of professionalism needed for a serious project
I don't immediately see how much the seriousness of the project is related to the language the author chose in their personal blog post. It's similar to saying that Linux could not have become a serious project because of the way Linus communicated in his emails.
- Linus always backs up his insults with technical reasonings on why the other side is wrong though. You might not agree with his reasons, but at least he provided them.
- Yes, jerks love to use Linus’ success to justify being jerks.
- Not sure where I justified anything. I just said that it's not related. You can be a jerk or not, and your project can be successful or not.
- He is understandably annoyed. It feels like you are making it a problem for people to have emotions and give signs that they have those emotions. He didn’t even write anything direct and it is on his personal blog
- In what way the article convinced you that Andrew Kelley is not professional enough for a serious project like Zig? Isn't his contribution to the language what's important?
- He's leading the community. Not having basic professional does indeed kill them vibe for some of us. When is he going to pile on somebody else he disagrees with?
- The open source community is built up by many project leaders with unprofessional attitudes. Honestly I think a younger version of myself would have resonated with the post. I'm almost certain there are many folks who will see the post as a net positive for addressing the bun rewrite. Zig is full of people who think they are strong enough engineers to avoid needing tools to solve issues for them and the post largely says that bun was written by weak engineers and they were to blame for its problems which will resonate with the community.
- Zig's community is - bar none - the least toxic programming community I've experienced. People on this website (who have never witnessed a single Zig community interaction) love to read blogposts from afar and come to conclusions this way and that, but if they ever stopped to actually engage with the people involved they'd find out the truth quite easily.
- I have engaged with the Zig community. You're saying that people should not come to conclusions based on what they just read.=, from the founder nonetheless.
- Did Linus Torvalds convince you, with his history of outbursts, that Linux is done?
- He's turned that down over time and has said as much.
I figure taking the most successful project of the 90s and using that as a polestar for of newer projects who re trying to get and keep traction over other projects (see this thread and topic) is probably a bad idea.
It in fact is a great thing to learn from, not repeat the same errors.
- So you're saying your only singular experience with the Zig community is this one blogpost, and you've written 14 comments so far on here about it? What are you even gaining here?
- I've been using Zig for years. Is this not a discussion forum?
- My apologies, your previous comment read to me as "I have engaged, I just read this blog post". I now see what you intended.
I've realised from the comments under this post that many people seem to desire some sort of performative "professional" communication style from people above all else. I don't know why people care about this so much and I don't think I care to know.
- > and the project leaving isn't as good for Zig as Andrew is making it seem
In this case, Bun was acquired by Anthropic. Leaving Zig is not necessarily out of merit. As much as they pretend it was.
- > this just isn't the kind of professionalism needed for a serious project
I actually think this gets to, but steps over, the core objection: traditional "hacker" mindset vs VC "growth hacking" mindset.
> And I am sorry, but adoption and reaching critical mass is an important part of a serious programming language.
Why? Why can't he create a language with exactly the kind of purity and ideology he wants, broader adoption be damned? Why must everything optimize for user growth and mindshare?
- > And I am sorry, but adoption and reaching critical mass is an important part of a serious programming language.
Would you argue that Chez Scheme (to pick a random example) isn't a "serious programming language"? And I am sorry, but the assumption that "explosive growth" in the venture capital sense is somehow necessary for "success" is cancer.
- > but this just isn't the kind of professionalism needed for a serious project.
Yes, I think you are totally right. I'm sure Linux would never be so big as it is without a maintainer that talks so professional than Linus Torvalds.
- linus torvalds was eventually told that his tone was not acceptable and that he needed to learn to tone it down. linux grew despite linus tone, not because of it.
- It's hard, in my opinion, to lend credence to the author here when they decided to devote the first and largest section of their article to an incisive display of speculative ad hominem.
Would have been a great opportunity to outline the benefits of Zig! I've been keen to pick Zig up recently due to mitchellh's evangelism and inspiring writing on the subject.
This article puts me off learning Zig.
- > first and largest section of their article to an incisive display of speculative ad hominem.
Seems you're not alone in feeling this, mind quoting the exact and verbatim parts that seem like "speculative ad hominem"? I see there are quite a bits about how Andrew sees Jarred and his workflow/work mentality, but I'm not sure I see clearly what is supposed to be the ad hominem, speculative or not.
- Sure:
> he was essentially groomed from a young age
> It's one thing to choose a poor work-life balance for oneself; a different thing entirely to demand it of others
> Jarred was a stinky manager
- The second thing is not an ad hominem, it's talking about what he did or how he did it, not who he is.
- Casting aspersions without proof, even if it's something everyone knows, is in poor taste and ad hominem. I've never heard a bad word about Jaredd before, so Andrew seems more like a stinky person to me right now.
- There are two direct quotes in the article. The first is from Jaredd saying he works 90 hour weeks. The second is from Jaredd/his new company saying if you care about work/life balance, don’t work at this new company. So that’s definitely not an ad hominem.
The other stuff maybe, I’m not familiar enough.
- There's a direct quote in the article from Jaredd talking about poor work/life balance
- “An Ad hominem refers to when a speaker attacks the character, motive, or some other attribute of the person making an argument rather than the substance of the argument itself”
It’s definitionally an ad hominem against Jared. If he stuck to why he thought it was bad for Bun to do this, I would be more sympathetic.
- The author being the author of zig…
- > Would have been a great opportunity to outline the benefits of Zig!
Eh, Google and ChatGPT both exist?
- Not sure a personal attack against Jarred really helps the case for using Zig. He could have and should have focused on the language and not “a stinky manager”. Honestly, this makes me want to steer clear of Andrew as much as Jarred.
- Its an attack an Jarred's public, (un)professional behaviour. One most of us in the community have born witness too in recent months.
"Jarred, in his professional capacity, drove away many from our community, and we'd prefer to disassociate." is not 'Jarred is a bad person, privately'.
Now, in these circles, that might as well be the same thing, given how little personal life I imagine most VCs have left outside of work. But that's not really Andrew's problem.
I won't defend Andrew's style; I think he could mask some his neurodivergence more when communicating to a wider neurotypical audience. But it's his project, his community is certainly aware, and this too, is a known quantity.
It might help you though, to reread the piece with the assumption that Andrew is being completely sincere, without adding in a secondary subtext like, "Andrew is trying to assassinate Jarred's character".
- I think he’s being completely sincere in this attempt to assassinate this person’s character. I say this as someone who before this day regarded Kelley as a role model. Now I see him in the same category as a Musk like character. Don’t blame “unmasked neurodivergence” for this, plenty of neurodivergent people can communicate effectively and professionally to a wide audience without attacking someone’s professional character.
For example, given the number of claims made here there’s very little actual evidence and support. Kelley says Jared is a bad manager and credits rumors. He says he writes slop code and doesn’t provide a single example or prove that statement. If this were his “neurodivergence” coming through I’d expect more thorough argument and less “stinky manager” grade school insults.
- >> I think he's being completely sincere in this attempt to assassinate this person's character.
So that's a no, you won't make the attempt to engage with it with any other frame of mind?
>> Now I see him in the same category as a Musk like character.
Do you not see this as an overreaction? Andrew writes one (perhaps overly) blunt article about someone who publicly attempts to tarnish his project's reputation and you view it the same as the worst living human?
- > you won't make the attempt to engage with it with any other frame of mind?
I told you, I engaged with it with the frame of mind that the author is a role model to me. My conclusion having read the words was that this was an intentional snipe.
People are calling this honest, but I consider it deeply dishonest to make the litany of personal attacks that he did while trying to pretend "I actually don't have any personal criticisms of Jarred".
Either Andrew isn't being honest with his audience, or he's not honest with himself. We can leave that as the most charitable framing. Either way it's just not true.
> you view it the same as the worst living human
I didn't say that. I only make the comparison in that they are both emotionally driven to say rude and mean things when they feel attacked.
- > He says he writes slop code and doesn’t provide a single example or prove that statement.
You can look at the bun codebase. Moving fast has its drawbacks, and bun moved very fast. It’s not what I’d call idiomatic or exemplary Zig.
I think this is what Andrew was highlighting with “beginner energy”. Not knowing you shouldn’t rewrite a toolchain and take on an entire ecosystem can be a positive. I think this is pretty common in business, where someone/something isn’t “great” but wins because they didn’t know any better and went headfirst into something experts avoided because they understand the challenges and what “doing it right” entails.
- I think if one is going to call someone else's code slop, it's up to one to a) define the term because it's meaningless and b) to actually give at least one example. Not idiomatic or exemplary is one thing, but as I understand it, slop means that no care was put into creating it.
- Andrew's online social behavior is largely a streak of pettiness imo. This is not even close to the first time I've seen him write something I felt was overtly mean spirited, not just euphemistically "blunt".
"Was silence not an option?"
- i watched a youtube video where he called out people as garbage programmers... i felt that was petty, his streak continues i guess
- Could you please link the YouTube video? I tried to search but couldn't find one with "garbage programmers".
- Given the chronology set out by Andrew, I think it's warranted anyway.
- Makes me want to give him a handshake and a big hug
- > I actually don't have any personal criticisms of Jarred
The whole post felt like a personal criticism of Jarred.
- I'd consider the opinions professional criticisms of Jarred. While focused on him individually I don't think they are very personal
- Personal and professional are not mutually exclusive.
If I criticize your code, that is a professional criticism.
If I criticize your code and say it reflects your consistent carelessness and stupidity, it is also personal.
If I say you fabricated something, then that is a personal criticism, it alleges an ethical violation. In a professional context, it's also a professional criticism (every profession has some ethical standards).
- > We probably tried to tell you to try enabling it and you didn't listen. We have good advice, damn it!
Not knowing whether you actually gave the advice you're blaming them for not taking isn't professional, it instead comes across as bitter.
- i think they are extremely personal and actually very distinct from professional criticisms.
- Can you criticize a project which is mainly contributed and managed by one person without criticizing the same person who does the decisions that cause criticisms?
- Yes, I think very easily and I have read examples of this. There are bits of this in the article, but the main thrust attempt to portray Jarred as a greedy asshole enamored with Thiel/VC thought is not about the project and quite clear reading the article. It’s entirely tactless and bitter imo
- > main thrust attempt to portray Jarred as a greedy asshole enamored with Thiel/VC thought
What made you get that takeaway from the article? I didn't get that feeling at all, mainly seems to be something like "Jarred does some good and some bad, personally I don't agree, still wish him well", but clearly some specific part in the article must have given you this impression, if so what part?
- The "some good" part reads like it exists as a buffer between other parts which don't sound objective, but rather defensive and personally angry. > Fun fact: people talk to each other. The intention here seems to indicate that Jared could've never known that could happen. It doesn't sound like professional feedback and more how you talk to someone during after a road rage incident.
And the fact that immediately after no "personal criticism" he proceeds to call his behavior "fantasy fever dream." Sometimes presentation matters as much as factuality.
The lack of sources and citation for a pretty one-sided claim doesn't help either.
- > jumping head first into problems that he was not yet equipped to solve, leading to mediocre outcomes in terms of engineering
> having graduated from the Thiel Fellowship school of thought rather than university, he was essentially groomed from a young age into uncritically embracing the Silicon Valley mindset,
> this "beginner energy" started to hit differently for me. It's one thing to choose a poor work-life balance for oneself; a different thing entirely to demand it of others
> Poor communication, unrealistic expectations, low empathy, no experience
> gets to live out his productivity fantasy fever dream, he's probably already super wealthy. He has minor tech celebrity status.
Frankly, I have trouble seeing how a neutral reader doesn’t see this as a clear personal attack. That the article ends with “I actually don't have any personal criticisms of Jarred” is almost comical given the preceding paragraphs.
- Even more comical when you realize he couldn't stop himself from immediately following "no personal criticisms of Jarred" with
> gets to live out his productivity fantasy fever dream, he's probably already super wealthy. He has minor tech celebrity status.
in the following paragraph.
- And literally 3 sentences later he goes back to insulting him ("productivity fantasy fever dream"). Even if that is true, it's still an unwise post to publish in this form IMHO. If the goal was to defend Zig, that could've been done in a less personal manner.
- I'm about to comment exactly this.
- I think he messed that part up and it comes off as passive aggressive but he is probably scared of the “outrage” from the angels of the internet about how rude he was to Jarred
- [flagged]
- > Jarred was already writing slop well before he had access to LLMs.
I don't see anything business related in that statement.
What's this new level of gaslighting? "It was not because of me, but because of the business situation I was in". Wait... wasn't he in that "business situation" because of actions HE took?
- To me, this whole effort of rewriting Bun from Zig to Rust looks like a big marketing move. The question is: if Anthropic AI is really that powerful, why not just fix the bugs and give it the more ambitious task of redesigning the existing Bun Zig codebase in a way that eliminates not only the current bugs but also prevents similar ones from happening in the future?
- The sole reason for that rewrite was Zig creator announcing he won't be accepting AI contributions. It hurt Anthropic's feelings.
- Conversely we have actual evidence of Bun rewriting in Rust because Andrew wouldn't accept AI contributions, actually hurt Andrew's feelings.
- Not really. It seems like the Rust rewrite blog post triggered this. Which, even though I don’t agree with the tone, seems to be valid criticism.
- [citation needed]
- Here[0] are other reasons besides AI
- [0] https://ziggit.dev/t/bun-s-zig-fork-got-4x-faster-compilatio...
- I think that post highlights a difference in philosophical approach to software development. Bun is focused on moving fast and will deal with the consequences as they come. Zig takes a more planful approach.
I've experienced both in my career and I fall solidly on the planful side. It's why stopped using homebrew and I've avoided huggingface packages as much as possible.
- Citation that this was the reason or citation that he said that?
For the latter: https://youtu.be/iqddnwKF8HQ?si=cvU8Fh3ah7ZCxg3M
From 26:38
- It is worth noting that before rewriting in Rust, Bun maintained a fork used to accelerate the compilation and informed those who asked that this fork could never be merged due to Zig's zero-LLM policy.
A few weeks later, Bun began the Rust rewrite. Although not explicitly stated, I suspect these two events may be related.
- I do wonder to what degree this weird play originated from Anthropic, versus from an overeager founder selling past the close.
I can imagine Anthropic wanting to acquire Bun without the gimmicks.
- IMHO 'marketing' as a supposed incentive is too easily thrown around by people who probably don't know what marketing really is.
- But Rust is exactly the tooling that gives humans and LLMs a lot of those checks for free, and things like RAII.
- If you use Rust the way it was designed to be used, rather than relying on countless "unsafe" blocks, you need to redesign the entire codebase architecture to make it compatible with the borrow checker rules.
- The borrow checker really isn't that bad. It isn't like they were porting from something with GC. They were already having to think about these things anyway. Even then opus seems to have no difficulty going between c# and rust while respecting the idioms of both. No unsafe needed. Zig should be even easier except the lack of a training corpus for whatever frankenversion of zig that bun was using.
- All that unsafe does in these cases is enable the "unsafe super-powers" which the compiler can't check, thus shifting the responsibility onto the author. But for example if you've got some code which doesn't borrow check, and you just sprinkle unsafe keywords on it, now you've got code which still doesn't borrow check and diagnostics telling that this unsafe keyword was futile and you should remove that.
I haven't reviewed this code, but the percentages described don't sound like they'd need a huge architectural overhaul to use much less unsafe, it might take more actual human effort than they want though.
- Even if you “rely on countless unsafe blocks”, unsafe is additive, it gives access to additional APIs which are not checked. It does not disable affine types, the borrow checker, or send/sync traits. Unless the entire codebase is unsafe (e.g. fresh out of c2rust) it’s very hard to not have more guarantees.
And because unsafe is generally highly local or localizable reasoning (conventionally backed by safety justifications) it really is quite reasonable to go plugging at it, or task an AI within that.
- For 99.99% of cases, you're reading and writing this under an operating system whose kernel is written in a language without send/sync, and inside a browser that also largely written in languages without send/sync, because those systems are fundamentally well designed. So instead of fixing the bugs and rethinking the architecture, the author of Bun decided to transpile almost the entire codebase from Zig to Rust without a deep architectural review. Okay...
- Those systems you're alluding to received ungodly amounts of work and resources, vastly more than most projects can ever hope for, and yet they're still full of holes and security exploits. You're unwittingly making a great argument against using C, C++ – or Zig.
- What I mentioned is only a tiny part of the entire software, which has been successfully written in C, C++, and now in Zig as well, and is used daily by people around the world.
- Those systems are primarily written in C or C++-but-in-C-style, right? Without exploiting RAII among other features, as Jarred mentioned that he liked in Rust. While Rust took RAII from C++.
- If you are writing in C-like codebase and aren't tracking lifetimes and ownership at least as well as a borrow checker you're opening yourself to CVEs.
- The concept of lifetimes was invented long before Rust borrow checker was even "scratched on paper." Of course, people who understand what they are they doing have known about these concepts for decades and have built their architectures around them. However, Rust borrow checker is much stricter than that. You have to build your architecture around the fact that you can't have more than one mutable reference at a time, and your data structures have to be represented as directed, acyclic graphs, etc. If you have to break all these rules by using a lot of unsafe because it's too difficult to represent your system within Rust safe subset using only value semantics and borrow-checked references, etc, then why use Rust instead of C++, C, or Zig?
- "effort" is a big word to describe typing out a few prompts to create something with 5k+ open issues.
- "Typing out a few prompts" does not match the process described in Jarred's article. https://bun.com/blog/bun-in-rust
- zig doesn't accept ai written code
- How is Bun codebase connected to Zig codebase?
- Rumor has it there is a HN submission on the frontpage right now about that very thing:
- > The main problem, however, was code quality.
> The sleight of hand misdirects the reader away from the main way bugs are eliminated: by dedicating engineering resources to it.
Perhaps the amount of bugs comes from using a C-like language that requires meticulous manual care to avoid writing runtime bugs.
Even C++ would be a safer choice because of RAII.
When you have to dedicate significant resources to avoid/fix runtime issues that are made impossible at compile time by other languages, the programmer isn't entirely at fault.
- Memory safety problems are still possible in the new Rust Bun:
At the time of writing, about 4% of Bun's Rust code sits inside an unsafe block (~13,000 unsafe keywords across ~27,000 lines / ~780,000 lines), and 78% of those blocks are a single line — a pointer that came from C++, or one call into a C library.- People bring this up a lot. What I see here is that thousands of potentially (not actually, just potentially) safety risks have been neatly tagged in the code.
If you took a program written in Zig, Go, C++, or C, you would have no idea which parts of the code were potentially unsafe. In those languages, the entire program is one big unsafe{} block.
Rust isolates unsafe code. Having them explicitly tagged means they're isolated and can be eradicated over time, if need be. Though in many cases, unsafe blocks are quite safe.
- Yes - I think the proof of the pudding will be whether they put in the effort to eliminate these unsafe blocks. The conversion to Rust is the starting point that makes this possible, but it's definitely not "done" at this point.
- > 78% of those blocks are a single line — a pointer that came from C++, or one call into a C library
Don't those blocks need some additional lines for error checking to prevent the unsafety from spreading to the safe code?
- It depends
Suppose there's a C library libape which implements monkeys you need in your software. There's a C API where we pass a pointer to a valid monkey and a 32-bit unsigned integer which controls how delicious bananas are. Any 32-bit unsigned integer is valid here, except zero because monkeys always think bananas are at least somewhat delicious, and there's no return value.
Our Rust wrapper probably has Monkey as a type, wrapping one of those valid monkey pointers we mentioned, and so our wrapper for that API call is some unsafe code which just calls the C with this monkey pointer and a non-zero unsigned 32-bit integer which in Rust is just the type NonZeroU32 and we're done. That's a single line, the unsafety checking was all done in Rust's type system, every Monkey has a valid monkey pointer, every NonZeroU32 is (as its name suggests) a non-zero unsigned 32-bit integer.
Now on the other hand, maybe we're wrapping code which takes a char * pointer intended to point at some zero terminated ISO-8859-1 encoded text. That Rust wrapper would be responsible for this translation and maybe you do that work in the wrapper function. But, if you had sixty calls like that, probably you make a Rust type for this problem named like Iso8859dash1Text and then those unsafe calls don't have a lot of boilerplate because all that boilerplate (which is probably even safe Rust depending on how exactly you do it) lives in this Iso8859dash1Text type you made. And that's also a useful model if later you discover the C library lied and it's not ISO-8859-1 it's really Windows Codepage 1252 ...
- Yes but through iterative ratcheting, some portion of that unsafe can likely be migrated to idiomatic code without unsafe. And the other 96% of the code now has more mechanical guarantees than it did before.
Static linting in Rust via clippy also makes it pretty straightforward to begin enforcing things like "unsafe blocks need to have safety doc comments" as a CI warning or failure, and there are community tools that focus on this topic too.
I can't stand the practice of "LLM porting" personally but if you're going to do a mechanical rewrite from something else into Rust, this (permit unsafe and unidiomatic but 1:1 translation at first) is a fairly reasonable strategy imo.
- Possible, yes. But it's not like it's terribly difficult to verify correct usage of "unsafe" that amounts to a basic function call to a C library. Trivial uses of unsafe are pretty innocuous.
- dude was writing slop before A.I. Andrew called him out.
I don't write Rust - but I sure know that I'm not supposed to use 'unsafe'.
- You have to put similar amount of resources when writing in Rust as well. With the difference that it’s more front loaded. Personally I’m a fan of Rust’s approach but the price for having bug free code has to be paid, regardless, one way or the other.
- C++ would also introduce a myriad other subtle safety problems that would require years of expertise to even notice.
- I’ve not seen any languages that does not require meticulous care to avoid runtime bugs. Type checking and lifetime ownership eliminate some, but not all of them.
- > Type checking and lifetime ownership eliminate some, but not all of them.
They actually remove certain classes completely. E.g. lifetime ownership in Rust removes all bugs related to the reason why it is in the code syntax (a.k.a. lifetime markers remove use-after-free completely in Rust.)
- Despite stated otherwise in the post, this is a personal attack.
Anyway, let's try to discuss something more technical: I predict Zig will lose steam, and in 2027, will lose relevance:
1) It's hardcore Anti-AI 2) It's moved to Codeberg 3) It doesn't have the momentum to sustain the disadvantages of these two decisions
The project will in max 2 years make a blog post, not admitting to their mistakes, telling themselves that Zig is a success, despite the industry having moved on.
- They don't have a goal of becoming a popular language, though and will continue to work on it as long as there are donations. They don't care about being mainstream and there are niche companies who appreciate Zig and donate.
- To be honest, I'm also leaning this way, especially because of the hardcore anti-AI stance, so much that Zig will close security vulnerability issues on Codeberg if you mention that they were found with LLMs. I don't think that this is a good approach.
- I also think Zig has a rough road ahead, but not because of AI or moving to codeberg. No, it's because Andrew isn't really a BDFL. He's at best a DFL. The project is already mostly closed off to external contributors.
It kind of reminds me of Elm in a way. Though I'm not expecting 6 years of drought just yet.
- Could just as easily say the same thing about Bun.
If one can easily swap in the next new js engine du jour…
- It's a conflict of core values, and you've demonstrated it here.
You have defined success (for a project, and possibly a person too) as solely 'relevance'.
Jarred would agree with you wholeheartedly, I imagine. Andrew would ask you to leave.
It's okay to have different values and part ways.
It's not wise, however, to project your personal values onto other people, and judge them on those fabricated merits. You'll end up frustrated and confused more often than not.
Judge their choice of values. Judge them on their alignment with their chosen values.
As an example, Andrew doesn't like Jarred's chosen 'Silicon Valley' values, but thinks that Jarred aligns himself well with those values. This feels as a personal attack to you who also holds those values. And on some level, a person intimating you core values suck couldn't be more personal.
- 4) It's led by an emotionally unintelligent individual who will personally attack you for choosing alternative products.
- Like Linus?
- Linus attacked bad software, Andrew attacks the Thiel Fellowship, VC Foundings, and AI. There's little or no Linus there, pointing fingers at, and even when he does, he points at code he neither uses nor maintains. Linus don't give a shit about other people projects and businesses.
- > Linus attacked bad software
"Nvidia, fuck you!"
- wow this is the most professional comment I've ever seen in this thread.
- what's the problem in moving to codeberg?
- the loss of network effect.
- I have never once in my life cared about where a programming language kept its source and I think if anyone is using that as a basis for decision-making, they are truly a moron.
- You’re telling me you would be as likely to contribute to a project hosted in CVS as compared to git (and on GitHub)?
- I don't care if it's on GitHub at all, it's not hard to work with any arbitrary git remote. CVS would be a weird choice, but it wouldn't be a dealbreaker on its own. Fossil or some other modern alternative VCS wouldn't be a red flag or weird at all.
But I wasn't talking about contributing to the language, which is a weird standard to use here since Zig isn't interested in outside contributors. I was talking about choosing a programming language for use for some professional or personal project. I don't give a fig what version control solutions the team chooses to use if the language is good and solves my problems, and I would consider it very strange if someone tried to argue that I shouldn't use some language because they put their code on a non-Microsoft owned server.
- I generally agree with you that choosing something based on where it's hosted is dumb. I still think there could be an impact wrt a network effect.
The original comment you replied to was talking about "the loss of network effect" and you sounded dismissive of it. It might not even matter, but I think it's somewhat fair to say it could have an impact.
- It's not where people are, it's not boosted by Google/$AI.
- Your prediction is extremely short sighted, and I can only guess it is because of your extreme pro-AI stance, as well as not being part of the open-source community.
- Yes that's true, I'm biased because I am pro-AI.
What are your hopes and predictions for the Zig project?
- Nothing against Pro AI but their stance on wanting to write code by hand is not bad either. AI does over complicate things and there's a lot of slop. For a systems programing language, AI doesn't sound like a right fit. I'm personally tempted to reduce the dependency on AI. IMO, after a while, the overall productivity plateaus.
- I do hope they keep their stance and philosophy though it is not the easiest with a BDFL governance. I do not have predictions though, it seems silly to try and do so when it will be a random chance outcome
- If you bothered to actually learn just a little bit about the Zig project, you'll know that they are doing ok. They never cared about introducing new features at a fast speed, having lots of contributors, or getting corporate sponsorship, if that's not already obvious from the article. In fact, they intentionally keep a distance from all of that to make the project more sustainable and less prone to the whims of corporations.
- > You can imagine how we might want to put some social distance between ourselves and a project whose irresponsible software engineering practices invite the exact kind of criticism that people are eager to level.
The other (very salient) points notwithstanding, I'm afraid this quote shows that Zig hasn't learned a lesson that other languages of its generation (and older) have: if a project's memory safety depends only on "responsible engineering practices", then that project most likely won't be memory safe. Quoting the "swiss cheese" model used in risk management: one slice of cheese (engineering practices) just isn't enough if you want to be reasonably sure your program is memory safe.
- I’m reminded of the hierarchy of controls in machine safety. If you can’t eliminate the hazard, or substitute a less hazardous thing, then engineering out the hazard (like Rust did) is preferable to a procedural control (“git gud at engineering”).
- Can you elaborate on the distinction between "eliminate the hazard" as the first choice and "engineering out the hazard" as a fallback approach?
In my safety background (recently aerospace, ARP4754/4761), removing and avoiding the hazard are essentially equivalent, with reducing the likelihood and mitigating its effects acceptable if you can't remove or avoid the hazard, and procedure is also the least preferred mechanism.
- C/C++ does not care and they’re currently the language for foundational work (OS, platforms, and libraries). Python and Java does not care, they will just throw runtime exceptions and crash. Rust care, but they don’t play well with the rest of the world.
- rust is currently making its way into linux kernel, core contributors even did rust conf talks...windows already has rust going into kernel and core libraries, osx is also adopting rust, its making its way into all those 'foundational works' you're talking about.. so i'm pretty confused what you are saying
- C/C++ with static code analysis is not worse than Rust. But most Rust developers are beginners during there are many C/C++ developers with 20+ years knowledge. So whats exactly is the point in using Rust?
- That "I actually don't have any personal criticisms of Jarred" made me do a spit take, because a majority of what I had just read was absolutely a personally targeted criticism of Jarred.
Whether that's "okay" is a totally separate issue. I have no idea what the history here is, or whether this is warranted. But that was absolutely a personal criticism!
- I was wrong to be upset this whole time that the rewrite would hurt Zig. This is one of those rare occasions when I’m glad I was wrong. Interesting insights.
- I don't think Bun actually matters much, even for web development. For sure there is a lot of enthusiasm, but all the production systems I know continue to use Node.js and are not moving to Bun any time soon. In the "real world" not that many people care about it.
- I agree with you, but Bun was still something of a flagship project for Zig. It received a lot of attention, which indirectly helped Zig's popularity.
- Exactly, it's some niche thing not a lot of people care about in my opinion. I certainly don't.
- I find this sad, as I use Bun as a Node.js replacement that works really well. I wanted improved builds times and run speed. Both things bun provided. It reduced ram usage and worked with the node ecosystem well.
So for some workflows it looked like a flat improvement on all parts.
- A better title would be 'My emotions on the Bun Rust Rewrite', since the article feels like an emotional reaction rather than a thoughtful analysis of the situation. Give it some time..
I'm rooting for Zig either way, even though I have nothing against Rust and I don't directly use bun.
- well, for me personally, "the" Zig project is not Bun but Ghostty, and it always has been.
yeah, Mitchell is very pro-AI, but he is thoughtful, and he sometimes highlights the difference between Zig's and Ghostty's approaches to LLMs (outright ban vs taming)
- Yeah and Andrew Kelley is anti AI for his project because it’s counter to the projects learning goals. I think it’s perfectly fine for a project to determine if AI contributions are accepted. Maybe that means change is slower in that project, maybe that means things are more deliberate too.
OSS projects can survive not being on GitHub, Python was something like 20 years was not on gh. If the service has severe outages and there are alternatives why wouldn’t you move? Most people aren’t contributing to the runtime anyways, they are just using the language.
- I have a working port of ghostty to rust ... not even kidding
- Anyone who would write an article like this is much more distasteful to me than anything Jarred did.
- Why? I think the original blog post, which he is replying to, demands a reply.
Its a breath of fresh air to get this whole debate out in the open
- I do not think the original blog post demands a reply. Zig people have already written about this. I found the original blog post quite complimentary of Zig and the community.
It is challenging for me to imagine how one would think an article like this is net beneficial for the community rather than reacting with grace.
- Jared’s post was entirely technical, this post was mostly personal.
- Jared has behaved appallingly in recent months. Comments about locking out humans from open source code contributions and the gaslighting at the start of the migration are top of mind.
- When I read about the bun rewrite I thought no sh*t, those are the exactly the types of bugs I would expect when doing a line by line rewrite of a program in a GC language to memory managed.
I was unimpressed with the engineering from the blog, and I'm not surprised to read andrew say they claimed no fuzz testing. I know someone who interviewed at bun when it was less than 10 people (around 5 he said). Allegedly jared lowballed the fk out of my friend, claimed they had no money because they're a startup, then proceeded to offer <1% equity
- I think I'm missing something; neither zig nor rust are GC languages. Did bun originally start off in javascript or something, and the rewrite you're referring to is from JS to zig?
- First line of the original article (not including the disclosure)
> Bun started as a line-for-line port of esbuild's JavaScript & TypeScript transpiler from Go to Zig
Then proceeded to talk about use after free bugs, leaks, and other things that wouldn't exist in GC written programs. Ironically, my friend jared lowballed is an expert in C, runtimes and threading
- articles like these are needed - if you've to call people out - do it.
the tech industry's fake politeness has caused pain and confusion.
& yeah - I had already stayed off Bun before the whole rewrite, but now more reasons.
- I think people have read so much corporate PR posts they think that is a rule of how to post online.
This post is his personal blog, he is a human writing what he thinks.
If this was a tweet people would be fine with it, but it is a blog so he should make it corporate-y
- "If this was a tweet people would be fine with it"
Actually, some folks do care about how the leader and public face of a project conduct themselves regardless of venue. If a different public figure ie some CEO wrote something reprehensible about some particular ethnic group, is it more excusable or forgivable if they did it on their personal social media account rather than the company blog? Same basic thing.
Public writing in a personal space is still public writing. Being held accountable for publicly stated views is an inherent part of sharing them in public, no?
- [delayed]
- Dedicating most of the article to a personal attack and then finishing by saying that you don't have anything against the person is a bit of an odd sequence.
- Thank you Andrew for sharing your side of the story. We can see that the relationship with Bun and Jarred was far from easy. You say it with your own words and even if it sounds bitter I like it much more than some bland AI assisted content.
- Andrew could have been more tactful in his blog post (though as I've grown older I often find less tact to be more effective), but it really sounds like accommodating Bun was a net negative for Zig.
I wouldn't call it beginner energy, though I understand it might seem like that. Rather, it's an approach to development and no amount of time changes it.When Jarred joined the Zig community about 5 years ago, I described him as someone who had strong "beginner energy". - Why are we so eager to dismiss the very personal experiences of Andrew - someone who envisioned and developed Zig from the ground up? It is entirely within the realm of possibility that what he describes here did transpire. He had bad experiences with one of the more popular projects within the ecosystem - something that he hoped would become successful but the incentives were clearly misaligned.
When in doubt - look at the incentives. And the incentives here are fairly obvious. On one hand we have an open source project that is focused on quality and craftsmanship, and on the other hand we have the world's biggest AI company.
I am not anti-AI. But things like taste and quality matter. And I trust the creator of Zig more than the creator of Bun when it comes to said taste.
- > But things like taste and quality matter. And I trust the creator of Zig more than the creator of Bun when it comes to said taste.
Having read both articles I'm in the opposite corner. I found Andrew's personal ad-hominem filled emotional post distasteful and Jarred's purely technical and filled with praise of Zig well written and in good taste.
- i think the blog post was very honest and direct and i could not agree more with andrew, now i’m not a zig user and i don’t find the language itself pleasing but it’s just a matter of taste,
i admire a few things in zig community, the focus on human relationship with learning and discovery and the focus on performance and building a meaningful relationship with members of community, I wish all the best to the zig and its community, although i have heard a few years ago that andrew was making apologies for not having enough diversity (race and skin colour wise) which i guess was a very dumb statement, but hey we all make dumb statements!
I really admire his stance on AI and agentic code contribution and the joy that they find in crafting good tools.
- Am I right in thinking the Bun rewrite hasn't actually been released yet? There was a big kerfuffle when it was merged to master and people seemed to be behaving like that meant it was all done and dusted (as does this article), but it looks like the last release is still 1.3.14 from April so presumably general users are still on the Zig version? Is there a timeline for release?
- It's shipping soon https://bun.com/blog/bun-in-rust and has been shipping in Claude Code for the last three weeks https://bun.com/blog/bun-in-rust .
- As an outside observer with no horse in this race I think this post its more about the feelings of Andrew than pure technical content. He must surely feel frustated about Bun's migration to Rust and what it means for Zig, but it reads as sour grapes.
Compare the tone of this post to the one from Jarred about the Rust migration from yesterday, that one reads like a sensible technical document (no matter what you feel about the AI assisted migration).
This one reeks of hurt ego to me. Hell hath no fury like a language creator scorned.
- Bun's bundler claimed the bottom place in my recent analysis of how JavaScript tools handle generating inline script tags[1], because despite making lofty promises about being able to bundle applications into standalone HTML files, it produced a baffling combination of spurious syntax errors and miscompilations when presented with tricky code.
I'm pretty sure the version I tested was the Zig one (have they made a stable release of the Rust rewrite yet?). So I can definitely see how Bun's move-fast-and-break-things philosophy would have been a poor fit for the Zig community, even prior to the Rust rewrite.
[1] https://carter.sande.duodecima.technology/inline-script-pitf...
- > The post claims they were fuzzing their Zig code, while during our calls the whole Bun team told us that they were not fuzzing anything. This appears to be an outright fabrication.
Interesting I wonder if its something Jarred did locally or something else that was just not widely done by the whole team? I dont like to make bad assumptions about devs or dev teams without first asking. I owe credit to HN for one of the guidelines which states something like do not assume intentional malice in comments, I feel like we assume the worst in general about other devs, but people are imperfect and make mistakes.
That said as others noted this post could have been written a bit differently while still pointing out genuine issues. The ad hominem attacks are a bit unnecessary and add nothing of value to what could have been a better response.
- Andrew Kelly be like "You give major beginner energy, you're a bad manager, your code is trash and I was soo happy when you left" and then ends with "this is not personal criticism BTW"
- Sounds like Andrew is using the same argument as Bjarne Stroustrup: if you use it right, you don't write bugs. It hasn't really worked out for C++.
- Yikes, the majority of this blog post is saying basically "skill issue" and "Jarred bad engineer", but I think that hurts Zig far more than Andrew realises.
If Bun, a disaster of engineering apparently, simply just switches to Rust and all of their issues magically disappear... then the Rust Vs Zig war is over before it started right?
- It's more like a transpile, far from idiomatic rust.
- So is this guy going to dress down any project that decides to move off of Zig? If Mitchell Hashimoto decides to move Ghostty off of Zig to C or Rust will we get a scathing blog post about that too?
- I've watched an interview with Andrew Kelley: https://youtu.be/iqddnwKF8HQ where he seemed much more chill and level-headed.
- I like zig a lot, I share its core philosophy, and I generally agree with Andrew's views. I found this article interesting, and I think it is understandable in all of this to be a bit bitter towards Bun and Jarred - in some sense, it had turned into a big "If you don't use Rust in 2026 you are stupid" which directly hurts the Zig project.
Personally, I prefer zig over most other languages. I find "memory-safety" is bought at the price of code that is not straightforward to reason about and requiring a steep learning curve. The reader's working memory is filled up quickly with language constructs and crutches rather than with the actual logic of the code at hand. I have used C++ for a large part of my professional career and eventually got so annoyed by always having to cross-reference multiple files to check which behavior might be used by which constructor and things like that. I have written a big and critical system in pure C once, just to try, and while I would not do it again, diligence and testing resulted in virtually zero runtime failures across its lifespan - while it was always possible to quickly reason about all the logic that tied low-level hardware access and near-realtime requirements together in a way much more visible than hidden behind layers of "safe" abstraction. Zig is, for me, the sweet spot: It solves the terrible issues that plain C has, and adds a lot of convenience on top that does not obscure the logic, while encouraging but not enforcing safe patterns.
- Zig is getting that Elm, etc vibe. Genius/visionary BFDL who's also personally incapable of leading the project towards healthy long-term viability.
Say what you will about Matz or José Valim, I don't think they'd ever write a "and don't let the door hit you on the way out" screed full of personal attacks ("stinky manager", "writing slop", "a total shit show") against a person who led a very prominent project and financially supported the language.
- Other people (not meaning this about you) very frequently seem to throw around the BFDL acronym uncritically without remembering or caring that Benevolent is the first word in there.
This blog post is mostly made up of pettiness and is not an isolated incident - he is often pretty "spicy" or downright hostile in comments sections when making an appearance.
- I am sorry but andrew is no where near the level of Evan imo
- I for one appreciate a public figure with a wildly opposed mindset to the Silicon Valley/VC-Funded/Ultrascaling/whatever crowd.
The pushback is warranted and on point, especially the technical points. It has taken a suspicious amount of time to produce the fabled blog post which I don't think states almost any new information beyond what Jarred has already shared on twitter. The one (and very interesting) exception is the theoretical price of the rewrite via the API pricing.
- [dead]
- reminds me of https://www.lesswrong.com/posts/qEbqPitYhWHthwFNu/bun-s-migr.... remember anthropic owns bun
- I'm glad LLM coding exists for people who want to move at an insane superhuman speed (perhaps they're trying to achieve escape velocity and launch into the stars or something) so that they don't grind down their fellow humans.
You can either do local optimization - a single individual moving as fast and as hard as humanly possible, or global optimization - a team working together and amplifying each other's efforts to produce something that is greater than the sum of its parts.
- When you said that “His code was slop well before LLMs” got a good cackle out of me.
The fact is, most people don’t have taste and haven’t had taste, LLMs just amplify what was already there. Good taste is good taste, slop is slop, and shit is shit.
Glad you guys were able to go your separate ways.
- Calling someone "stinky manager" is not ad hominem. It's a way of saying that he's managerial skills are very poor. Does it relate to the argument? Very much so. Changing a bread factory into a slop factory makes Jarred a stinky manager and even a "sloppy" one
- How this should have gone:
"Dear Diary,
Today I didn't post a response to a blog post that levelled minimal criticisms at my project.
Below is the full text I didn't post."
- The callout about auditing inline and comptime reminds exactly of the C++ point made about how you have to follow the style guide. Whoosh?
- While I understand ZSF's bittersweet relationship with Oven and agree to several points (especially preparedness), this writing is badly structured and that shows something. Hope to see him turning around.
- I’m not sure why this post even exists? It feels completely unnecessary. Don’t get me wrong, I like drama as much as the next guy, but it didn’t have to be public imo
- Nice writing by Andrew IMO, please don’t be discouraged by people criticizing the writing style, it is firmly on the lighter side of what I would expect. It even feels a bit passive aggressive to me so it would be better have a more direct and harsh writing style maybe?
As a side note, never trust someone saying they use fuzz testing just because they say so. Odds are they don’t even understand what fuzz testing is.
And it was glaringly obvious they don’t know how to program in this context from their complaints around memory safety. The issue should never that the code randomly segfaults, it should only be it maybe exploitable in an adversarial scenario.
For all comments that will write something like “I can’t believe how rude this is”:
No one really care about this, there are real problems in life, please get a grip, you are just being annoying
- The post reads like someone who is quite upset but trying to maintain professionalism. The mask slips throughout.
The points seem valid, however, and I will likely steer clear of Bun.
- The blog post looks a bit distasteful if I'm honest. I was expecting a technical writeup explaining why it was/wasn't a good fit for zig.
> He gets to live out his productivity fantasy fever dream, he's probably already super wealthy. He has minor tech celebrity status.
Looks like a backhanded personal comment? This didn't need to be in the article.
> It's almost like the marketing department of a trillion dollar company has a lot of money riding on this article.
> The post claims they were fuzzing their Zig code, while during our calls the whole Bun team told us that they were not fuzzing anything. This appears to be an outright fabrication.
Smells like a lot of bias coming in. The fuzzing part was not a fabrication.
> sufficient to catch bugs in 1 million lines of unreviewed slop?
I don't understand how even today software engineers are calling LLM written code slop? It's objectively much better than what most of the engineers write, and it's not stopping to get better. If you still believe this, try out any frontier model on any work that you are currently doing, that should change your mind. There still are like 1% of cases where LLMs are not that good, but even there almost all of the time the issue is in the engineer's steering, not the LLM.
> There's a dichotomy being presented here where you have to either choose a "style guide" or a programming language feature in order to avoid bugs.
He says this, but doesn't give the steps to solve this?
> we all felt at ZSF that Bun was a net liability. > "It Tastes Like It's Not My Problem Anymore" > influx of tasteless AI enthusists into Zig communities
This may be the stance that encouraged Bun to leave.
- Why do I feel like reading the post of someone jealous or with low self esteem issues? Zig was not a good fit so why does it have to be a personal attack on the Bun maintainer over his life choices and his management decisions? Whatever beef you have with someone it should not be « zig is for elite and you are just an evil corporate maintainer because you are holding it wrong »
- Never heard of Bun or Jarred before today I enjoyed his blog post about the migration to rust, it is an impressive feat if real ! I didnt see anything bad about Zig in the post, on the contrary it shows respect and that big projects can be done in Zig
Next, I read Andrew's post, and the thing I see is: Jarred looks like an achiever, Andrew more like a butthurt childish whiner I also can see why Jarred made the migration, it is not only technical, and it was a great call IMHO
- > he could have easily achieved a solid living via crowdfunding, even for San Francisco standards.
That sounds completely surreal. Is Bun really used that much?
- That is a 100% on point analysis, there was a lot of hype around Bun since the beginning when it was an invite only project. Arguably that same interest is what got Jarred VC funding in the first place.
Note that usage and public interest are not the same quantity, people also care about the potential of a project.
- A project getting hype does not mean that same project could sustain itself through crowdfunding.
- > The sleight of hand misdirects the reader away from the main way bugs are eliminated: by dedicating engineering resources to it.
I was on a platform team and I had a constant backlog of bugs (introduced by others) that I was working on and the two most impactful things for preventing bugs were Typescript and Cypress (playwright-like testing before playwright).
I've dealt with many shitty code bases and the only way that worked for removing bugs was automation. It didn't matter how many bodies you threw at the problem.
> Then why are you saying you have so many annoying bugs in the Zig code? What happened to the test suite being sufficient to catch everything?
You can't use tests for trying to catch use after frees and other memory bugs for the same reason you can't use unit tests as a replacement for type checking, the combinatorial explosion of possible inputs into functions makes unit testing types across an entire project impossible.
Anyway, Jared donated $60k a year to this project and tried to resolve this in the most diplomatic way possible and still got personally attacked. The lesson from this article is don't donate to the Zig project because if you migrate away from it they will try to ruin your reputation.
edit: changed month to year
- > Anyway, Jared donated $60k a month to this project
$60k per year, which amounts to $5k per month. Still, nothing to be sneered at.
- Is the bun rewrite actually done? There's no tag for the release, and as it stands robobun has almost 1.3k open PRs on the repo: https://github.com/oven-sh/bun/pulls/robobun
It doesn't look done.
And it looks like work on the rewrite began in early may: https://github.com/oven-sh/bun/commit/46d3bc29f270fa881dd573...
So... its more like a 2 month rewrite that is definitely not done yet????
- From the rewrite to Rust article:
> Bun v1.3.14 was the last version of Bun written in Zig. Bun v1.4.0 will be the first version of Bun written in Rust. It's available in canary now.
It's also been shipping with Claude Code since June 17th.
- It's been shipping in the company that's success is partly contingent on it shipping? But there's no release? Curious.
- Sounds like the first release is coming very soon.
Given the size of the rewrite I think it's pretty responsible to dogfood it a lot - including with a Claude Code release - before pushing a stable release to the wider community.
- I recall an instance where he mocked the project as "Microslop" on his blog and then quietly edited the post later. That aside, the earlier rewrite from TypeScript to Go involved efforts to minimize regressions as much as possible—such as announcements to users and the community, and a phased, one-on-one migration. This project, however, is a different story. It becomes from a buggy product to an entire slop product.
- > I recall an instance where he mocked the project as "Microslop" on his blog and then quietly edited the post later.
Sorry, this is wrong. Not relating Bun project.
https://web.archive.org/web/20260204011603/https://ziglang.o...
> Microslop Windows provides a large ABI surface area for doing things in the kernel. However, not all ABIs are created equally. As Casey Muratori points out in his lecture, The Only Unbreakable Law, the organizational structure of software development teams has a direct impact on the structure of the software they produce.
- I think people are overfocusing on the wrong thing.
Bun is slop. Let's not pretend it is not. It went from 600k lines of zig to almost a million of rust, for a wrapper around a js engine. It might be useful slop, but it is still slop.
It's understandable to have mixed feelings about bun as the creator of the language.
You spend 10 years of your time making a language, and one of the most prominent projects that uses it does it in a nasty and sloppy way. You try to help, but your advice gets ignored.
You make a whole language about improving software quality, only to be associated with a project that doesn't care about it.
For once I do appreciate that somebody is willing to have the guts to say what they think. The bun rust rewrite article said no words about the tradeoffs of moving to Rust (compilation times?), and I agree with the false dichotomy presented. How do we know that most bun bugs were not created because of slop / AI usage / stubbornness?
- >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.
I'd like to know what the poor code quality in Bun looks like. Does anybody have concrete examples?
- The project needs an adult in the room - preferably someone less on the spectrum - who approves this content before it goes out. This reads as an incredibly butthurt, petulant rant, authored by someone deeply hurt that users are putting all the blocks into the square hole. Andrew would have been served better by a Linus-style curt takedown, rather than this drivel.
- Agreed. Valid criticism and concerns are drowned out by personal feelings. Probably should have ran his post by an AI.
- > preferably someone less on the spectrum
Are you implying that this reads as all those bad things because Andrew is supposedly autistic? And that if he were to not supposedly have autism, this post wouldn't have read as all those bad things? This reads as an incredibly ableist post authored by someone who thinks autism is an insurmountably negative thing and that someone with "sufficient" autism shouldn't run a project. As if autism is a percentage where once you get past 33% you immediately become incompetent. Be better.
- Oh man you'd love Bluesky. No one else cares about 2018 tech twitter "ist" bullshit anymore. Get bent.
- "No one else cares about someone being discriminatory towards people with autism". Okay bro. Yes the reason I posted that comment was to be performative for a 2018 tech twitter audience. Grow up and have some empathy instead of being antisocial on an internet forum
- So bun went from bad Zig code to absolute slop Rust code?
- Yes, but at least now its memory safe.
- Allegedly.
- Such a refreshing take after all the marketing nonsense from Bun. Zig is a glimmer of hope in a world of slop.
- Disclaimer: I'm bullish on Rust. And I think LLMs are overhyped, and kind of overhated.
Honestly, I think it would have been better if he had done the smart thing and ignored the noise around Bun's Zig -> Rust, and focused on code.
If he was willing to ride the coattails of Zig being hyped by Bun, then he should have taken the hit when Zig and Bun parted ways.
Hell, if he is that happy that they are leaving, he shouldn't have written that he is happy. Just smile and wave...
So now Jarred wrote a very matter-of-fact post about migrating Bun to Rust, and Andrew Kelley wrote a ranty blog about Jarred sucking at Zig, and being glad he's gone.
- This is 2017 Biden vs Trump for people who know who Godbolt is
- Related:
Rewriting Bun in Rust
- The video he links to at the end is such a strong message, somehow able to celebrate the promise of AI while not afraid to point out whats complicated, or even fraught there. AI is, truly, a reflection of ourselves, our own hangups, prejudice, desire. Its both what draws us to it, but also inspires us to be critical. Thanks for the prescient reminder there OP.
- It feels like the first half of blog post is less of "thoughts on the Bun Rust Rewrite" and more "I don't like Jarred, he's a bad programmer and manager".
Maybe I'm wrong, but it strongly feels this way. I'm not saying that Andrew is right or wrong, it's just that you could throw out most of the first half of the post and not lose anything actually on topic.
> But having graduated from the Thiel Fellowship school of thought rather than university, he was essentially groomed from a young age into uncritically embracing the Silicon Valley mindset, and he took venture capital.
> Jarred was a stinky manager. Poor communication, unrealistic expectations, low empathy, no experience. Just a total shit show, from an employment perspective.
> Jarred was already writing slop well before he had access to LLMs
- Andrew is right. I’m sure his emotions come through here, but his take on these things lines up with everything I’ve seen.
- Same. After following the drama on HN and Twitter it's pretty clear Jarred has been intentionally doing something that's hurting Zig/Bun community. What I've seen check out with those statements in the post
- To me, most on HN have drank the AI koolaid (and/or are financially invested in it), and God forbid a direct and personal critique on a project owned by Anthropic!
We must not let the shareholder value fall /s
- You only need to follow Jarred/Bun's own comments on Twitter/HN to figure things out, where selective info were posted based on some agenda instead of clearing things up, aka communication
- I find the pro-AI and anti-AI somewhat inconsistent, where I had either side strongly reacting to my comments. I personally didn't expect so much support for Bun in this thread.
- I mean I wouldn’t want to work for Andrew Kelley either. Doesn’t mean I don’t see utility in zig. Taking swings at a pretty toxic culture (silicon valley) while refreshing also paints a target on your back. This isn’t unhinged shit though so it hasn’t dissuaded me from learning Zig
- I read the post and roughly summarized it as:
1.It felt uncomfortable that Bun was presented as a representative example of Zig. From the internal Zig perspective, it looked more like a bad example of how to use Zig.
2.It felt uncomfortable that they spoke as if Rust prevents things that could actually be handled by Zig's style guide.
3.I(OP,andrewkelly) don't think badly of Jarred as a person, but after signing a contract with VC, the management side has been poor.
4.The Bun documentation looked like marketing.
5.Bad contributions driven by AI came through indirect promotion of Bun, which attracted interest from people after it was acquired by Antropic.
I understand that it's burdensome to see Bun as Zig's representative success story, and I get the wish not to see Rust rewrites through a lens of language superiority. But on the flip side, I'm not sure I would have ever learned about Zig if not for Bun.
While the criticism is valid, I also understand Bun's position. After all, Antropic's acquisition of Bun was ultimately about showing that even a 'new language' can be used effectively with AI, and that's precisely where the friction arose.
I think the refusal to accept AI from a purely human programmer perspective is a matter of personal values, and I find the Zig team admirable on a human level. (Though I'm an active proponent of AI, so my view differs.)
Both sides have valid points, but sometimes I wish someone would turn the emotional and political dynamics of open source into a novel. I think it would be fascinating
- > 2.It felt uncomfortable that they spoke as if Rust prevents things that could actually be handled by Zig's style guide.
"Handled by Zig's style guide" ends up as "Don't make mistakes" which is entirely useless advice. C++ spent years trying to make out that this constitutes useful guidance before gradually accepting that people aren't in fact going to stop making mistakes, you need to provide a better language and tools.
- I agree with some points as well. In fact, the OP argues that sufficient engineering attention can solve the problem, but I think that's only theoretical in reality, it's difficult. It's like C programmers claiming that undefined behavior is manageable.
- The "Don't make mistakes" thing isn't even just Programmming, that's why I consider it unforgivable. Railway interlocking starts in the Nineteenth Century. It's a fully mechanical system, if you see an old "Signal box" somewhere, that cabin with a human pulling levers isn't up there just because it's a better vantage point (though that doesn't hurt) it's because there are physically steel cogs and gears meshed together to allow the machine they're operating to only enter safe states. If you make mistakes in that signal box just moving the levers and so on nothing terrible happens. Worst case you annoy people and that's forgiveable.
https://www.youtube.com/watch?v=omYfLDlt-MA
Like Avon says in The Wire, "And how you ain't never gonna be slow? Never be late?". Systems which require that you don't make mistakes will fail.
- *Ben
- Sorry. Sometimes I can't remember the English spelling. Thanks for the correction. i've fixed it
- Ah I was just joking. Same here, non native english speaker, you did well.
- Not accepting a PR because it was purely written by AI is like saying PRs will only be accepted if the developer used a standing desk for more than 75% of the time during the code's creation. In the end, as long as the code is not shit, who cares how the sausage was made!
- I find it hard to believe you actually think those two things are similar or equivalent. I've heard many bad analogies in my life but this is so funny that it makes me think you're being sarcastic.
- We have the potential to get along really well, but this isn't really the right comment thread for that, haha
- I desperately hope that the Andrew Kelley style of software engineering will survive all of this; that users will continue to value quality and not be content with slop. This, of course, presumes that products built fully by agents will produce sub-par quality in the future. If they will be able to manage to glue all of this slop together without the project collapsing in on itself, none of this will matter. I just hope that this isn't the future of the industry.
- Ex-Bun employee for transparency. I have skin in the game.
I respect andrewrk and Jarred in different ways. My understanding are that neither are media trained. Very patronizing post from andrewrk and shows his hostility towards Jarred. I mostly agree with the core meat and potatoes of his post, but the hostile tone, the snarky VC-related remarks, the fact that *most* of his comments felt like a defensive remark.
Yes -- bun has problems. Yes -- bun moves very quickly. Yes -- the 1.4 post seems quite heavily copy-written. Yes -- Jarred doesn't have a syseng background.
But god fucking damn Andrew, you have some problems too -- you have your head up your ass. Every Zig feature that people would love to have, which you personally disagree with will NEVER enter Zig. Why do I still need anonymous structures for lambdas? Sure, no closures I get, but no lambdas? My friends at Tesla tried Zig and then churned to Rust too, for the very same questionable leadership model. Zig will never be a general purpose language because the people -- who have many different generic and general purposes for a language -- simply don't get what they want. Zig is an andrewrk-purpose language at best. Is this leadership for the future of Zig?
I don't want to slander andrewrk. With the brief hiss I've provided, I think he does a more-or-less great job with Zig. It's a really small team, and they're really productive too. The ZSF is a really nice set of people too, from my brief fly-on-the wall moments with meetings with them. They care about Zig and they work really darn hard for it. I've also learned a huge amount from andrewrk, and I respect that he's an off-the-cuff guy. Surprisingly, I am too. Chances are, in his shoes, I'd probably get equally rage-baited to write a similar post.
But reflecting upon this, this is just not productive. These kind of public outlashes are not healthy for the language, don't cause good publicity, and could have been a useful reflection point for the ZSF -- not in terms of money, but in terms of what they want to do with the language. Instead of being a strawman at Jarred, it could have been:
- Bun's not the greatest code quality. (And it really isn't -- I was very stressed by this at work) - Zig doesn't aim to give you tools to manage complexity. We expect the developer to adhere to high code quality. (And this is also very true, coming from C++ -- I was also very stressed by this reality.) - The AI-generated rewrite is not a good idea for reasons XYZ (and I personally think this is true). - We are grateful for Bun being part of the ecosystem, but agree it doesn't adhere to our ethos, nor design philosophy, so it makes sense.
The discussion in the Rust circles (which I am a part of too) is completely different and so much more nuanced -- folks are talking about the code, how many unsafes there are, some of the very valid concerns, but the tone is significantly less enraged.
This is a perfectly legal, polite way to leech on top of the media attention (I mean we are all doing it), maybe throw in some spicy bits with references to some GH issues to stir Twitter up but remain polite and respectful. This was just rude for no good reason, esp. because Jarred CLEARLY was only very respectful towards ZSF.
Personally, I won't run Bun in prod, but I no longer write any Zig either. Good old node for me, and good old C, Rust and C++ too.
- > We became increasingly horrified at the programming practices we saw in Bun's codebase. Hacks on top of hacks. > Jarred was already writing slop well before he had access to LLMs
Ufff, the creator of zig saying that the biggest zig project is slop was definitly not on my bingo card.
Its sad to see that on of the biggest projects was more or less badly written zig code. On that note, I wonder which big project have good zig code?
- Ghostty, TigerBeatle. The other two poster children.
- Andrew sounds whiney. His reasoning seems sound until he begins to attribute Bun for an uptick in drive-by slop contributions.
The man may need some time to decompress, away from social media.
- I notice something more interesting. This post shows Andrew to not only personally criticise Ben but also clearly shows an ideological stance against AI. I can see it from multiple angles - refusing AI PR's, refusing Anthropic's donation and multiple other things.
Either this ideology helps Zig position itself as a hand crafted language. Or this ideology is self defeating.
- This is quite an interesting read from Andrew's perspective. But one line tells me everything I needed to know.
> The blog post is expertly written. It's almost like the marketing department of a trillion dollar company has a lot of money riding on this article.
Even Andrew knew that this was going to be Anthropic's marketing opportunity for AI to rewrite Bun from Zig into Rust. This post from Jarred says it all. [0] If you have access to hundreds of billions worth of resources (infinite tokens and compute), they don't care what others think and some relationships are just cheap to discard.
Like I said before in [1] and [2], Bun (now Anthropic) does not care about you. They did this to market the capabilities of their AI models and this rewrite was an example of that in broad daylight. Even if Zig allowed AI generated contributions, this move was going to happen anyway.
I cannot believe that many commenters in [0] at the time did not see that this rewrite was eventually going to happen.
[0] https://news.ycombinator.com/item?id=48019226
- Yeah 100% they were going to do this anyways.
- While I agree that the Zig code in Bun could be better, and that the Silicon Valley pressure to move fast and break things prevented a lot of suggested improvements, this feels like the same argument as people who write C or C++ where people think they wouldn’t make mistakes.
For example this section
> We've been trying to warn you about your comptime abuse for years.
You could replace comptime with templates in C++ and it would be the same story. People will abuse features you put in the language. Is C++ a good language that people are just using wrong? According to Bjarne Stroustrup yes, and the C++ core guidelines fixes those issues, but a lot of people seem to disagree. Don't believe me here is an interview where he talks about memory safety in C++? ^1
> Ryan: One thing that I think C++ is uh infamous for is kind of like memory safety issues or kind of foot guns that exist there.
> Bjarne: I'm so tired of that. Um I haven't had those problems for years. Um, and somebody did a a study of the obvious problems with buffer overflows and um people hacking in using that kind of stuff and uh almost all of the uh these cases when people writing C style code or in C and uh Herb Server has a a talk with with actual numbers and they they are quite significant. It's it's sort of that kind of problems more than 90% are for people that don't write modern C++. They they use raw pointers to pass things around without um the number of elements. No fat pointers, no spans. um you you have them in C++. You can use them. You can use uh vectors. We have hardened libraries. Everybody has hardened libraries that that does the runtime checking. Uh Apple has it. Google has it. Microsoft has it. It's just not standard till now. C++ 26 has a hardened option that are standard. uh and the work I'm doing on profiles will give you a way of guaranteeing that you don't do the stupid things. Um so anyway, uh fundamentally theoretically the problem was solved many years ago and people just do what they've always done and get the problems they've always had. And uh that makes me sad and uh it's one of the things that makes me work on uh coding guidelines and on enforced profiles and on education. I mean education is one way to solve the problem. Is there a way to get the compiler to just prevent people from doing all those risky things? And is that enabled by default in modern C++ today? No, but it should be. I'm proposing that for C++ 29. Uh the simpler versions of that should have been in in in uh C++ 26, but there are still a lot of people even in the C++ standards committee that are very devoted to uh their old code and their old ways of doing things. Um there's people who says you should only standardize what is common in industry. But when the bugs are common in industry, you should do something else.
Is this going to be Zig's answers to real issues that people have in the real world? I'd argue that's not good enough for a modern systems programming language.
> 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.
The vast majority of software is written by businesses, who have to cater to the lowest common denominator in their code base, including slop programmers, pre or post llm. They are not incentivized to go slower. We will never see a mass adoption of Tiger Style programming (though I would be happy to be proven wrong). That is the reality of what we need programming languages to help with in 2026. I've never met a professional programmer that has not seen or said the same thing about a code base that they've worked on.
New programming languages need to contend with that reality if they want to be adopted en masse. If not they are doomed to not be adopted (which is okay I've created many programming languages that are just for me). But if a programming language in never adopted then the supposed benefits or improvements of the language never trickle down to us the users of the software, so they just remain interesting ideas (which again is okay).
> This attention could have been harnessed in a few different ways. For example, he could have easily achieved a solid living via crowdfunding, even for San Francisco standards.
Andrew kelley runs a tight ship, and his foundation does not need a lot of money to keep going, but he has talked about how working on all the organizational transparency is not his favorite part of the project, and I can see why a lot of young programmers wouldn’t want to go that way.
Now let me be clear I actually like Zig, and have promoted it on Hacker News before, and written some code myself. I actual uses Zigcc in one of my projects because it makes my life easier. I genuinely love the tooling of Zig, and I feel like the language respects my time. I want the language to succeed
I also think that Andrew Kelley is a principled man with good engineering sense, and has turned down opportunities that would have made him a lot more money, were he to violate his own principles. That is admirable, and he has demonstrated it on so many occasions that it is currently not a question to me. What I would like to see, and what Andrew has said Zig focuses is how Zig can improve program correctness even more, without requiring me, or my coworkers to be a 10x programmer
- I agree with some of your points, but I think the Safe C++ project will be difficult because it would require breaking backward compatibility with existing projects. Honestly, I also don't agree with the claim that 'if you manage it well, data races and memory safety errors won't happen.' However, C++ already has so many projects built on it that breaking backward compatibility would cause serious problems. I think it might be better to just switch to a different language altogether.
- [flagged]
- [dead]
- [dead]
- [dead]
- > The sleight of hand misdirects the reader away from the main way bugs are eliminated: by dedicating engineering resources to it.
Why don't YOU spend the engineering resources to add RAII and a borrow checker instead of blaming your users?