Deep .NET: A Complete .NET Developer's Guide to Span with Stephen Toub and Scott Hanselman

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 พ.ย. 2024

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

  • @marklord7614
    @marklord7614 6 หลายเดือนก่อน +119

    Man, these guys are killing it with the series -- great topics.

  • @The.WorldVentures
    @The.WorldVentures 6 หลายเดือนก่อน +69

    How does someone even become as great as Stephen Toub, man the guy knows his stuff.

    • @jackkendall6420
      @jackkendall6420 6 หลายเดือนก่อน +14

      You do it as your fulltime job for multiple decades, haha.

    • @kaolyfe-cw2cm
      @kaolyfe-cw2cm 5 หลายเดือนก่อน

      Pray enough to the coding gods...j/k 😄

  • @1camper69
    @1camper69 5 หลายเดือนก่อน +37

    These talks from Stephen are truly the best dotnet content available. Stephen has the knowledge and goes next level in explaining it extremely clear but simple and is just a joy to listen to.

  • @barrysphone
    @barrysphone 5 หลายเดือนก่อน +33

    This series is awesome, please keep it going for a long time. Stephen's knowledge is incredible and his enthusiasm is infectious. The dynamic between Scott and Stephen make this series unmissable.

  • @Tamazakis
    @Tamazakis 6 หลายเดือนก่อน +39

    TimeSpan well spent! Thank you :)

  • @MatteoGariglio
    @MatteoGariglio 6 หลายเดือนก่อน +38

    This series of videos featuring Stephen Toub is truly remarkable and incredibly interesting. Thank you!

  • @CuriouslyContent
    @CuriouslyContent 6 หลายเดือนก่อน +25

    I can't get enough of this content :) Who would have thought that an hour long video on spans is literally the most exciting thing on my feed this week!

  • @MarkRendle
    @MarkRendle 6 หลายเดือนก่อน +11

    It's crazy how simple Span is on the inside considering the impact it's had on .NET in recent years.

  • @BloodHaZaRd666
    @BloodHaZaRd666 6 หลายเดือนก่อน +94

    Like video at 0 seconds just because of @Stephen Toub

    • @aweklin
      @aweklin 6 หลายเดือนก่อน +4

      Not you alone. I did exact same thing, because it's the wizards show!

    • @AvenDonn
      @AvenDonn 6 หลายเดือนก่อน +4

      Like this comment at 1 second because I had to stop to like the video first because of Stephen Toub

  • @fieryscorpion
    @fieryscorpion 6 หลายเดือนก่อน +8

    This is amazing!
    Now I need a video on Multithreading and Parallel Processing from Scott and Stephen!

    • @MichalMracka
      @MichalMracka 5 หลายเดือนก่อน

      Dataflow...

  • @FICHEKK
    @FICHEKK 6 หลายเดือนก่อน +15

    Learning from Stephen Toub is such a pleasure, man is a .NET master!

  • @behboodik
    @behboodik 6 หลายเดือนก่อน +7

    Every video with Stephen in it is a treasure

  • @lstutzman
    @lstutzman 6 หลายเดือนก่อน +9

    Fantastic content guys!! Can’t wait for the next one. A deep dive into the GC would be cool

  • @BryanKelly
    @BryanKelly 5 หลายเดือนก่อน +9

    How does Span relate to Memory? I'd love to see a follow up to this that gets into that detail.

    • @user-dc9zo7ek5j
      @user-dc9zo7ek5j 5 หลายเดือนก่อน +6

      Memory is on the heap, Span is stack only. You can use Memory just like any other non-ref type, but Span can be used only within the function. Also, Memory can be used in async await, while the other cannot (because of stack only constraint). Memory behaves like Span, but it is much closer to ArraySegment without being array only type. I don't think I have used this type anywhere, but I have seen it being used around the Stream class.

  • @ElSnakeObwb
    @ElSnakeObwb 6 หลายเดือนก่อน +28

    Love this series. keep it up

  • @nepalxplorer
    @nepalxplorer 6 หลายเดือนก่อน +9

    WOW!!! Love these series, please don't stop!

  • @allied-data
    @allied-data 5 หลายเดือนก่อน +3

    Scott and Stephen: Outstanding series!

  • @amrswalha
    @amrswalha 6 หลายเดือนก่อน +4

    Scott and Stephen are doing a great job, all the best.

  • @lejoyke
    @lejoyke 5 หลายเดือนก่อน +1

    Although I don't understand some things, I still feel excited. Please continue to keep up

  • @apostolosmihailidis5467
    @apostolosmihailidis5467 3 หลายเดือนก่อน

    These guys taught us so many things in that small "Span" of time ! Thanks a lot 🙏 Stephen's knowledge is so valuable !

  • @weird_wyrd
    @weird_wyrd 5 หลายเดือนก่อน +2

    That floppy drive jumper comparison got me. The assembly I could follow, ain't never heard of a jumper before. Today I learned a couple things! Great content!

    • @OlivierDALET
      @OlivierDALET 4 หลายเดือนก่อน +1

      Jumpers were a little switch on 3'1/2 floppy discs that revealed or hid a hole: very modern tech compared to the little adhesive tape you had to stick on 5'1/4 discs to achieve the same (that is write-protect your disc)

  • @superpcstation
    @superpcstation 6 หลายเดือนก่อน +5

    Please don't stop making these!

  • @fatlumlatifi2897
    @fatlumlatifi2897 6 หลายเดือนก่อน +2

    Excellent video, please keep Mr. Toub on a few more episodes. As of topics to cover if possible please make video on how to interop or preferably make binding of C libraries on .NET.

  • @SlackwareNVM
    @SlackwareNVM 6 หลายเดือนก่อน +3

    I'm interested in the meaning behind that last constructor check. Also, what are the tradeoffs from the alternative implementations you mentioned?
    Would love to know more about Memory as well. I don't yet have proper intuition of how to use it.

  • @onodera3964
    @onodera3964 5 หลายเดือนก่อน

    Great series, loving it. Some of the topics I would love to see covered next:
    - how equality works (intermediate)
    - how the allocator and and the GC work (expert)
    - how exceptions work (expert)
    - how analyzers work
    - how generators work
    - how JIT works

  • @DavidPereira-lc1yq
    @DavidPereira-lc1yq 6 หลายเดือนก่อน +1

    This is freaking awesome!!! Right from the source, you should build a comprehensive "deep C# course" with all of this, for people that would like to purse perf related topics. Right now, I don't think there's a place where you can do that. It's basically spread around books, courses, blogs, etc etc.
    Really nice this one.

  • @delphiguy23
    @delphiguy23 6 หลายเดือนก่อน +2

    I saw Stephen Toub, I clicked.... freaking awesome presentation learned a lot from this.

  • @draganradovac8803
    @draganradovac8803 5 หลายเดือนก่อน

    Scott and Stephen are a great combo. Looking forward to future presentations.

  • @mey33am
    @mey33am 6 หลายเดือนก่อน +1

    Keep posting Stephan! We need more content like this, Thank You

  • @CRBarchager
    @CRBarchager 4 หลายเดือนก่อน

    I need to watch more of these videoes. It's just pure gold!

  • @preet1979
    @preet1979 5 หลายเดือนก่อน +1

    This was a great video. All I need now is another deep dive video into Memory to complete my understanding of it. Thanks again for such a great video.

  • @WantMore-mc8dx
    @WantMore-mc8dx 3 หลายเดือนก่อน

    Great duo - love it that Scott wants it zoomed in :)

  • @freierNamen
    @freierNamen 6 หลายเดือนก่อน +1

    Oh no, it happened again!
    The video is over and I've already seen all parts of the series😢😂
    Thank you so much! Love every second of it...

  • @lordtony8276
    @lordtony8276 5 หลายเดือนก่อน +10

    "Have you got anything without Span?"
    "Well, there's Span Span List and Span, that's not got much Span in it."

    • @p.j.wilkins1321
      @p.j.wilkins1321 5 หลายเดือนก่อน

      Lobster Thermidor aux crevettes with a Mornay sauce, garnished with truffle pâté, brandy, and a fried egg on top, and Span.

  • @dy0mber847
    @dy0mber847 6 หลายเดือนก่อน +5

    Incredible as always

  • @SajadJalilian
    @SajadJalilian 5 หลายเดือนก่อน

    Dotnet has many layers of abstractions in a good way. They are like magic. Watching this series is like those videos in which a magician explains how they are doing their tricks under the hood. I love it.

  • @MehrdadSoltani-qn2ny
    @MehrdadSoltani-qn2ny 6 หลายเดือนก่อน +1

    one of the best demo/tutorials I have ever seen about Span.

  • @colhountech
    @colhountech 6 หลายเดือนก่อน +1

    Best Content On youtube today. I love the relaxed page and the high intensity content. It's almost an anti pattern of all the click-bate, gapless, b-roll crap on youtube today.
    If stephen does a workshop of stuff like this in NDC London next year, I'll drop $2000 to attend like when Dave and Damiean did the early workshops on .net core in circa 2017.

  • @TheChonsey
    @TheChonsey 6 หลายเดือนก่อน +10

    Awesome content. Please make a video on System.IO.Pipelines

    • @caunt.official
      @caunt.official 3 หลายเดือนก่อน

      I hate that .NET Pipelines are all about numbers. What I would like to see, is pipeline of T, so I can have abstraction for any pipeline I want to build

  • @Matt-tp9lh
    @Matt-tp9lh 5 หลายเดือนก่อน

    Awesome series! Please do a video on the async runtime of c# next about how the default task scheduler works, especially interested in knowing how tasks get scheduled and as developers using the async runtime how do we avoid common pitfalls of inefficient patterns

  • @DavidSmith-ef4eh
    @DavidSmith-ef4eh 5 หลายเดือนก่อน

    I didn't plan on watching this til the end... very interesting and very well presented.

  • @solidusflux
    @solidusflux 5 หลายเดือนก่อน +1

    Excellent content. Also: these light mode users bring balance to the force

  • @levimatheri7682
    @levimatheri7682 5 หลายเดือนก่อน

    Stephen Toub is my spirit animal. So smart!

  • @ChaoticNeutral6
    @ChaoticNeutral6 5 หลายเดือนก่อน

    That was wild, I definitely want to see a part 2. Would also be cool to go through stuff like MemoryMarshall and its methods

  • @deivycode
    @deivycode 4 หลายเดือนก่อน +1

    Where we can learn this kind of stuff is actually very amazing.

  • @LasseVågsætherKarlsen
    @LasseVågsætherKarlsen 6 หลายเดือนก่อน +1

    Man, you guys nailed it as usual, absolutely love these videos. GC next? 🙂

  • @davidelettieri
    @davidelettieri 2 หลายเดือนก่อน

    Keep this series going!

  • @wimzi9887
    @wimzi9887 5 หลายเดือนก่อน +2

    I wanna watch Stephen build a complex project from start to finish. I would love to see how he works.

  • @sgwong513
    @sgwong513 5 หลายเดือนก่อน

    its the only video I need to watch to learn what is Span in .net

  • @tayyabshaikh3286
    @tayyabshaikh3286 5 หลายเดือนก่อน

    Pure Knowledge Sharing.. & No dumb podcast like others.. Truly Marvelous.

  • @GuildOfCalamity
    @GuildOfCalamity 6 หลายเดือนก่อน

    Keep doing these with Stephen; would like to see more roll-your-own content, like the Async/Task video.

  • @gilbertsenyonjo963
    @gilbertsenyonjo963 2 หลายเดือนก่อน

    Good stuff! Loved it. Thank you dotnet team.

  • @chaouanabil3087
    @chaouanabil3087 4 หลายเดือนก่อน

    it was from a month and didn't see it till today!!! i hope next one would be Memory and Pipes and Channels

  • @JavedaliShaikh-yy1jr
    @JavedaliShaikh-yy1jr 5 หลายเดือนก่อน

    Just Brilliant! Keep making more of these.. Thanks.

  • @WizardofWestmarch
    @WizardofWestmarch 6 หลายเดือนก่อน

    At 38:48 Toub is talking about how if you have a readonly span it will put it in the data block of the binary. Do things like ImmutableArray get the same benefit or is the JIT compiler extra aware of ReadOnlySpan to do that optimization?

  • @norm6096
    @norm6096 6 หลายเดือนก่อน +2

    You guys are awesome combo, thanks for the videos! :)

  • @SimoLPers
    @SimoLPers 5 หลายเดือนก่อน

    The series is really great! Thanks for sharing! ME me I'd personally love to see how what lies under the hood of reflection.

  • @alexisfibonacci
    @alexisfibonacci 6 หลายเดือนก่อน +3

    I haven't seen Bart De Smet in years. Is he available to talk about IObservable? Why has there been less emphasis on it in recent times? Also IQbservable..

  • @tirgo007
    @tirgo007 6 หลายเดือนก่อน

    Great stuff! Looking forward to the next one.

  • @AndrzejPauli
    @AndrzejPauli 5 หลายเดือนก่อน

    StephenT and ScottH - nothing is better 🙂

  • @fedayka
    @fedayka 6 หลายเดือนก่อน

    The worst thing about this show is its time constraint! Great content guys! Amazing :)

  • @AskFiqri
    @AskFiqri 5 หลายเดือนก่อน

    This is a treat

  • @imranhussain8700
    @imranhussain8700 5 หลายเดือนก่อน

    Async/Await
    LINQ
    RegEx
    Span
    😀😀😀😀😀😀😀😀😀😀😀😀😀😀
    Loving it.
    Thank you very much. Great Content.

  • @enijburg
    @enijburg 6 หลายเดือนก่อน

    Another great session! Keep them coming 🎉

  • @Муслим-с2щ
    @Муслим-с2щ 6 หลายเดือนก่อน +3

    Like in the good old days of Channel 9 👍

  • @hashdynamics978
    @hashdynamics978 5 หลายเดือนก่อน

    my new favorite tv show. Love it!

  • @KvapuJanjalia
    @KvapuJanjalia 5 หลายเดือนก่อน

    Looking forward to deep dives into memory of T, sequence of T, pipes and buffers.

  • @kapsir7255
    @kapsir7255 4 หลายเดือนก่อน

    Big thanks for the Deep .NET series, these are sooo great 🚀
    One question regarding Span: Are there as many improvements in the compiler for netfx as in .NET too? Is it worth to update APIs in legacy code with the System.Memory NuGet package?

  • @rodrigolima206
    @rodrigolima206 5 หลายเดือนก่อน

    Very nice explanation thanks a lot. I would like to see something related to streams and how they work I was always curious about that. If possible, of course. Thanks again .

  • @timur2887
    @timur2887 5 หลายเดือนก่อน

    Thank you very much! Great content!

  • @mrqbboy
    @mrqbboy 6 หลายเดือนก่อน

    I'm going to repeat myself, but thanks Scott and Stephen.

  • @theandrewharry
    @theandrewharry 5 หลายเดือนก่อน

    I wish I could like this 💯 times

  • @dy0mber847
    @dy0mber847 6 หลายเดือนก่อน

    Show must go on

  • @SlackwareNVM
    @SlackwareNVM 4 หลายเดือนก่อน +1

    Any continuation of the series coming soon?

  • @djchrisi
    @djchrisi 6 หลายเดือนก่อน +1

    28:30 unsafe ist really a great keyword because it truly scares developers off ;)

  • @schlott1970
    @schlott1970 6 หลายเดือนก่อน +1

    My biggest question was how, using span, was the compiler able to keep such a tight loop when enumerating? Also could have mentioned that span does not allocate any memory or copy stuff around! This was a good one Scott/stephen! Thankyou

    • @davidantolingonzalez4929
      @davidantolingonzalez4929 5 หลายเดือนก่อน +1

      It does allocate memory for the Span (two fields), but it does on the stack, not on the heap. Also, since it only stores an address of memory and an int, no copy of data is needed.
      The tight loop is achieved because T reference is basically a pointer so for enumerating the only thing it has to do is add "one" to the pointer times length, exactly the same as an array.

  • @allied-data
    @allied-data 5 หลายเดือนก่อน

    Riffing off "Naming is hard":
    Spam
    Hmmm.

  • @heischono4917
    @heischono4917 5 หลายเดือนก่อน

    I wonder what Scott is using a floppy for? :D Wonderful video, I hope we get more f this kind. Greetings from Norway :)

  • @uitumenj8380
    @uitumenj8380 6 หลายเดือนก่อน

    I’m value added :))) thank you guys!

  • @anm3037
    @anm3037 5 หลายเดือนก่อน

    Any interface for all collections (Array, List, etc) that can be converted to Span

  • @JakobStrasser
    @JakobStrasser 6 หลายเดือนก่อน

    Thanks, very informative!

  • @piotrszuflicki1527
    @piotrszuflicki1527 3 หลายเดือนก่อน +1

    When will we see next episode from Deep Dive series?

  • @davidmasterson883
    @davidmasterson883 6 หลายเดือนก่อน

    I just love these videos!

  • @Cymricus
    @Cymricus 6 หลายเดือนก่อน +1

    the people in chat being negative about copilot are gonna get behind if they don’t use the very powerful tools at our disposal.
    you really don’t want to be behind in a world with generative AI.

  • @nessitro
    @nessitro 6 หลายเดือนก่อน

    I love this! Tanmirt!

  • @ivandrofly
    @ivandrofly 5 หลายเดือนก่อน

    34:31 - Pause
    39:00 - utf8 syntax from c# 11

  • @evarlast
    @evarlast 5 หลายเดือนก่อน

    Best C# feature in 10-15 yrs.

  • @SahilDesai-sx3sn
    @SahilDesai-sx3sn 6 หลายเดือนก่อน

    knowledge SPANNING multiple videos.

  • @lis2889
    @lis2889 4 หลายเดือนก่อน

    Hi! Thanks for the video! Could you please record similar one about GC. Please 🥺

  • @lolroflxd
    @lolroflxd 6 หลายเดือนก่อน +1

    Awesome ❤

  • @yonatan2608
    @yonatan2608 5 หลายเดือนก่อน

    These kind of videos should be in 202 schools.

  • @yonatan2608
    @yonatan2608 6 หลายเดือนก่อน

    thank youuuu

  • @moverecursus1337
    @moverecursus1337 3 หลายเดือนก่อน

    well, this is awesome

  • @Corvinaification
    @Corvinaification 6 หลายเดือนก่อน

    Amazing!

  • @Aaron31056
    @Aaron31056 5 หลายเดือนก่อน

    Amazing

  • @jackkendall6420
    @jackkendall6420 6 หลายเดือนก่อน

    rubbed my hands together and cackled when I saw this

  • @StackOverflowMan
    @StackOverflowMan 5 หลายเดือนก่อน

    "readonly ref struct" appears in C# 8, while Span appreared earlier in .net core 2, and than Span was just a struct.
    Would be interesting to see how it evolve.

  • @robl39
    @robl39 5 หลายเดือนก่อน

    Can you guys please deep dive the csc or the CLR?

  • @kamlezadeh
    @kamlezadeh 5 หลายเดือนก่อน

    Can we have a video explaining ArrayPool and MemoryPool please?

  • @YuriBez2023
    @YuriBez2023 5 หลายเดือนก่อน +1

    @37:11 - Stephen's fingers were off-by-one there.