Deno 2.0

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ย. 2024
  • Recorded live on twitch, GET IN
    Article
    deno.com/blog/...
    By: Bartek Iwańczuk -- x.com/biwanczuk
    & Andy Jiang -- / andyjiang
    My Stream
    / theprimeagen
    Best Way To Support Me
    Become a backend engineer. Its my favorite site
    boot.dev/?prom...
    This is also the best way to support me is to support yourself becoming a better backend engineer.
    MY MAIN YT CHANNEL: Has well edited engineering videos
    / theprimeagen
    Discord
    / discord
    Have something for me to read or react to?: / theprimeagen
    Kinesis Advantage 360: bit.ly/Prime-K...
    Get production ready SQLite with Turso: turso.tech/dee...

ความคิดเห็น • 83

  • @Gorops
    @Gorops 2 ชั่วโมงที่ผ่านมา +61

    Fireship said it best. It will be a Node killer when its Done.

    • @tinrab
      @tinrab 41 นาทีที่ผ่านมา

      It's not trying to kill Node. Ryan said those were Fireship's words. One of the benefits of Deno are features making it a good choice for production. Netlify and Supabase use it.

    • @Microphunktv-jb3kj
      @Microphunktv-jb3kj 34 นาทีที่ผ่านมา +2

      Node -> Deno -> Oden -> Done

  • @hamm8934
    @hamm8934 ชั่วโมงที่ผ่านมา +11

    If node is ever replaced, the killer will need to be a paradigm shift in some way like actually treating typescript like a statically typed language and performing compile time memory and performance optimizations or something.
    Just a pretty lil API difference is not compelling enough. I really do like deno 2’s stdlib and built in binary compilation though. Those are steps in the right direction.

  • @abc123evoturbobonker
    @abc123evoturbobonker 2 ชั่วโมงที่ผ่านมา +35

    'Endo' will be the end-all

    • @xClairy
      @xClairy 2 ชั่วโมงที่ผ่านมา +14

      Just wait till it evolves to 'Done'

    • @NihongoWakannai
      @NihongoWakannai ชั่วโมงที่ผ่านมา +9

      ​@@xClairy Just wait til we all watched the fireship video and repeat his joke because we'll never be as funny as him.

    • @_kostant
      @_kostant ชั่วโมงที่ผ่านมา +1

      And end-o was his name-o

    • @xClairy
      @xClairy ชั่วโมงที่ผ่านมา +1

      @@NihongoWakannai Ikr sadge life

    • @bugloper
      @bugloper ชั่วโมงที่ผ่านมา

      @fireship missed this. He said: node, oden, deno and done

  • @eJuniorA2
    @eJuniorA2 ชั่วโมงที่ผ่านมา +5

    13:00 If you have a compromised dependency on Node you wouldn't even know, it would simply run. These permissions in Deno are essentially "security rules", on what the process will do on the system or what websites it can access. So if a dependency suddenly wants to execute commands on the OS, or access your environment variables, or get a malware script from somewhere, it will detect these "security breaks", notify you and ask for the permission. You can make those security rules anyway you want... remove them entirely, make them more "loose" or more "strict".
    The OS permissions are permissions for the user, the Deno permissions are permissions set for that specific process. Different processes have different permissions.

  • @_modiX
    @_modiX 2 ชั่วโมงที่ผ่านมา +9

    I like to use Deno over nodeJS, because it has much more tooling built in and I don't need a version manager, because the std is strictly split from the Deno runtime. And speaking of std, it's so much more powerful.

    • @limbo3545
      @limbo3545 ชั่วโมงที่ผ่านมา

      Felt the same way. Still went back to node for bundling things with esbuild and decided I don't do javascript on server anymore. Not sure if it stays this way, but I'm happy with my setup.

    • @_modiX
      @_modiX ชั่วโมงที่ผ่านมา

      @@limbo3545 Yes, I get you. I couldn't move away from JS on the server yet, because I'm so much faster with JS. Python is sadly to slow and the venv stuff is just annoying. Go would be the great alternative for me, but its syntax isn't really my thing. It's also nice that I don't have to compile to get things going in Deno.

    • @limbo3545
      @limbo3545 ชั่วโมงที่ผ่านมา

      @@_modiX I moved to go and I blame prime. 😆 No seriously, I tried rust first, but it took too much time. Definitely skill issues. I wanted a dumb backend. Additionally to that I have fewer dependencies and a binary executable on the server which is nice.

  • @erikslorenz
    @erikslorenz ชั่วโมงที่ผ่านมา +12

    The problem is that putting a ton of effort into making js into a strong backend language is the wrong goal.

    • @hamm8934
      @hamm8934 3 นาทีที่ผ่านมา

      I kinda wish we put this much effort into web assembly and breaking up the browser js lock in.
      Give web assembly direct DOM access and a cleaner way to distribute the web assembly binary, and node on the server loses a lot of it's appeal.

  • @MidSpike
    @MidSpike 51 นาทีที่ผ่านมา +2

    59:14 fun fact, I was the original discoverer of the malicious code in node-ipc. If you're interested feel free to ask me anything!

  • @cryptonative
    @cryptonative 47 นาทีที่ผ่านมา +2

    Js is a terible language for almost all reasons but I don’t think being verbose is one of them

  • @nioinsane
    @nioinsane 2 ชั่วโมงที่ผ่านมา +1

    Broooo! Its the same creator of Node. Hes redoing for security sake and innovation

  • @hamm8934
    @hamm8934 ชั่วโมงที่ผ่านมา +3

    Ngl, the stdlib and built in binary compilation is pretty great. Those are some of my fav things about Go.

    • @username7763
      @username7763 38 นาทีที่ผ่านมา

      That's also present in 99% of programming languages. I don't know why Go gets praise for this, languages that don't do this are in the minority. Remember Borland Delphi back in 1995? Single exe output, powerful standard library. This is the norm folks.

    • @hamm8934
      @hamm8934 13 นาทีที่ผ่านมา

      ​@@username7763 of course Go isn't the only or first language to do it, but go's single binary is so much easier to produce and portable than I've experienced with c#, java, or C++. After dealing with the headaches of c# DLLs, java's jars, or arcane tarball makefiles, go build -o ./bin/app running on mac, linux, and windows is therapeutic.
      As for the stdlib, I think Go is an outlier when compared to other languages of similarly simple syntax. More verbose languages typically have great stdlibs, but for less verbose languages like js, python, lua, R, etc., a quality stdlib is rare for some reason. I think this is why Go stands out and gets praise.

    • @hamm8934
      @hamm8934 9 นาทีที่ผ่านมา

      of course Go isn't the only or first language to do it, but go's single binary is so much easier to produce and portable than I've experienced with c#, java, or C++. After dealing with the headaches of c# DLLs, java's jars, or arcane tarball makefiles, go build -o ./bin/app running on mac, linux, and windows is therapeutic.
      As for the stdlib, I think Go is an outlier when compared to other languages of similarly simple syntax. More verbose languages typically have great stdlibs, but for less verbose languages like js, python, lua, R, etc., a quality stdlib is rare for some reason. I think this is why Go stands out and gets praise.

  • @codedusting
    @codedusting 19 นาทีที่ผ่านมา

    Can we not just ship an engine which runs typescript out of the box or totally make typescript a thing of a IDE or Editor? Like let me just write javascript and you figure out everything?

  • @vsolyomi
    @vsolyomi 8 นาทีที่ผ่านมา

    Prime, would you cover how ABBYY just fired it's all Russian citizen employees in Europe? (I'm not talking closing shop in Russia, they did so a while ago. Like today they just terminated whoever had the Russian passport from locations they previously relocated them to themselves - Cyprus, Hungary, Serbia). I mean, you covered Cloudflare bs covert layoffs, this is similar but feels kinda worse. I get it's quite far from you, but still!

  • @MultiMrAsd
    @MultiMrAsd ชั่วโมงที่ผ่านมา +1

    Im shocked that Prime did not know about spectre and meltdown

    • @rnts08
      @rnts08 49 นาทีที่ผ่านมา +1

      Js streamer dev. Not surprised.

  • @aztracker1
    @aztracker1 9 นาทีที่ผ่านมา

    Deno is pretty great for user/shell scripts over node. No npm install step. Direct dependency references work.
    I'm not much of a fan of all the node API additions only in that Deno packages were clean. That's changed with more mode/npm compatibility.
    There's just so much transpiled garbage in npm I wish more people embraced the clean start. Unfortunately the compatibility was essential. Similar for cloudflare workers runtime.

  • @seth111yta1
    @seth111yta1 36 นาทีที่ผ่านมา

    I love Deno but man: Imagine spending years refining a new "web standards Typescript runtime" that 1) still cannot bundle for the browser, and 2) is still missing countless browser APIs. What's the point? Its not isomorphic, it will never be isomorphic, stop creating confusing by posturing as isomorphic. Just leave it all behind and write servers and utilities in whatever language you want.

  • @neutronstar03
    @neutronstar03 5 นาทีที่ผ่านมา

    in a world with docker and linux kernel primitives for isolation, what's the point of having a permission system?

  • @_modiX
    @_modiX ชั่วโมงที่ผ่านมา

    59:13 The tragic part about that was the guy who owned the package wasn't convicted. He caused much harm to innocent people, he even caused harm to help organizations who were operating in and around Russia.

  • @andrewforrester6713
    @andrewforrester6713 ชั่วโมงที่ผ่านมา

    Love the video as always but am disappointed by a lot of missing context that you would be apparent by using the product, not just from from a single blog announcement. Deno is v v good

  • @hohohomeboy
    @hohohomeboy ชั่วโมงที่ผ่านมา

    You could do a year of mojo. Enjoying getting things done like in Python and going systems level when you need it, all at the same time.

  • @mysterry2000
    @mysterry2000 2 ชั่วโมงที่ผ่านมา +3

    I actually like how you can handle client-side things in Deno while still staying in the server-side. There's no "whole world of problems" I've faced at all honestly and I've been using it for a while now.
    Prime bro probably feels that way because he hasn't tried it for the pleasant experience it is.

  • @prakashsza
    @prakashsza 22 นาทีที่ผ่านมา

    WebAssembly will rule in the coming years, wait and see guys

  • @codedusting
    @codedusting 24 นาทีที่ผ่านมา

    It doesn't make sense anymore. Why should I use it when it is now similar to a node?

  • @re_detach
    @re_detach ชั่วโมงที่ผ่านมา

    Lex is now the delegated leader of youtube chat since Prime left us for dead

  • @BlackAsLight448
    @BlackAsLight448 52 นาทีที่ผ่านมา

    Deno is the better choice even if you want to write only for the client.

  • @njenga4878
    @njenga4878 2 ชั่วโมงที่ผ่านมา +16

    1 view bro fell off

    • @ea_naseer
      @ea_naseer 2 ชั่วโมงที่ผ่านมา

      Bro beat me to it

  • @u007james
    @u007james ชั่วโมงที่ผ่านมา

    jsr provide typescripts source code directly

  • @andrewdunbar828
    @andrewdunbar828 6 นาทีที่ผ่านมา

    end all be all is the new be all and end all

  • @teunohooijer6788
    @teunohooijer6788 ชั่วโมงที่ผ่านมา

    Seems like they added python doctests

  • @reeganviljoen3408
    @reeganviljoen3408 2 ชั่วโมงที่ผ่านมา +5

    The problem with JS is only partially Node, the fact is Js is just a trash language

    • @gamemusicmeltingpot2192
      @gamemusicmeltingpot2192 ชั่วโมงที่ผ่านมา

      if u think JS is bad its a skill issue lil bro

    • @NihongoWakannai
      @NihongoWakannai ชั่วโมงที่ผ่านมา

      ​​@@gamemusicmeltingpot2192 bro's really using JS and talking skill issue lmao. At least write in C or something if you wanna act superior. Come on dude

    • @my_online_logs
      @my_online_logs ชั่วโมงที่ผ่านมา +2

      js was designed to create highly interactive frontend, js is very good to create very complex highly interactivity frontend, no other tool come close to it, the rust leptos is far behind js in frontend, if people bring js to other task that more close to machine code, its not js fault. its like when somehow you can bring html to handle backend. it provides pro and cons because js was primary created for high interactivity frontend, so user have free of choice.

    • @MrLOPIU22
      @MrLOPIU22 ชั่วโมงที่ผ่านมา +1

      ​@@my_online_logs your point dont make sense since js is the only option natively supported we have to change the dom. Theres tons of languages out there better than js to do this job, we just cant use it, at least not natively. Js, node, react, next and etc only exists and is a success because we are tied and obligated to use js in browsers

    • @Chisegh
      @Chisegh ชั่วโมงที่ผ่านมา

      @@my_online_logs Lua is pretty good to create highly interactive UIs. It doesn't work in the browser, but I would argue it's a better tool for UIs than javascript.

  • @BlackAsLight448
    @BlackAsLight448 2 ชั่วโมงที่ผ่านมา +3

    Node has been making a lot of changes because of Deno's existence.

    • @anonymousalexander6005
      @anonymousalexander6005 ชั่วโมงที่ผ่านมา

      Don’t you just love it when your Foundation isn’t a 501(c)(3), is a 501(c)(6) which is just a way for big companies to circle jerk, ignores their responsibilities, and relies on spuriously inspired Node developers to actually do anything good to Node?

  • @rumplstiltztinkerstein
    @rumplstiltztinkerstein 30 นาทีที่ผ่านมา

    17:50 holy meal W wife there

  • @_modiX
    @_modiX ชั่วโมงที่ผ่านมา

    If you want to do Python, maybe Mojo is worth a look again, they evolve as well. It's been a while, since their announcement.

  • @F.a797
    @F.a797 ชั่วโมงที่ผ่านมา +1

    Bun

  • @jerrygreenest
    @jerrygreenest ชั่วโมงที่ผ่านมา +2

    Why do you need Node 2 when you have Node 22?

  • @F.a797
    @F.a797 ชั่วโมงที่ผ่านมา

    You know what would be a Node/Bun/V8/Deno killer? A runtime that statically compiles a subset of TypeScript and hyper optimizes it. Kind of like the new React Native compiler, but for server-side TypeScript.

    • @anonymousalexander6005
      @anonymousalexander6005 ชั่วโมงที่ผ่านมา

      Just write it in Rust or Zig, you backend JS users are so f’ing obnoxious

    • @F.a797
      @F.a797 7 นาทีที่ผ่านมา

      ​@@anonymousalexander6005 lol I don't develop in JS. You're absolutely right though. I agree that backend JS users should switch to a more performant language. In fact, at my company, we've been working on migrating our entire e-commerce platform from Node.js to GULP. We're handling millions of transactions daily, and the improved performance and lower latency are crucial for us. The transition has been challenging, but the benefits in terms of speed and resource utilization are already apparent

  • @marcusg2000
    @marcusg2000 ชั่วโมงที่ผ่านมา

    No.

  • @username7763
    @username7763 42 นาทีที่ผ่านมา

    As long as there is a package management involved, it's always going to be a mess. I am so tired of taking over projects where the authors added hundreds of dependencies that are now out of date and newer versions aren't compatible with each other. Bad programmers! Stop it!

    • @peace_world_priority
      @peace_world_priority 37 นาทีที่ผ่านมา

      it also can happen without package management, because the new version of the package may rename or remove old function, so when you upgrade the package your app is broken because it call unexisted function in the new package. its also how to developed package well. the package management give the ability to specify version of packages is to prevent thing like this. its to make sure that the project will install the correct package (that contain the exact functions that are used in the project), because if not, if the package creator change the name of a function in his new package version, then someone trying to run someone else project that use dependency from the package of that dude, then he will install the dependencies first, it will install the newer version because no version is specified, then the app will not run because it call functions that are not exist in the new version of the package because the author renamed the function name or remove it. i show you why package management is exist

    • @username7763
      @username7763 2 นาทีที่ผ่านมา

      @@peace_world_priority So the problem with package management is the difference between how easy it is to just install another 3rd party library vs how difficult it is to maintain the dependency. Package managers encourage people to go nuts with dependencies and especially transitive dependencies.
      Pick a few well-supported libraries that care about stability and compatibility that match your project goals, and write your own code for everything else. If you do this, you don't need a damned package manager to begin with.

  • @Kane0123
    @Kane0123 2 ชั่วโมงที่ผ่านมา +3

    Which programming language is better? Deno or HTML?

    • @Hapkumdo
      @Hapkumdo ชั่วโมงที่ผ่านมา +3

      Silverlight

    • @Kane0123
      @Kane0123 ชั่วโมงที่ผ่านมา

      Is that a good framework?

    • @vercetti322
      @vercetti322 ชั่วโมงที่ผ่านมา

      XML

    • @gnerkus
      @gnerkus ชั่วโมงที่ผ่านมา

      DEML

  • @DM-pg4iv
    @DM-pg4iv 2 ชั่วโมงที่ผ่านมา

    0

  • @gamemusicmeltingpot2192
    @gamemusicmeltingpot2192 2 ชั่วโมงที่ผ่านมา

    Nothing will ever replace node

  • @trueberryless
    @trueberryless 2 ชั่วโมงที่ผ่านมา +1

    5 million views in 1 minute, bro fell off...

  • @AizenMD
    @AizenMD 2 ชั่วโมงที่ผ่านมา +1

    1 minute 2 views, bro fell off

  • @envycode4085
    @envycode4085 2 ชั่วโมงที่ผ่านมา

    2 view bro fell off

  • @cyberpunkspike
    @cyberpunkspike 2 ชั่วโมงที่ผ่านมา +1

    Dino performs worse than node, and is written is Rust, so sticking with Node.

    • @anonymousalexander6005
      @anonymousalexander6005 ชั่วโมงที่ผ่านมา

      Deno’s _performance_ is much better, and is competitive with Bun. It uses slightly more resources than Bun.

  • @jerrygreenest
    @jerrygreenest ชั่วโมงที่ผ่านมา

    deno.jason
    package.jason
    primeagen.jason
    😂😂