Installing node_modules is a great time for a coffee break. Don't take this away from me! Otherwise I'll have to go back C++.
@F1nnyF68 ай бұрын
With C++ you can just have a coffee break when it's compiling instead
@RandomNoob11248 ай бұрын
Sounds like a really sad and infuriating thing to go back to
@MrKerim20008 ай бұрын
@@F1nnyF6 *many
@avarise56078 ай бұрын
@@F1nnyF6thats rust, C/C++ builds fast on modern CPUs, and you often need to rebuild changed files. It's quick pee break at best
@nullbeyondo8 ай бұрын
@@F1nnyF6 Incorrect. C++ is very very fast in terms of compilation and caches everything. Rust is the one that's fucking slow as hell; probably the only thing I hate about Rust is compliation time, which is the worst out of every language in existence.
@lightleviathan18 ай бұрын
in other news, i heard this jia tan guy was making some big performance improvements for bun
@Nemesis-db8fl8 ай бұрын
Haha u should try his xz package specifically version 5.6.0 or 5.6.1
@no_name47968 ай бұрын
@Nemesis-db8fl on a production server. Apparently they really optimized it for that /s
@qwerty111111228 ай бұрын
Huge features coming
@xanderplayz34468 ай бұрын
@@no_name4796Yeah seriously, it is SPEEDY!
@halano8 ай бұрын
I heard that jia tan became a kernel contributor for more big performance improvements
@durko038 ай бұрын
22:02 Given how many "Flip take that out" moments have infact, not been taken out over the past few days, it makes you question if Flip takes *_anything_* out?
@someonewhowantedtobeahero32068 ай бұрын
Flip sleeps through Prime's videos it seems
@elliotphoenix8 ай бұрын
Flip is a chad, don't let us lose this perfect moments
@weakspirit_8 ай бұрын
flip does takes some stuff out, which i'm guessing is because prime took him to the basement
@shelterit8 ай бұрын
$ is not Bash spawned in Bun, it's its own minimal semi-compatible Bash-like language that deals with the core of stuff we normally do in CD, and you can pipe stuff hither and dither into JS buffers. But it's NOT Bash, just a lexar and interpreter back into the Bun JS runtime (so any bug-fixes or improvements to Bun also applies to this process), so any tools that works checking JS code can check this. It's really good for offloading a lot of multi-OS scripting into a simpler platform. I use it for a lot of infrastructure stuff, I hate Bash / Ash cross-platform nonsense with a passion.
@keyboard_g8 ай бұрын
The cross platform bash compat is so Windows devs can cut and paste from any tutorial online and expect it to work.
@havocthehobbit8 ай бұрын
people complain when devs dont give short concise updates instead of just throwing out mounds of documentation , then people complain when they do and point out ambiguity as if the info should have been a 1 hour video that few would have watched to beyond half way. The poor fellas appear to have tried and got out of there comfort zones , so I appreciate this even tho I probably wont adopt bun until new project just like I havnt adopted deno yet.
@fieldtrip21788 ай бұрын
They probably should do both. One concise and one 1 hour vid for technical people.
@reinhardt_tv8 ай бұрын
I use bun for personal projects and it’s really good, I use it with sveltekit and I still to encounter issues
@TJackson7368 ай бұрын
@@fieldtrip2178just release docs.
@Z4KIUS8 ай бұрын
many of the bun speed gains come from implementing things natively and comparing with JS based packages so they may be actually doing exactly the same thing, just more efficiently
@pasc4le8 ай бұрын
bun videos give me the same vibe as Silicon Valley (the tv series)
@CyberSpaceFilms8 ай бұрын
Indeed. You bet these people share a startup house, and live a real life sitcom-life. At least, that's what I like to imagine.
@typoerror1778 ай бұрын
the biggest win for Bun is the ability to run typescript directly without any issues or silly ESM/CommonJS issues.
@Mglunafh8 ай бұрын
22:20 classic "Flip take it out" 👌
@MrDisintegrator8 ай бұрын
"You only do it like three times a day" 🤣🤣🤣
@sigmundwong24898 ай бұрын
regarding that rm -rf business at around 6:10... Git for Windows distributes a copy of bash and a bunch of common userland tools... am I missing something, or is there a reason not to use them? You can get a surprisingly UNIX-esque terminal experience on Windows this way, even without reaching for WSL.
@Hwyadylaw8 ай бұрын
Don't forget MSYS and MinGW
@mitigamespro87578 ай бұрын
tfw I have those utils from raylib devkit...@@Hwyadylaw
@martijn31518 ай бұрын
19:00 just because different languages compile to an intermediate language, doesn’t necessarily mean the resulting output is comparable in terms of performance. The resulting intermediate code will be different for each language and will be compiled into actual bytecode. And it’s obviously not guaranteed that that last step will always result in identical performing bytecode, given different inputs.
@Kane01238 ай бұрын
Windows Support - probably a big enabler for organisations that still do endpoint management with SCCM/Intune right?
@bob_kazamakis8 ай бұрын
Mac supports intune…
@Kane01238 ай бұрын
It also supports Linux apparently, but still I imagine that there is hesitance from internal IT teams
@Kane01238 ай бұрын
“The bun logo is his head” made me laugh the exact same way and at the exact same time as prime
@smocloud8 ай бұрын
Maybe I’m just high, but I swear the second guy in the video looked like he was an animation and not a real person at first.
@davidkoffi9858 ай бұрын
Definitely looked like AI
@Cronay8 ай бұрын
He tried so hard to make mimic apple wwdc videos that he seemed non human, ai like.
@unicodefox8 ай бұрын
It's something with the voice over.
@saygo-png8 ай бұрын
developer charisma
@ich68858 ай бұрын
4:00 You can also skip frame-by-frame with , and . :)
@pokefreak21128 ай бұрын
I will never diss on optimizations in software used by many devs. A lot of this may seem inconsequential, but if you've ever worked with a compiler like tcc you'd know how good it feels to compile and run a large project in < 50ms Entire problem sets disappear when you can just do the naive thing and have it be realtime
@Hwyadylaw8 ай бұрын
Compiling and running a large project in < 50ms is cool, but is it especially noteworthy that your 20 second build now finishes in 19.9 seconds?
@pokefreak21128 ай бұрын
@@Hwyadylaw a 50ms build is a 50ms build. where are those extra 20 seconds of yours coming from?
@javiasilis8 ай бұрын
@14:18 I used to wait 182 seconds for my react project to cold start when I was using webpack (260K LOC) w/TypeScript. That and the fact that I had barrelled all the exports within Create-React-App because there was no path aliases made it a nightmare. I saw glory when I migrated it out to Vite. Cold Start - 28seconds. Cached, it would boot up in 4 - 5 seconds. It was important when you messed up with tsc and it had to restart to pickup the changes.
@laztheripper8 ай бұрын
Last version got me excited to try Bun, to migrate some of my stuff, but quickly found out it didn't run directly on Windows. So this release made me migrate my website to Bun. Unfortunately, I have to say I did not see an improvement in performance. It was ~20% slower than node running "vite build" and "vite dev". Long running functions ran ~20-30% slower. Startup was slightly faster, and so was install, but I really don't care about the performance of my site when it's not even handling requests yet. So I did a little search and found out it's just that JSC optimizes less (faster starts) but runs slightly slower afterwards compared to V8. That said, I still plan on keeping Bun around for package management and the handy one liner to create an .exe from your JS/TS code.
@LeeKao8 ай бұрын
The dev's might only do "Bun install" once, the CI/CD does it all the time, that 18X improvement will increase your actual velocity when working on large scale project with deployment pipelines.
@bokunochannel842078 ай бұрын
The video was released on 1st April
@oldcastor-8 ай бұрын
prime: flip, take it out, flip, take it out! flip: yeah, right
@armed.gunman8 ай бұрын
I can say word "bun" 27% faster then "node" which can save up to 3 seconds during the day. Huuuge performance boost
@khaled-08 ай бұрын
how do you react 30min on a 5min video
@etsi03678 ай бұрын
29:37 I had largely written js/ts with a little bit of py for scripting, but I recently started going cs50x and actually like programming in c (except for the lack of .length)
@The1RandomFool8 ай бұрын
This reminds me a little of the deceptive graphs of Rust statistics that Primeagen looked at a while back.
@chaitanyasharma62708 ай бұрын
When you mock into the abyss the mock mocks at you
@abhinavlakhani56378 ай бұрын
Flip you the bro!🤘
@jnyrup8 ай бұрын
500ms difference in install time is the difference between having a backdoor or not.
@AScribblingTurtle8 ай бұрын
0:40 : (When will we drop Windows?) As soon as none tech affine Project Managers / Company leaders stop thinking that Windows is essential for a "Successfull Company" to have. My Last two bosses had that mindset. Hurray for windows finally getting a usable shell scripting language, that does not require setting up an entire virtual machine. 5:50 : (Just try the command 😏) The command runs fine. It is just a shame, that such a video came out on April 1st. The only day of the year when people question if what they read on the Internet is true. Some of it sounds clearly like BS though, especially some of the Performance stuff. 9:33: (Who uses the same scripts on Mac, Win. and Linux?) That would be me. I'm forced to run Windows at work. I have to use MacOS for debugging PWAs on iPads. I Run Linux at home. Having the same helperscrips just work everywhere sounds amazing.
@Z4KIUS8 ай бұрын
Windows is the best desktop OS, it's not perfect, but takes next to no effort to get it to be B+ while sure, you can master your Linux install to get it to an A+ but at what cost? that being said: if you have to develop directly on host RUN AWAY we have WSL and full fledged VM's for a reason also powershell is a better scripting language than bash, it saves you from so many string manipulations! but yeah, it's not great either, just slightly less broken
@konstakuosmanen8 ай бұрын
@@Z4KIUS but it's impossible to get windows to A+, that's the problem
@igorordecha8 ай бұрын
I think he meant that "just putting stuff into your terminal" is a security nightmare
@ZedDevStuff8 ай бұрын
@@konstakuosmanen The thing is that it doesn't have to considering most people don't need it to
@konstakuosmanen8 ай бұрын
@@ZedDevStuff i dont care about most people, only myself
@VictorZamanian8 ай бұрын
Having installs run fast in pipelines is a very attractive thing. Not just locally on your dev computer.
@apefu8 ай бұрын
29:37 - One of the best takes Prime has ever had. It is valid for other languages too, but especially if you only do JS/TS.
@assombranceanderson61758 ай бұрын
I'd say that a great place for bun scripts is the "npm scripts" used to centralize useful commands for devs
@gro9678 ай бұрын
Bun is fantastic, great update video!
@PicklersVinegar8 ай бұрын
Jared at 22:00 looks like one of the three green heads in the Yubaba's room in Spirited Away.
@ConcerninglyWiseAlligator8 ай бұрын
24:40 if I see more than 10 dependencies in something I import in any sane language, it's getting uninstalled.
@jancartman3218 ай бұрын
Same. It's clearly the devs choice and not necessarily the language's fault. You can create a Go project with 100 deps or with just one (postgres driver, e.g. pgx). The same is true for Node. It has everything you need for the basic server except for the postgres driver (postgres.js has no additional deps). When Prime is talking about 100 deps for a web service, then it's not Node's fault but the fault of the sloppy devs who include every piece of crap from NPM. Rust is a different story, as the std lib is not as comprehensive as Go's or Node's. Listing all deps for a basic Axum and postgres backend is a bit disturbing.
@mein.c.tut.w7 ай бұрын
Linux Subsystem for Windows: *exists* Bun < 1.1: *exists* Dev: We have very cool features planned in free near future. [not even a couple seconds later] Users: When will you make it run on Windows Dev: *pauses all planned features and works on windows support*
@Sancarn8 ай бұрын
9:42 Well you do work primarily at Netflix, so are going to be using primarily web-server technologies. Most web-servers are linux only. If you work in desktop applications, this is way more common. 10:24 Yes. Cross-platform desktop applications are a maintenance nightmare. But stuff like this is a step towards making it less of a maintenance nightmare imo.
@patricknelson8 ай бұрын
29:49 - PHP not mentioned. 😕
@judgewest20008 ай бұрын
I would say it's fairly common to have teams of devs some on Windows and some on MacOS. I'm certainly in that type of group. We don't seem to need this tbh as some of the 'scripty' stuff we have done in powershell which runs fine on MacOS.
@TheNoirKamui8 ай бұрын
@29:00 you don't need to build trust, you need to build VC moneyz!
@Roizor8 ай бұрын
fire
@orbatos8 ай бұрын
Nice 41 "Use anything other than bash", Perl support confirmed.
@ElvenSpellmaker8 ай бұрын
Our company (a consultancy) allows you to use Windows or Macs, so we need cross OS support all the time for things.
@EvolMate8 ай бұрын
"Bun logo is his head" is priceless. It was the first thing I thought when I've seen that vid (and he has that logo on his t-shirt!)
@gro9678 ай бұрын
PowerShell is infinitely better than Bash, they should have made that the cross platform standard.
@PaulSebastianM8 ай бұрын
Feel so enterprisey.
@hkupty8 ай бұрын
28:50 That's why I have two articles explaining why Penna is faster than the other SLF4J backends...
@eslachance8 ай бұрын
The thing that makes me not be able to use bun as a node drop-in replacement is that they don't support node-gyp dependency building and they don't automatically insert their bun-specific dependency in imports. *specific actual example*, I have a wrapper around better-sqlite3 with 5+ million views. This wrapper cannot be used in bun because better-sqlite3 isn't buildable in bun, and I'd have to make a branch/more code/environment checker, to change the *import* I'm using in order for my module to be useable in bun. Just to save 30 nanoseconds to run tsc --help, I guess?
@СилвияБрянова8 ай бұрын
Lets just appreciate for a moment the cartoon characters that present the Bun! They look like AI decided to make a joke!😂
@havokgames82978 ай бұрын
"The bun logo is his head"
@snowSecurityneeded8 ай бұрын
are the actors AI rendered versions of their younger selves?
@ollegio8 ай бұрын
Was it really such a necessary feature to use shell scripts on windows? Must have been a lot of work translating each bash command to a windows counterpart. And there will always be some small differences, like different versions of bash, which have different arguments for commands. All that work when there is already a decent solution - wsl lol
@johanneswelsch8 ай бұрын
500 dependencies... I wrote a fullstack go app with templates for frontend. It has only one dependency, the pgx postgres driver. There's no native postgres driver, so I had to.
@andrewdunbar8288 ай бұрын
"An irony" is a new knowledge for me. Anyway, back to writing a monumentous code...
@TheKennyWorld8 ай бұрын
Node has a test runner btw
@bluegreenbugs7 ай бұрын
There is one things between language. They can be more expressive on type and memory access pattern that are reflected in the intermediate language. So even if all language end up using LLVM, they can have different performance outcome. A very excessive example in that regard would be to compare ISPC vs C++ both using LLVM. As ISPC express data parallelism, LLVM can generate SIMD code by default and so the code generated when using ISPC will be faster than a C++ code that just use C++. Same things happen with rust, as it express more information memory access and ownership, the generated IR has more information and LLVM can generate better binary at the end. My understanding is that zig is also better than C++ at expressing this memory ownership and data parallelism problem, so even with a LLVM backend, zig could be better than C++.
@bluehugh28 ай бұрын
5:48 “just put it in bro” 😂
@jcollins5198 ай бұрын
Wouldn't tsc startup time help speed up live reload?
@micahburnside22818 ай бұрын
Who is going to make a replacement for JavaScript with memory safety?
@jakethis33557 ай бұрын
If there's a mock'in, don't come knock'in
@LuxFerre42422 ай бұрын
I'm a cross-platform developer. My main driver is Windows, my laptop is Linux. Zero interest in ever touching Apple though. Having the lightweight OS on the wesker machine is nice, and making my code work on both is an interesting challenge.
@regime50708 ай бұрын
I love bash when I use it, because it saves me time I don't do complex bash scripts
@Dan-codes8 ай бұрын
I've been waiting for this video.
@Z4KIUS8 ай бұрын
Bun is in that weird place of performance where it isn't exactly great at edge as it still starts up pretty slowly when compared to edge solutions but once it does it runs so much faster... there's probably a right use for that, but I wouldn't put it on rarely run on demand environments just yet
@pm1468 ай бұрын
4:10 boomer Prime trying to ninja pause when he can press comma/period to move forward/backward one frame
@numptywithacamera7 ай бұрын
I don't understand why support native Windows when you could run this in WSL? I'm currently using Fedora via WSL for my day job because corporate policy forces me to be on Windows. I admit it's no pure Linux but it's usable IMO.
@RockTheCage558 ай бұрын
Tried bun a couple of times (last time a few weeks ago). It’s a buggy mess. Got sick of tracking down errors Went back to pnpm
@Mihaugoku8 ай бұрын
BUN IN BIO
@XDarkGreyX8 ай бұрын
Bio in your buns?
@hamzakhiar36367 ай бұрын
He became the bun
@avaze78 ай бұрын
Downloaded on windows, tried running my discord bot that used to be run with bun in WSL, instant segfault 😂 tried running it again, the third time it suddenly worked... Since then it runs around 50% of the time
@zapxcero8 ай бұрын
what's up with the people in their video? i feel like they're incomplete or ai generate 💀💀💀
@XDarkGreyX8 ай бұрын
Uhm.... they usually don't get out much?
@kirsanov20087 ай бұрын
bun is going to be a new test runner and package manager for node
@Lorofol8 ай бұрын
Yeah but when are they going to address the async slowness
@oblivion_28528 ай бұрын
Benchmarking doesn't work for performances below a certain level. Make your benchmark more computationally complex to the point of minutes. Then show the difference
@paulraphelbeliveau-girouar18628 ай бұрын
9:40 Letting devs choose which platform they prefer is not a bad thing. Many companies let you choose between mac or pc when you join and it means those devs will run into cross platform issues. I mean, this is less than ideal, but I think it is a great addition to be able to support both platforms at once. Also, you may have .NET developers make the jump into other technologies or just be temporarily assigned to another project. It would make no sense to order a 3.5k$ Mac for such a short amount of time. Linux computers are also very hard to manage at scale for enterprise companies with very rigorous security policies, hence the Windows computers. You may call skill issues here, but this is the reality and most of the IT workforce out there is mostly used to manage Windows computers with a mix of Mac. 🤷♂️
@TheHronar8 ай бұрын
You only delete your node_modules folder 3 times a day? Are you accounting for accidental deletes to or...?
@ozgurNY8 ай бұрын
you make sense!
@justmrmendez8 ай бұрын
What's going on with prime, this video was pure negativity, he was just looking for reasons to hate
@oallanmendes8 ай бұрын
22:25 - Flip did not take that out 😂
@smithright8 ай бұрын
So much neg energy in this one, Prime. Don’t be mad. Get glad!
@accountnotfound42098 ай бұрын
BUN will not be able to compete with anything
@orterves8 ай бұрын
Windows developers aren't even using windows any more, they're using WSL2
@thatguynar8 ай бұрын
You mean fake linux? 😂
@atxorsatti8 ай бұрын
The faq? Are those the new meta verse characters?
@micahburnside22818 ай бұрын
Still not fully supporting Node APIs
@remrevo39448 ай бұрын
18:00 Here I am "well actually"ing the primagen: *Technically* Rust, Zig, C++ and C all have a runtime. Albeit a small one, they still have one.
@JannisAdmek8 ай бұрын
I don't disagree but how do you define runtime?
@remrevo39448 ай бұрын
@@JannisAdmekI don't have a good *complete* definition, but things like Rusts panic unwinding, or C++'s exceptions definitely are runtime things. Also I think that C might set up some default signal handler. Also C's default IO-buffering might count under runtime. (Also there is something like "life before main".)
@johnbruhling80188 ай бұрын
UGH all this Windows! Puke!
@JorgetePanete8 ай бұрын
It's like motorizing a trash bin, yes, it carries trash faster, but do you need it?
@airkami7 ай бұрын
Once is a mistake, twice is a pattern, three times is enemy action
@swedishguy838 ай бұрын
If you're running bun install in your pipeline I can see that making a huge difference.
@ivanjermakov8 ай бұрын
Bun is a good example of a product that is over funded. They're solving problems nobody have.
@Dongdot1237 ай бұрын
bun on windows is soooo godsend for me
@KonradZielinski3 ай бұрын
I remember going though benchmarks between the Sun's JVM and IBM 'sJVM this was decades ago. . IBM's was faster, often twice as fast, but it also failed spectacularly on some of the benchmarks. So yea IBM/s was faster because it didn't do the same level of safety checking that Sun's implementation was doing.
@shipooprincess6708 ай бұрын
Kuroky is dev now?
@gunmen00028 ай бұрын
lmao. i spat my coffee on my laptop. what are you going to do about this?
@Ryan-in3ot8 ай бұрын
i will never get over the way prime says qwerty 😂
@AllanSavolainen8 ай бұрын
There is nice progress there, maybe I try Bun once they get to 1.5 release and are still relevant and Node hasnt began to fix their issues.
@1989DP38 ай бұрын
if I have to move from Node ecosystem, I would switch to Go for performance rather than use Bun or Winter JS
@ChrisPatti7 ай бұрын
I'm with you. Pretending that Windows is UNIX always ends badly. Building bash into Javascript seems like a further recipe for disaster :)