Deep .NET: Deep Dive on LINQ with Stephen Toub and Scott Hanselman

Поделиться
HTML-код
  • Опубликовано: 27 дек 2024

Комментарии • 168

  • @weneedlittlepatience
    @weneedlittlepatience 8 месяцев назад +245

    Wake up babe, dotnet dropped another deep dive with Stephen Toub (we want more)

    • @naveenkp7849
      @naveenkp7849 8 месяцев назад

      Absolutely

    • @frankhaugen
      @frankhaugen 8 месяцев назад +2

      And longer, these teases are way too short. 😢
      I want to absorb all the knowledge they have

    • @smokingsnakes_project
      @smokingsnakes_project 7 месяцев назад

      Yes!!!! More, please :)

  • @antonio_carvalho
    @antonio_carvalho 8 месяцев назад +128

    Stephen Toub is a great presenter and extremely knowledgeable, what a combo!

    • @SajadJalilian
      @SajadJalilian 8 месяцев назад +4

      This combination is the main reason his videos are extremely exciting.

    • @osman3404
      @osman3404 8 месяцев назад +2

      YES YES ... also Scott is also the BEST host I've ever seen ... he has amazing empathy to sense what we the audiebnce thinking and he calls it out

  • @vandersonguidi
    @vandersonguidi 8 месяцев назад +102

    I'm a simple person, if Stephen Toub is in the video I'll watch it

  • @pmnm113
    @pmnm113 8 месяцев назад +9

    That's how you teach dotnet, I will await for stephentoub

  • @SlackwareNVM
    @SlackwareNVM 8 месяцев назад +50

    Hour, hour and a half attention span? I'm waiting for the 5 hour Director's Cut Extended Edition.

    • @Otto-the-Autopilot
      @Otto-the-Autopilot 2 месяца назад

      That would probably even make Peter Jackson feel jealous.

  • @sergiojrdotnet
    @sergiojrdotnet 8 месяцев назад +4

    I've been waiting for a series like this for a Int64 time! What an amazing presentation. Please keep it up!

  • @mar_sze
    @mar_sze 8 месяцев назад +28

    I love these deep dives! Even though I'm already familiar with most of it, there's always a few hidden gems to learn. And I also just enjoy listening to Stephen Toub explain these things from the ground up.

    • @ripvannwinkler
      @ripvannwinkler 8 месяцев назад +4

      I love the time limit they impose because with someone like ST, you know you're going to get right to the meat of the discussion without a lot of cruft. And revisiting something we use every day to explain it in low level detail really helps understand the WHY behind the implementation. GREAT stuff Scott/Stephen.

  • @djchrisi
    @djchrisi 8 месяцев назад +1

    Looking forward for the next part. Reflection is a topic I think a deep dive is interesting.

  • @osman3404
    @osman3404 8 месяцев назад +14

    This video is BETTER than ANYTHING on Netflix :) and the Suprise ending was so cool too

  • @thedarktower75
    @thedarktower75 8 месяцев назад +4

    This series with Scott and Stephen is the best programming-related thing I've ever seen on RUclips.
    Thank you so much!

  • @zakizaz1
    @zakizaz1 8 месяцев назад +14

    Thank you guys . Please don't stop those series

  • @johndonaldmelville
    @johndonaldmelville 8 месяцев назад +31

    Please, more Stephen Toub -- the deeper the better. Reminds me of the good old days watching Channel 9 in the early 2000s. It (at least looked like) a few guys walking around Microsoft with a video camera asking crazy smart people to explain incredibly difficult problems. It is fun to see smart people thinking hard whether I care about the particular technology or not.

    • @rcherrycoke7322
      @rcherrycoke7322 6 месяцев назад

      I’m glad there’s someone else out there that remembers c9

    • @andersborum9267
      @andersborum9267 5 месяцев назад

      Remember the talks with Eric Meier, Bart de Smet etc on the duality of IEnumerable and IEnumerator? (i.e. Rx?) :)

    • @andersborum9267
      @andersborum9267 5 месяцев назад

      @@rcherrycoke7322 those were the days, clearly remember the whiteboard sessions, and these videos are a step in the right direction.

  • @draganradovac8803
    @draganradovac8803 7 месяцев назад +1

    No session with Stephen Toub is ever long enough. Thanks guys that was awesome.

  • @TheChonsey
    @TheChonsey 8 месяцев назад +2

    I really enjoy watching and learning from you guys. Pedagogical side of thing is just brilliant. It's so useful when Scott once in a while "takes the foot off the gas pedal" to explain "simple" things like underscore in an integer to separate thousands etc. It's so deep and explaining things from the first principles. Understand once and apply everywhere. It's like a breath of fresh air in an otherwise clean-code and clean-architecture flooded environment.

  • @AnupShah
    @AnupShah 8 месяцев назад +2

    Cheer up guys who is looking this now rather being on Netflix. Thanks Scott. Stephan while reading your old blogs post for async and stuff wished to see you like this and it’s dream true.
    Please bring more stuff. This gives a great motivation as well. Thanks again.

  • @jannishecht4069
    @jannishecht4069 8 месяцев назад +4

    Thanks, Scott, for stressing the environmental impact. It is at least as important as saving money❤

  • @SlackwareNVM
    @SlackwareNVM 8 месяцев назад +13

    I would love to see a part 2 with all of the potential optimizations.
    When you peek unther the covers to see how a library or .net itself implements things, it's really easy to get lost in the code, but a lot of the complexity comes from optimizations that have accumulated over time. It'd be great to be able to build a mental catalogue of "optimization patterns" so that we have an easier time reading code. I think this series will help immensely with this.

  • @marklord7614
    @marklord7614 8 месяцев назад +7

    Great stuff! This session will be relevant for many years to come. Next up...Spans?

  • @ohdev2019
    @ohdev2019 8 месяцев назад +3

    Keep this series going! Hard to find content like this, especially with this level of presentation.

  • @VincentYang024
    @VincentYang024 8 месяцев назад +1

    This is fantastic series. I barely watch movie nor RUclips video more than once except this series. Thank you Scott and Stephen🎉🎉

  • @dy0mber847
    @dy0mber847 8 месяцев назад +3

    These vids with Stephen Toub just pure gold

  • @RashadMaqsood
    @RashadMaqsood 2 месяца назад

    took the whole week to watch this video but its worth spending the time. Thanks guys. keep it up. Your latest video Let's Talk Parallel programming forced me to watch all previous videos from the start.

  • @acedonk
    @acedonk 8 месяцев назад +3

    I believe just listening to Scotts and Stephens friendly banter makes me a better developer! 🙂

  • @irinamarudina3114
    @irinamarudina3114 8 месяцев назад +1

    I am not even .NET but a Java developer. Still this video was a motivation booster for me and I can't wait to see the next one with the specific Array optimized version. Thank you!

  • @Noceo
    @Noceo 8 месяцев назад +1

    This kinda feels like the RUclips version of the infamous C# in Depth (by Jon Skeet). Not to the extend where it will replace it (even if you get all the chapters), but in the sense that you get the same deep understanding of how the language works on a lower level. I really love it and hope to see more videos of this type.

  • @larskjrsgaard4881
    @larskjrsgaard4881 6 месяцев назад

    More of this, please. Scott and Stephen are great at these. Enjoyable, deeply satisfying and these peeks into the layer below my daily dev life are super interesting and are certainly having a valuable impact on my work. Just great stuff!

  • @ryanharris5968
    @ryanharris5968 8 месяцев назад +3

    Brilliant stuff. Enjoyed it thoroughly. The great thing about this type of content is that it’s making me think deeper about the code I write.

  • @oluwolekolawole3802
    @oluwolekolawole3802 8 месяцев назад +2

    I love it that there are still people who are actual Computer Science nerds out there. At the end of the day, a lot of syntactic sugar boils down to `1: doSomething(); 2: if not done, GoTo 1;`

  • @ChaseFreedomMusician
    @ChaseFreedomMusician 8 месяцев назад +2

    This series is great!! Thank you!

  • @sandeepmadineni2981
    @sandeepmadineni2981 8 месяцев назад

    I am loving these deep dives and the energy and enthusiasm between the two is fantastic. Not to mention the little things you drop in between like sealed classes, statemachine, profiler, benchmark, interlocked vs threadid kept me engaged.
    Keep throwing these videos, we are happy to catch.
    Awaiting for the next one..

  • @caseyspaulding
    @caseyspaulding 8 месяцев назад +1

    Thank you! Stephen is great at explaining code and Scott ask questions that I am thinking!

  • @sanampakuwal
    @sanampakuwal 8 месяцев назад +1

    Don't Stop these coming!

  • @stevanfreeborn
    @stevanfreeborn 8 месяцев назад

    Thank for taking the time to share all your smarts with us!

  • @sudidav
    @sudidav 8 месяцев назад +1

    Thanks a lot for the time you guys are putting on this. This is great stuff!

  • @trannhan1432
    @trannhan1432 3 месяца назад

    This video is totally insane. Many thanks for your excellent job!

  • @denisivanov4888
    @denisivanov4888 8 месяцев назад +1

    Gold channel with gold videos.

  • @lolroflxd
    @lolroflxd 8 месяцев назад

    Awesome. Cant wait for a extreme deep dive extended directors cut version :D
    Could watch this content all day long

  • @wiseskeshom4673
    @wiseskeshom4673 8 месяцев назад

    Thank you for the amazing Deep Dive series. We want more please 😊

  • @Martin-zo7en
    @Martin-zo7en 7 месяцев назад

    @14:17 What is the shortcut Stephen uses to go from the auto-suggested "Select" to "select"?

  • @cloudycloudlet7091
    @cloudycloudlet7091 8 месяцев назад

    I love the deep dive videos with Stephen. Please do more!

  • @jarosawfrankowski7845
    @jarosawfrankowski7845 8 месяцев назад

    One of my favorite series!

    • @LouisWaweru
      @LouisWaweru 8 месяцев назад +1

      I hope it’s a series

  • @teevee-ej6zm
    @teevee-ej6zm 8 месяцев назад +1

    Thank you that was a great tutorial and very very insightful deep dive. Here we see linq is iterators all the way dow ;)
    Also thank you Scott for constantly telling Stephen to stop zooming out. Its very hard for us trying to follow the super fast drain dump going on and suddenly the code becomes completely unreadable due to Stephen zooming out all the time.

    • @mb7604-g9v
      @mb7604-g9v 7 месяцев назад

      I actually found that to be a little distracting

  • @CuriouslyContent
    @CuriouslyContent 8 месяцев назад

    Would anyone else pay good money to see Stephen Toub do a dometrain-style course on performance profiling and optimization? Starting with how he thinks about performance optimization, talking about techniques and tools and then running through a robust example using everything he covered to optimize some piece of code... would be super cool if he did it for some open source project as a microsoft-sponsored demo using VS or any other stuff MS wants to showcase. Maybe a piece of OS code that MS uses internally but could never justify spending Stephens time on ;-)
    We need more Stephens. Would be good for the next generation of programmers to have a solid-starting point for this kind of work.

  • @hakanfostok2547
    @hakanfostok2547 7 месяцев назад

    Great is little word for what you both are doing, words can not describe it, please keep going.

  • @Spirch
    @Spirch 8 месяцев назад

    it's nice to see this, please continue the series

  • @elliotdematteis7825
    @elliotdematteis7825 8 месяцев назад +1

    Holy crap just finding out about these deep dives, literally cannot wait to finish this and click on the async/await one sitting in the "up next" section of youtube lol

  • @mmfarahat1
    @mmfarahat1 8 месяцев назад +1

    A very useful series, thanks

  • @hhgforfhuv
    @hhgforfhuv 8 месяцев назад

    Stephen Toub legend, thanks for videos with him.

  • @robadubbdubb
    @robadubbdubb 8 месяцев назад +1

    Just fantastic. As always. Thanks guys!

  • @dankeseb4825
    @dankeseb4825 8 месяцев назад

    Great series, looking forward to the next one.

  • @emmanueladebiyi2109
    @emmanueladebiyi2109 8 месяцев назад +1

    This series is amazing!

  • @gilbertsenyonjo963
    @gilbertsenyonjo963 3 месяца назад

    Woww. I've learnt alot from this session. Thanks guys

  • @egvijayanand
    @egvijayanand 8 месяцев назад

    The reason why the exception is thrown during the MoveNext call is the cursor, which keeps track of the items, is positioned right before the first item on the Enumerable. Similarly, the LINQ query is executed when it's used and not where it's defined.

  • @mewsic2496
    @mewsic2496 8 месяцев назад

    Amazing video thank you Scott and Stephen !

  • @WillEhrendreich
    @WillEhrendreich 8 месяцев назад +1

    That was great, thanks!

  • @ivandrofly
    @ivandrofly 2 месяца назад

    25:58 - the three hard thing are: naming; off by one error; cache validation

  • @TheProTip
    @TheProTip 8 месяцев назад +1

    A deep dive on DLR would be awesome. There is a lot of FUD about "dynamic" that proliferates.

  • @DevelTime
    @DevelTime 8 месяцев назад

    Great video thank you very much. Bring some more goodies, please 🙂 but just remember about proper font size (thank you Scott 🙂 ). Maybe go even deeper with optimization, profiling, micro details. The check with current thread was really neat, I wonder what else Stephen keeps in his sleeves 🙂

  • @josephizang6187
    @josephizang6187 8 месяцев назад

    I love these deep dives. Thanks guys.

  • @yonatan2608
    @yonatan2608 8 месяцев назад +1

    Oh no, another video with Stephen Toub!!!

  • @dejavupk
    @dejavupk 8 месяцев назад

    Thank you! That is great video. Can't wait for more 🙂

  • @JeanQPublique
    @JeanQPublique 8 месяцев назад +1

    It's nice to get some dotnet content for experienced devs.

  • @Runningalien
    @Runningalien 8 месяцев назад

    awesome presentation! very interesting and very well presented! Thank you!

  • @MB-or1kh
    @MB-or1kh 8 месяцев назад

    Great show! Keep them coming.

  • @juanbautista6766
    @juanbautista6766 8 месяцев назад

    Keep these deep dives coming!

  • @--Eric--
    @--Eric-- 8 месяцев назад

    Thank you both, this was great, as usual… 👏🏼

  • @iamkilroiyo
    @iamkilroiyo 8 месяцев назад

    I love this series.

  • @WeihanLi-iHerb
    @WeihanLi-iHerb 8 месяцев назад

    thanks very much for sharing, love it, we want more please

  • @Bill-s6j2w
    @Bill-s6j2w 7 месяцев назад

    Surely Reset() is a member on IEnumerator because IEnumerator is C#'s version of the well documented (GoF) Iterator pattern, which is described as MoveNext(), GetCurrent(), and Reset()

  • @OeHomestead
    @OeHomestead 8 месяцев назад

    Keep 'em comin' :-) Parallelism, threading, optimisation, how to take advantage of all the language features next?

  • @CuriouslyContent
    @CuriouslyContent 8 месяцев назад

    If Stephen wasn't doing so much good work on everything he touches, I would say please make more videos! But I can't help worrying that every minute he spends explaining something to me, he's not making the language/framework more awesome. We need to clone this mans brain!

  • @kamatapa
    @kamatapa 8 месяцев назад

    Love these deep dives...

  • @HIOLLJ
    @HIOLLJ 8 месяцев назад

    Hyped for part 2.

  • @damiengu
    @damiengu 8 месяцев назад +1

    While this is very cool it's also worth remembering that LINQ to Objects (in-memory implementations like this) are just the tip of the iceberg. Expression trees and IQueryable is what sets LINQ and C# apart from similar in-memory techniques in JavaScript, Swift etc. They don't have a way to get the syntax tree and to allow the query to be translated to a completely different remote language like SQL.

  • @ghosttie
    @ghosttie 8 месяцев назад +3

    Is the analyzer that makes classes sealed publicly available?

    • @7th_CAV_Trooper
      @7th_CAV_Trooper 8 месяцев назад

      Probably an editorconfig setting

    • @jmlane
      @jmlane 6 месяцев назад

      I came here to ask the same question. It would be useful!

  • @egvijayanand
    @egvijayanand 8 месяцев назад

    44:08 Could have checked for null, initialize the Enumerator field to null, and then set it here only if it's null. Using int-based state variable doesn't look good.

  • @fabii5555
    @fabii5555 8 месяцев назад +1

    The original video got removed while I was watching it. My heart dropped a beat when the connection error popped up 😵

  • @Danielspss
    @Danielspss 8 месяцев назад

    this was just what i need it, thank you

  • @WillEhrendreich
    @WillEhrendreich 8 месяцев назад +2

    I'd love to hear from more people from the fsharp side of life!! Get Chet Husk, Jimmy Byrd, Vlad Zarytovskii, Don Syme, the whole gang.

  • @markgottselig3059
    @markgottselig3059 8 месяцев назад

    I would absolutely love more Stephen Toub videos! Please get him a decent microphone though, I find the difference in audio quality between Scott and Stephen is distracting

  • @bluecup25
    @bluecup25 8 месяцев назад +3

    yay it is back

  • @kodindoyannick5328
    @kodindoyannick5328 4 месяца назад

    Awesome content! Thanks

  • @PerWillner
    @PerWillner 8 месяцев назад

    Wow, I am hooked 🤯👍

  • @mahmoud.shaheen
    @mahmoud.shaheen 3 месяца назад

    Amazing video thanks

  • @kousikpandey3401
    @kousikpandey3401 5 месяцев назад

    Hi Stephen! Thanks for the nice session.
    I have one question though.
    What would have been the problem if we would have created '_enumerator' from inside 'Enumerator' constructor.

  • @arabiceasycode
    @arabiceasycode 8 месяцев назад

    love this vedio, youtube should pin it in the top of other videos!

  • @daveblack6951
    @daveblack6951 8 месяцев назад

    That was quite something! Thanks.

  •  7 месяцев назад

    Great video.

  • @_Miguel_Roman_
    @_Miguel_Roman_ 8 месяцев назад

    Excellent talk!

  • @RiddhisatwaGhosh-p6x
    @RiddhisatwaGhosh-p6x 5 дней назад

    great video

  • @fedayka
    @fedayka 8 месяцев назад

    This is great! Thanks guys!

  • @juan_w_fer
    @juan_w_fer 8 месяцев назад

    This was super interesting!

  • @EstebanAstudillo
    @EstebanAstudillo 8 месяцев назад

    Awesome stuff!

  • @JakobStrasser
    @JakobStrasser 8 месяцев назад

    Very interesting, thanks!

  • @FedasaBote
    @FedasaBote 8 месяцев назад

    Wow, this should be amazing

  • @expertreviews1112
    @expertreviews1112 8 месяцев назад

    Fantastic!!!!

  • @romanbrych4216
    @romanbrych4216 5 дней назад

    Great!

  • @moshtabamorsali
    @moshtabamorsali 8 месяцев назад

    First I watched async/await video and thought that is too much for me. Now I'm watching this and find out even LINQ is too much for me :')

  • @x0rld159
    @x0rld159 8 месяцев назад +1

    where is the deep dive on async ? I don't find it

    • @burndasbr
      @burndasbr 8 месяцев назад +9

      "Writing async/await from scratch in C# with Stephen Toub"

    • @x0rld159
      @x0rld159 8 месяцев назад

      @@burndasbr oh thx, I search on deep dive keywords

  • @Kitulous
    @Kitulous 8 месяцев назад

    didn't know you could goto a case branch to fall through!