Live data from Hacker News

My thoughts on the Bun Rust rewrite

andrewkelley.me

451–460 of 757 posts

Re: My thoughts on the Bun Rust rewrite

#451
post #14

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?

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.

Re: My thoughts on the Bun Rust rewrite

#452

Earlier quoted context omitted.

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 ch…

> 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 prett…

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.

Re: My thoughts on the Bun Rust rewrite

#453
post #82

> 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 u…

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...

Lol. Imagine you were called a stinky employee, and you thinking that's not a personal attack. Would be very noble of you.

Re: My thoughts on the Bun Rust rewrite

#454
post #146
post #31

Earlier quoted context omitted.

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.

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?

Re: My thoughts on the Bun Rust rewrite

#455

Earlier quoted context omitted.

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 whol…

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.

Re: My thoughts on the Bun Rust rewrite

#456

Earlier quoted context omitted.

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

Re: My thoughts on the Bun Rust rewrite

#457
post #403
post #260

Earlier quoted context omitted.

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?

Re: My thoughts on the Bun Rust rewrite

#458
post #382

Earlier quoted context omitted.

> 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…

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.

Re: My thoughts on the Bun Rust rewrite

#459
post #82

> 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 u…

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...

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 think someone is stinky
    - I spoke with people who said someone is stinky 
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.

Re: My thoughts on the Bun Rust rewrite

#460

Earlier quoted context omitted.

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 "per…

> 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 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"?

Post reply on HN