| ▲ | atonse a day ago |
| It’s made absolutely no negative difference, as we’ve seen in the real world in the last 60 days since the merge. I feel weird having to defend reality; reality being that it was merged nearly 2 months ago and tons of people have had their pitchforks out without a shred of actual evidence that this made bun worse in any measurable way. But they still insist it was a mistake. I’ve never met Jared or the bun team but I don’t understand all the personal attacks, I just feel the need to correct the facts. Literally who cares what language a JS toolset is written in? It’s not like they ported JavaScriptCore (the actual JS runtime) to rust even. All that stuff is largely untouched. |
|
| ▲ | jasode a day ago | parent | next [-] |
| >Literally who cares what language a JS toolset is written in? Maybe you're being coy by asking a rhetorical question you already know the answer to but I'll answer as if you asked sincerely... There are 2 different groups interacting with software products: (1) end-users : this is where the "Who cares what language it's written in?!?" is usually applicable. E.g. The finance guys using MS Excel don't care whether it's written in assembly, BASIC, or C Language. (2) code contributors and/or programming language enthusiasts who see other projects as "validation" of the whatever language they've invested in: these people definitely care. For all the decades that computer languages have been debated, Group (2) will always discuss projects language choices. E.g. reddit.com switching from Lisp to Python, the Linux kernel fiercely debating future Rust contributions , the Typescript compiler switching from Javascript to Go, Bun switching from Zig to Rust, etc. People try to lecture others in Group 2 about "don't make a programming language your identity" ... but people are human and they can't look at all the above language choices as totally detached observers. They like to talk about it! If one is a Zig coder that contributed to the previous Bun Zig codebase, we can't expect them to be neutral observers. |
| |
| ▲ | estearum a day ago | parent | next [-] | | I think you're missing group 3, which is the "assume bad faith and/or bad outcome from any possible change to anything, and especially changes to open source projects that can be interpreted as exogenous, e.g. from an acquirer, and especially if that acquirer is a gigantic commercial entity." There are not nearly enough disenfranchised Bun-on-Zig contributors to make a dent in this conversation. There are lots of Group 3s in every similar convo, for any combination of technology, project, and acquirer you can name. | | |
| ▲ | atonse a day ago | parent [-] | | I think most of the naysayers are in group 3 because there’s a lot of anger but never a single link to a blog post or analysis done by anyone to demonstrate a regression. not one. There are some that analyzed the quality of the initial rust code and use of unsafe but Claude has been chewing through those as I understand. | | |
| ▲ | simonw a day ago | parent | next [-] | | I thought that too but it looks like the usage of unsafe hasn't been trending down over time: https://news.ycombinator.com/item?id=48966569#48967630 | |
| ▲ | endospore 7 hours ago | parent | prev | next [-] | | https://github.com/oven-sh/bun/issues/30719#issuecomment-446... Personally I chose not to disclose my findings in public to avoid this kind of outcome. Having a good laugh with others is not as important as keeping the result of this experiment undisturbed. This also eliminates the chance of another round of marketing of LLM ability based on actual human contributions and I suggest everyone who is able to analyze the code to do the same - so that they cannot misattribute our ability to LLMs. | |
| ▲ | ksec a day ago | parent | prev [-] | | It was a PR issue more than anything else. It is also a proxy for Pro AI and Anti AI sentiment. And for most part I don't think it was communicated well apart from the last blog post. |
|
| |
| ▲ | rjzzleep a day ago | parent | prev [-] | | What about Group x. You just AI generated 1 millions lines of code claiming it's for safety. Who exactly is to make any kind of security guarantees about this? | | |
| ▲ | tokioyoyo a day ago | parent | next [-] | | What was your safety guarantee pre-rewrite? If CVE scanners and aggregators is your answer, then well, this applies to post-rewrite as well. | |
| ▲ | a day ago | parent | prev | next [-] | | [deleted] | |
| ▲ | a day ago | parent | prev | next [-] | | [deleted] | |
| ▲ | conartist6 a day ago | parent | prev [-] | | Don't forget the group asking really dumb pointless questions like "who legally owns the rewritten code" | | |
| ▲ | ethbr1 a day ago | parent [-] | | Afaik, under current US law (Thaler v. Perlmutter 2025^), "the Copyright Act of 1976 requires all eligible work to be authored in the first instance by a human being". With regards to AI-generated code, this means the copyrightability (at all, not with regard to who owns it) turns on whether or not a human was substantially involved in its creation. Existing decisions require evidence of pretty heavy and continued human guidance to qualify.+ To wit, autonomous agent created code (prompt -> machine churns for hours -> output) is explicitly not eligible for copyright. Functionally, this is a double-edged sword. On the one hand, it means anything coded with autonomous agents by Meta, Google, et al. can be legally reused if it leaks (because no one could hold copyright on it). On the other hand, it leaves copy-left open source licenses in a weird place. If you convert open source (even MIT/BSD-style) code into something else with an autonomous coding agent... the result has no copyright (nor can ever in the US). In this instance, Bun was MIT-licensed, no? Then it was shoved mostly-autonomously through an LLM for the port. Now Bun-Rust is technically still MIT licensed, but if push came to shove it seems like US law's current position is that Bun-Rust would now have no copyright license (because the manner in which it was developed renders it ineligible for copyright). That's on the copyright side. On the infringing usage side (i.e. whether you were entitled to shove a copyrighted work into a coding agent to produce something)... that's still TBD. ^ https://media.cadc.uscourts.gov/opinions/docs/2025/03/23-523... + https://garrettham.com/ai-generated-works-copyright/ | | |
| ▲ | eventhorizon77 21 hours ago | parent [-] | | Couldn't it be argued that Bun-Rust is still MIT licensed, because the old implementation was "in the first instance" authored by a human? All the machine did was translate it. I think it's the "infringing usage" question that is more interesting. If the LLM trained on GPL-derived code, what does that mean for the end result? | | |
| ▲ | simonw 20 hours ago | parent | next [-] | | "If the LLM trained on GPL-derived code, what does that mean for the end result?" Either it means nothing at all, or it means that a substantial portion of the code produced at some of the world's most valuable companies over the last two and a half years is GPL. | |
| ▲ | conartist6 19 hours ago | parent | prev [-] | | Yeah you could argue that, but it's a messy argument. I'm wiling to imagine that they hadn't used AI to do the rewrite to Rust. It wouldn't have been all that hard to do with plain old syntax tree transformation (my expertise). The trickier question for me is the ownership at the boundary where prompts were turned into Zig code. That is not a process that could have been done with syntax tree transformation: creative freedom was given to the model as to how to do the work at that stage, and so that is the stage at which I'm least sure they could legally defend their claim to ownership. | | |
| ▲ | ethbr1 6 hours ago | parent [-] | | I feel like that's a lot of LLM use in a nutshell: sure, there's a more surgical scalpel available, but isn't it so much easier just to fling prompts at a magic box? |
|
|
|
|
|
|
|
| ▲ | layer8 a day ago | parent | prev | next [-] |
| > who cares what language a JS toolset is written in? Anthropic, apparently, not the least because they blanket-closed all issues submitted before the rewrite. If the language were irrelevant, it shouldn’t matter for the existing unfixed issues. |
| |
| ▲ | pronik 20 hours ago | parent | next [-] | | > blanket-closed all issues submitted before the rewrite You'll need a citation for that. While I'm still not sure whether Claude Code's issue tracker is worth much (Anthropic doesn't seem to engage with individual issues a while lot), it still has 5k+ open issues ranging back to March 2025. Bun also still has all of its Zig-timeline issues, all 5k+ of them. So what's this about? | |
| ▲ | skybrian a day ago | parent | prev | next [-] | | [dead] | |
| ▲ | doctorpangloss a day ago | parent | prev | next [-] | | imagine being the leadership of the one of most valuable US private companies in the world. then you have to make something called a "pull request" that gets "reviewed" by someone named "Jarred" to make improvements to your stuff. do you see how that is untenable? the language is relevant for political not technical reasons. you could say, blanket closing the Issues, getting rid of this thing called Jarred from your stack, etc., is really an attack on the GitHub and the GitHub Agitator Lifestyles, which is why so many commenters on Hacker News actually care. | |
| ▲ | a day ago | parent | prev [-] | | [deleted] |
|
|
| ▲ | queenkjuul 2 hours ago | parent | prev | next [-] |
| >It’s made absolutely no negative difference, as we’ve seen in the real world in the last 60 days since the merge. The rust code is not yet in a stable release, and CC only switched to it in the latest version, so there's not been 60 days of widespread battle testing yet, so i don't see how we could possibly say it will have no negative difference. It hasn't, because nobody is using it yet. It still might. >Literally who cares what language a JS toolset is written in? I don't care what language it's in, but i do care how it is written and maintained. I'm not going to trust my projects to a runtime that was written by an LLM in two weeks with practically no human review |
|
| ▲ | jgalt212 a day ago | parent | prev | next [-] |
| > It’s made absolutely no negative difference, as we’ve seen in the real world in the last 60 days since the merge. This is even more interesting given that prewar Bun was not a well respected code base. This matters if the code was bad, were the tests bad / not comprehensive as well? If so, the translation to rust whose sole / primary target was test-passing will have a fair amount of undocumented bugs in it. > poster child for Zig programming language actually being the prime example of How Not To Write Zig Code https://andrewkelley.me/post/my-thoughts-bun-rust-rewrite.ht... |
| |
| ▲ | NewsaHackO 11 hours ago | parent [-] | | Did he say this opinion before the rewrite, or when he was taking tens of thousands of Bun's money per month? |
|
|
| ▲ | re-thc a day ago | parent | prev | next [-] |
| > that this made bun worse in any measurable way Issues on GitHub was mass closed claiming zig is no longer relevant without fixing the real issues. |
| |
| ▲ | atonse a day ago | parent [-] | | Whole classes of bugs WERE fixed by moving to rust. wouldn’t that result in mass closures of classes of bugs that were no longer relevant in rust? What would you prefer? | | |
| ▲ | jdiff 15 hours ago | parent | next [-] | | Whole classes of bugs are fixed by safe rust. This is not safe rust. As a line-by-line translation with unsafe forced anywhere necessary to make it compile, this should result in no classes of bugs fixed by moving to rust. | |
| ▲ | re-thc a day ago | parent | prev [-] | | I would prefer they confirm before closing. It's AI / bot anyway. Instead it's just mass keyword zig = close. The bug can still exist post-port. None of it got "fact-checked". In fact a lot of "feature requests" like npm compatibility related or missing specs etc ALL also got closed for being "zig" because reproduction and suggested solution were of course zig. Again doesn't mean it got "auto fixed". |
|
|
|
| ▲ | bbg2401 a day ago | parent | prev | next [-] |
| The crux is: > What is the governance structure for Bun by the way? Couldn't find any documents/explanations about how it's supposed to work. I'm guessing it's essentially just "Anthropic decides what gets done and accepted" today? And this is a valid question. You are not "defending reality" by refusing to listen to it. In summary and based solely on my understanding: - Jared misled people about the intentions of the migration. It's not the worst thing in the world, but it's certainly worthy of criticism. - Jared has commented before about locking out human contributors from open source projects. Whether he was making a larger point is irrelevant as his comment stands on its own. - Other Bun contributors, past and future, outside of those employed by Anthropic, did not and likely will not have equal access to the model Jared used for the rewrite. Jared, working in the public Bun repository, used tooling not available to his community to experiment with a signficant migration. He dismissed all concerns and told people it's just a bit of fun, and that it shouldn't be taken seriously. Most of the controversy would have been avoided were the experiment done in private. None of this is a big scandal but questions about the project are entirely justified. |
| |
| ▲ | cube00 a day ago | parent | next [-] | | > I'm guessing it's essentially just "Anthropic decides what gets done and accepted" today? Similar to the Claude Code 60s timeout incident [1] it could just be "Jarade decides what gets done and accepted" [1]: https://news.ycombinator.com/item?id=48949942 | |
| ▲ | Grombobulous a day ago | parent | prev [-] | | Sometimes the questions aren't justified, though, like when someone else’s project is someone else’s project. It seems like when some folks see “open source” they think the project maintainers owe them something. An open source MIT license of the source code is very different from being the original copyright holder. |
|
|
| ▲ | zzzeek a day ago | parent | prev | next [-] |
| this whole AI era has put the topic of "do we believe actual reality, or what we hoped/assumed/continue to insist would be reality" front and center. Every discussion is like this these days. |
|
| ▲ | bmitc a day ago | parent | prev | next [-] |
| The outrage was more how the rewrite was communicated and defended, which was objectively poor. |
| |
| ▲ | pronik 20 hours ago | parent [-] | | Which was completely bonkers -- it happened completely in the open, people were just outraged that something like this happens without asking them and not on a schedule they perceive as adequate. Most of them haven't really grasped what was happening and why. Many still don't. | | |
| ▲ | cube00 17 hours ago | parent | next [-] | | > it happened completely in the open You don't create PRs like this when you're working "completely in the open" test ci #30412
No description provided.
https://web.archive.org/web/20260509235415/https://github.co... | | |
| ▲ | tick_tock_tick 14 hours ago | parent [-] | | You don't test CI before you publish stuff? | | |
| ▲ | cube00 12 hours ago | parent [-] | | I give the PR a proper title on creation. I don't see any reason to create a PR with a title of "test ci" and then rename it later to: Rewrite Bun in Rust #30412
|
|
| |
| ▲ | bmitc 18 hours ago | parent | prev [-] | | It wasn't out in the open. It was never announced or discussed ahead of time. It was just done because the company who purchased Bun wanted it done, and they only communicated it was happening once they started. I don't consider the following comment to be good, honest, and open communication: https://news.ycombinator.com/item?id=48016880#48019226 | | |
| ▲ | 17 hours ago | parent | next [-] | | [deleted] | |
| ▲ | simonw 18 hours ago | parent | prev [-] | | What was dishonest about that comment? > There’s a very high chance all this code gets thrown out completely. ... and a few days later he decided that the code wouldn't get thrown out. That doesn't make the comment itself dishonest, he didn't have a crystal ball. You can absolutely argue that the rewrite was not communicated clearly once they committed to it, but I don't think the comment you linked to there stands as evidence of poor communication at the time it was written. | | |
| ▲ | bmitc 18 hours ago | parent [-] | | He knew he wasn't going to throw out the code when he made that comment. | | |
|
|
|
|
|
| ▲ | vermilingua a day ago | parent | prev | next [-] |
| Except that it hasn’t yet hit the real world, the live release is still 1.13.4, the last Zig version. Anthropic does not operate in the real world. |
| |
| ▲ | Tadpole9181 a day ago | parent [-] | | The canary build has been Rust for over a month, available to anyone. In that time it has been used in production for Claude Code and Prisma Compute. | | |
|
|
| ▲ | well_ackshually a day ago | parent | prev [-] |
| [flagged] |
| |
| ▲ | CrimsonRain a day ago | parent [-] | | What a load of bs. > Inevitable collapse According to who? You? The well ackshually guy? > Low in trust before acquisition Cite your sources. > Unreleased version v140 is the canary version which has been available for a long time. https://github.com/oven-sh/bun/releases/tag/canary > Not open source anymore Who died and made you the dictator of open source? Your post is just a bunch of opinions and lies and speculation wrapped as facts. | | |
| ▲ | embedding-shape a day ago | parent [-] | | > v140 is the canary version which has been available for a long time. https://github.com/oven-sh/bun/releases/tag/canary What is actually going on with that tag? It has files uploaded in Jul 29, 2024 and files uploaded "6 hours ago" (some hours after Simon first published his blog post). Do they not do proper releases with immutable tags and instead use one tag kind of like a git branch that mutates and changes over time? | | |
| ▲ | simonw a day ago | parent [-] | | Yeah, it looks like they constantly repoint the "canary" tag at whatever they think should be the new canary release. I don't like that, personally. I think the project would be easier to reason about if they shipped alpha versions instead. | | |
|
|
|