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.
The author’s tone in this piece can be described as brutally candid, deeply relieved, and unapologetically sarcastic.
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."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.
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.
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.
Conventions are still being made, and I think this use might end up being acceptable.
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.
That's your brain's job, don't outsource it.
It's not a happy breakup, but not a super sad one either.
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 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.
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".
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. The specific dry, professional post you suggest wouldn't have given me any new information at all.
I think this is the exact point that the article was getting at in the last section. It is okay to not be very good at software engineering or people management! It is useful to know these things if you want to understand why the Bun project made specific technical decisions, but they don't make the people involved "bad people" in a more nebulous moral sense.
The lead developer of Zig is discussing these factors because the main technical decision was moving away from Zig.
The original post explicitly praised Zig, and seemed to be arguing more that Zig was a great tool for the initial version of Bun, but that Rust was better for their needs as Bun grew to a larger project with a larger contribution team.
That seems completely in line with what Zig claims its strengths are. Zig's response to "but memory bugs" has basically always been "Zig is not a language for a big tumultuous project that you're going to throw interns at."
If you didn't catch that then I'm not sure we read the same article. I haven't gone past basic tutorials in either language and I was really starting to believe that zig must be worse than C or C++! After thinking about it for a minute I wondered if maybe the developer was actually, well, not very good. Andrew's blog post did a lot to explain to me the background behind this all. I really appreciated it.
was the cherry on top.
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".
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.
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 bury 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"?
As fellow professionals in this field, shall we engage in this very professional debate about Jarred's honesty as a moral human being?
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'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?
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.
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.
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.
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?
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.
Should Jarred's post have mentioned how Andrew kept bikeshedding Bun code style and how he always felt superior about others?
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?
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?
"already writing slop well before he had access to LLMs" and maybe "low empathy".
Just because the other bits are negative and not so nice pieces of feedback one wouldn't want to hear doesn't necessarily make them attacks.
An attack is often far more personal (making fun of you for aspects of your existence you can't control, touching personal subjects like families, etc). idk, maybe I'm just not soaked enough in the goo goo baby corporate saccharine LLM speak or something but this post felt tame to me, if a bit cheeky. Nothing but a thumb jab at worst.
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.
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.
Andrew was still way out of line in making many of the points included in this post, you don't have to be pro-AI to feel that way.
Just a complete lack of emotional intelligence. You do not treat people like this.
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.
Would you like to discuss that point as a fellow professional in the field?
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?
Draper sabotages Ginsburg because he's threatened by him. In the elevator Don is masking his insecurities, as he deeply fears Ginsburg's talent. His own creativity, and confidence, has been crumbling. It's all ego.
Ginsburg's tagline wins Jaguar! (Joan clears an obstacle to them winning it, but they still had to win it). It's the most important account in the history of SCDP. Don doesn't care; he's overjoyed just to have a good tag.
And then, of course, the insecure Draper interpretation makes absolutely no sense here --- there's no conceivable universe where Zig is at the top of Anthropic's mind right now. Which was the only point to bringing up the meme in the first place!
Time for a rewatch I suppose.
Take away any questions of ego or rivalry: Don is obsessed with the youth of his era. Over and over again we see him trying to pick the lock of understanding how they see the world, just as his own youth is departing.
He absolutely thinks about Ginsberg—deeply—even if only from an anthropological perspective.
Every part of this saga has gotten an exceptional amount of attention on HN. HN is ostensibly filled with many people starting software-related companies, ie potential Anthropic customers.
the "largest real-world demonstration of Claude's capabilities" is sitting in local repos, built with the daily quota leftovers from corpo accounts
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".
So, yes, I find that line laughably disingenuous.
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 just return to them the kindness they show me when they say, "You made this?? I made this!!"
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.
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.
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.
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.
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.
As Lin-Manuel Hamilton said, "God help and forgive me; I want to build something that's gonna outlive me."
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.
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
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."
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
Most likely too late for edit, but Jarred is who work for Anthropic, not Andrew.
My take away was closer to "This is what we tried, this is the sentiment they gave back, then this is what happened, here's what I think of Jarred's way of working, glad they now use Rust, good riddance", but then I also apply this slightly unholy strategy of applying charitable reading when reading personal blog posts, and I worship neither of these people, so might be why we got slightly different takeaways.
No, not really. I know nothing about either of the people involved, and after reading the article I came away with an extremely negative opinion of the author. They are using their position as the leader of a language to attack and denigrate someone who used that language for years, donated to it, and eventually decided to move on.
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...
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.
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.
But from a purely Machiavellian perspective I don’t see a lot of downside in courting this group in the short term.
The takes I have seen about the "ethical thickets" all call out things that could have concerned the authors before LLMs, but which apparently did not.
In the short term, you can address the anti-AI market.
This has happened thousands of times in human history.
The thing about laggards is their money spends the same as everyone else’s.
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.
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!
Criticize the project and methodology, not the person.
This behaviour by the commentariat here on HN seems more like a reflexive revulsion at the discovering of humans with ideals other than money on this globe.
This of course leads to strong internal conflict - it becomes harder to accept yourself not having any morals when confronted by someone pointing it out. Easily resolved by the ego by disparaging the boss of zed instead.
> not having any morals
You don't agree with someone so you claim they have no morals. I don't have words for how stupid this is that anyone can so casually dehumanize someone over something so trivial.
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.
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.
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.
Incredible display of bad faith discussion. You should be ashamed.
This entire blog post exists due to someone clearly needing to vent, try to work backwards from that. If things were as peachy amicable as you guys imagine, this thread wouldn’t exists.
The history of humanity is full of biting polemics and attacks on the character of others, just read Voltaire. Sometimes, attacks are deserved.
Yes, a world in which everyone is professional and "plays nice" sounds great but it also quickly becomes a mechanism for suppression of the truth. Not the situation here, but "decorum" expectations are sometimes precisely one of the functions that help bad people maintain power (consider how difficult it can be for minorities or marginalized people to speak truthfully about what's happened to them). Sometimes one person being blunt, honest, and a little rude is a necessary step in clearing ground for others to be more upfront about the bad behavior of individuals.
I don't interact with Zig or Bun, but I certainly haven't been enticed to try Zig after this.
> 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.
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.
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.
2) > 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.
What a bizarre framing of the relationship between a software library and the language it's written in. Why would you even liken it to a marriage lolwtf
Professional communication is direct, clear, and ideally courteous (but only to a point).
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...
They tend to be willing to increase their accountability faster than their compensation.
They sometimes argue, use profanity, or otherwise communicate emphatically, that is the register of communication when something critical is on the line.
The best computer hackers and other technologists through the years were very often outspoken, plain spoken, and did not suffer fools gladly. In their own way everyone from Djiksta to Jobs to Gabriel to Carmack to Linus to Nagggum to jwz to Hotz, too many to count.
It's the same in law offices, hospitals, and forward operating bases in any military that ever won a war. It's the same on a construction site or in Mission Control in Houston.
This venomous pretense of decorum performed by people who ruthlessly optimize to minimize their accountability while maximizing their compensation subject to no scruples.
That's not being professional that's being a leisure suit con man. It is en vogue at the moment precisely because we are in an extreme low integrity regime.
If I call your code slop, I'm being professional and courteous.
The truth doesn't have a ethical value. Me calling your code slop might feel disrespectful, but it's less disrespectful than trying to pass slop off for your coworkers (or users) to use and deal with.
Lying to someone, and allowing someone who's supposedly your friend to ship slop is more disrespectful. If I wrote shitty code, and my friend didn't stop me, and I find out later he knew it was shitty code... that would be very hard on our friendship.
Unless you meant it's a lie to call it slop code. A lie would be disrespectful, but then again, we both know you didn't say that because it's not a lie.
If you want to tell someone their code quality is poor, then you better do so with specific things that is poor so that the person you are telling it to can learn and do better.
You and I must have had very different interactions with the types of people who happily emit slop. For the people I've met who've suggested slop; they don't care about quality, and it has exclusively been a waste of time trying to explain why quality is important.
Calling someone's work slop, if they're willing to engage, might be disrespectful, I agree! But calling someone code/commit slop when they don't give a shit about the quality of their code (as evidenced by the commits they're willing to put their name on) is simply a description of reality. Willingness to engage is shockingly important. I can't think of a more vague response than answering "I don't know why the code is like that, the LLM did it".
I'd also like to assert: giving out slop to other people is more disrespectful, and less professional (professionals don't suggest low quality options). I'm much rather you try to insult my code, than waste my time trying to trick me into accepting low quality work.
And then, speaking personally. I would feel the most disrespected, if you were willing to call my code slop when speaking privately. But wouldn't call it slop to me, or publicly. It's not disrespectful to have a candid conversation; even if it's uncomfortable because someone has different and strong opinions than I do. I'm a big boy, I'm able to handle the honest evaluation of my work from another person without it being instantly being disrespectful to me, just because they used a word I didn't like.
If they were lying, that would be disrespectful.
But even random people you get on GitHub sending you PRs. You shouldn't reject them with "this code is slop". At least say "Cannot accept this. The code quality isn't great" or something to that effect.
But the point is: dismissing real people who are doing real work and spending a lot of effort on something with "that's slop" is very unprofessional.
You are just coming up with scenarios that don't really apply to what happened in this blog post.
I disagree. (Funny that, different people with different values have different perspectives on acceptable behavior?)
> You are just coming up with scenarios that don't really apply to what happened in this blog post.
Counterpoint; I'm actually sharing a perspective because I thought it would be interesting or useful to consider different opinions.
We're all just pattern matching; you see one form of indifference as offensive, I see a completely different set of actions as the root cause for the offense.
We all have our own rules for what follows and breaks the implicit social contract we've each invented independently. These rules are allowed to differ. You feel like someone insulting your code is more disrespectful, I feel like someone wasting my time is more disrespectful. If you'd like to assert I'm wrong, I'm equally happy to assert you're an idiot (in case it's not abundantly obvious, I don't think you're an idiot, this is an example of how I don't care about "insults")
> But the point is: dismissing real people who are doing real work and spending a lot of effort on something with "that's slop" is very unprofessional.
I might agree with parts of this, but fundamentally, LLM produced code does not count as real work. No, reviewing it doesn't count, because 1) it's harder to do right 2) no one does it correctly 3) if reviewing actually took more effort than no one would use LLMs.
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.
Sooo.... "be more professional in your writing"?
Why does this person owe you "professional writing" on their personal comment?
No, just more precise. It seems absurd to brand an entire community as "assholes" based on some disagreement with a blog post by one member. I suspect great GP didn't mean it that way, but it would help to have some clarification.
You’re really just helping to confirm his diagnosis.
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...
In the last decade, we've seen rampant abuses and exploitation of open source projects and of maintainers. So much individual good will and generous efforts wasted because of corporate malfeasanse.
AND YET. If you "open source" a project, if you actually invest in BUILDING a community, you then become a PART Of that community - with the benefits and obligations that come with it.
You don't want the obligations? Fine. But then you don't really get to keep participating in the community. And if you act like "This is MY community, I get to do whatever I want", people are free to shrug, and say "maybe i'll go find a different community".
Which is exactly how I see people reacting to Zig right now. They're seeing that an active member of this community (which, as you said, keeps insisting "he owes them nothing because the community wouldn't exist without them") treats people he doesn't like, and they think "Oof i don't want that to one day be me."
If they want to write a maybe slightly unhinged blog post excoriating someone they had an unpleasant time with... that's a choice! It's their choice. I don't think we get to demand a different one. We can agree or disagree with what they said, but we can't demand they say something else.
If you want that kind of power over someone you need to ensnare them in a binding contract. No such contract exists here.
This has been everyone's point the entire time. You agree with everyone here. No one is suggesting a binding contract exists, but a _social_ contract does exist -- and you concede that with the above recognition of how clearly this post violates it.
*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!
The content here is the issue. Bun converted their codebase from Zig to Rust, citing specific technical mismatches of Bun using Zig. The response is that Jarred was rumored to be bad at his job, Jarred was mean to people, and Zig didn't like dealing with Bun anyway because of their sloppy code. Maybe all of this is honest, but it's too convenient.
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?> 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.
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.
Instead of posting on Glassdoor or whatever the latest iteration of that is, Andrew just wrote it out here (and linked to a forum to back up the claim).
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.
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.
We have very different ideas about what kindness looks like. Honesty and rudeness are not synonyms.
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 you're assumption that it's 'filled with ad hominem attacks' is good evidence for that. I'd have to go back, and go line by line to be sure, but there are no ad hominem attacks. Ad hominem has a specific meaning: arguing against the person, instead of the argument. If the argument is about the behavior of a person, then unless one of those people is a party to the argument, it's exceptionally unlikely to be an ad hominem attack.
Argument: you can't trust the quality of the code $person produces. They mostly release slop code.
Neither are ad hominem: because words mean things. They're attacks against the code quality, and reputation of the subject. But they're not ad hominem. You may not like the opinion. But that doesn't make it an inappropriate attack against the person, the behavior and decisions they've made and the impact those decisions have had, are the topic of the post.
I guess technically, he takes shots at claude which no doubt wrote large sections of this? But I also would object to calling that ad hominem, and doubt that's what you meant?
Finally, even if I did agree the argument that the language in the blog post targets the speaker, more than it addresses the topic wasn't stupid, (I don't agree, it is a stupid idea). The social responsibility/contract to: never do anything publicly that might be considered an attack; was released when bun decided to comment publicly with disputed facts.
Oh no, someone wrote a blog post as a response and refutation to an otherwise unprovoked public post spreading what the author considers misinformation about something they care about?! Maybe they shouldn't have said anything?
How much politeness do you feel is owed? Why are the critiques enumerated improper? I'm honestly curious if you have reasons that I just can't see? Or if it's just vibes based? You don't like how it feels, and that's your objection? Ideally something like: this specific quote is completely off-topic, and exists not to express an idea important to the author, but near exclusively to insult a person. So that I can understand why you see insults that I can't see. If it's true, I can't consider it an insult.
Last question: would all your objections go mostly/completely away if every paragraph was prefixed by "In my opinion"?
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.
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.
That said I have positive feelings about Zig as a project, but I do see it is a straight vitality show of a person rather than someone putting broader adoption in front. If Andrew K ever prioritized adoption he would have been a kind and dull leader keen on advertising here and there but he is not, he puts principles first, and people abide with him to see what he could bring to the world, not for being kind, so if people say they know Andrew K they are actually saying well he has that in his personality
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.
It's an uncomfortable observation, wrapped up in an opinion you don't like. I'm sorry reality is uncomfortable for you (rhetorical you), but welcome to the club?
Let me try explaining it with an example: If I wanted to attack someone, I would directly call them, personally an idiot. Or some other clearly directed insult, at who they are as an individual. I wouldn't list, or trash their output, I wouldn't waste time stating I'm grateful for their time or donations.
No, hypothetically, if I wanted to attack someone I'd use the example of the no call no show to the meeting and say: wow Jarred and his team really are shitty people to no call no show on someone like that. I hate a lot of people, but even I wouldn't noshow on them. He sounds like a shitty human.
I wonder if there's something we can all learn about the subject, given everyone is so sure a recounting of facts followed by a conclusion saying literally
"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. But I think he's actually happy and successful exactly where he is. He figured out how to accomplish all the stuff in life that he wants. [...] Honestly, I think he did well for himself, and I don't wish him any ill will."
is so clearly a personal attack? Honestly, if that were me, that would hurt way worse than reading this attack.
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.
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
That's why this is a PR moment for Zig.
It's not because Jarred was a bad manager, one who overworks his team, a poor communicator, one who doesn't develop intimacy with the internal core team at Zig, an amateur coder, or a liar about whether or not they've been fuzzing.
I think this is the core problem.
I would rather see something like tigerbeetle become the face of zig, some project that is well written.
There is nothing wrong with Jarred's mentality because it gets the job done, but I would be also angry if I was represented by a project I don't like.
This person is credulous and naive, and I should take care to remember that if I see comments from them in the future.
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.
The post disclaims the ambassador relationship, but treats Bun as having all of the responsibility of being an ambassador anyway. If Bun is in Zig's house, like the monthly meetings and the core team code review suggest, then somehow the outcome reflects on Zig. If not, then that's fine, but then it begins and ends at "They were a project written in Zig, and now they're not". He can't have both "It's their fault because their code was slop" and "it's not my business".
The world is completely different now. The VC fuelled culture was not as intense and LLMs certainly didn’t exist at all. Andrew calls out these factors explicitly.
> He can't have both "It's their fault because their code was slop" and "it's not my business".
Huh? But it was his business when they had a relationship. Seems he was trying his best to work with them while they were getting funding and Bun was interested in them. That’s the nice thing to do no? Even if you don’t like the partner.
Imagine if the Zig foundation broke the relationship from their side, that would have been much worse.
I don’t think Andrew was trying to say it wasn’t his business in that way. But in the end he couldn’t control what Bun did or didn’t do, and now it’s not his business in any way.
What I'm saying, though, is that if this were a Python project that were rewritten in C++ for speed, I think all of the above would be wildly out of line for GvR to write a teardown about how he tried to tell them how to write fast Python, but they were just too VC brained to listen.
It's not about the tone of the blog post. As a language designer, you already have complete control over what you want your language to be able to express, in a very literal and direct way. If he didn't like the Zig code of Bun, maybe that suggests that he's not putting the things he actually wants to be in Zig in Zig, or hasn't defined the separation between the language and what is written in it cleanly enough. Or, you accept that that's the beauty of it, and that poorly written code that runs runs.
It's not that in the end he couldn't control what Bun does, it's that he couldn't and shouldn't have been able to control that in the beginning, but the post is acting like he should have been able to assume direct control anyway.
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.
Let's say you make a language and try stuff out but its used by facebook and suddenly you find yourself in calls solving problems for them but you never really wanted to end up in this situation or work with people from such in environment. Meanwhile the compensation/donation does not match the value they are extracting from your work. Hard to say, I'm very mixed on this.
What this looks like to me is Jarred sinned by selling to Anthropic (as opposed to setting up a 501c3 or whatever Andrew deems righteous) and now must be discredited.
In a more just society we setup the rule of law so when you pick a license you have the ability to enforce it without being completely destroyed by a larger entity. When you set your license to 'do whatever you want' then this is causality. You cannot interact with the world and expect it not to affect you, both positive or negative.
What does this mean for the future of the open source world? Not really sure there is a lot up in the air right now. Maybe more 'fuck you' licenses that scare corporations from using your software in the first place. Who knows.
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.
When someone criticizes you for things you could improve on that are within your control, it may be difficult to hear, but it is not a personal attack. Someone calling you a stink manager, and listing factors as to why (unreasonable expectations etc.) is not a personal attack.
Someone talking about the inexperience you used to have (being a beginner developer) is not a personal attack.
Someone listing your business decisions (taking VC money, etc) is not a personal attack.
Maybe the only comment in this entire piece that is remotely close to an "attack" is the bit about slop code, but even that, being about the person's work and not the person and aspects of their existence they cannot control or their personal lives, is hardly personal.
I find it really baffling that HN seems to be so sensitive to what's, in my opinion, a relatively tame post with maybe some prickly flavor (which imo is completely understandable given the complete nonsense that had ensured with Bun post acquisition and their very public, and I think unfair, negative portrayal of Zig, intentional or not).
What an awful corporate mindset.
It’s just so unbelievably immature, and I know of no other industry where this is common.
It's not childish in the least for someone who does know the background to point out those issues.
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?