Decrusting the serde crate

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

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

  • @regexPattern
    @regexPattern ปีที่แล้ว +87

    I remember when I first used serde. I just couldn’t believe how incredible it was, and I still can’t.

  • @ASJ-95
    @ASJ-95 ปีที่แล้ว +166

    It's nice that Serde included this video in their homepage.

    • @cat-.-
      @cat-.- ปีที่แล้ว +19

      honestly having someone to hold your hands and walk you through it feels sooo good.

  • @artem-qm9hz
    @artem-qm9hz ปีที่แล้ว +30

    I think this is one of the best programming channels I've ever seen. Not only among rust channels, but all programming channels. Complicated stuff explained simply and in depth at the same time. Thank you, Jon

  • @thomasandolf7365
    @thomasandolf7365 ปีที่แล้ว +34

    great stream as always, i feel so humbled over that there are such intelligent people that can write stuff like serde, and for you who can actually read the code and understand what it does. Wish i could get to that level one day.

    • @DavidJamesQ
      @DavidJamesQ 11 หลายเดือนก่อน +3

      I agree -- recognizing the goal and aspiring to writing great abstractions and being humble about it suggests to me like you're already well on your way!

  • @MRECoelho
    @MRECoelho ปีที่แล้ว +20

    Maybe it is mentioned later in the video (have not finished it yet), but out of curiosity I was wondering why this is not a 'Crust of Rust'.
    More importantly, I'm grateful for this kind of content. Demystifying code/digging in to the core is always interesting, but guided by an expert makes it more fun and you learn more and quicker.
    Thank you and cheers!

    • @llblumire
      @llblumire ปีที่แล้ว +27

      Crust of rust is standard library & core language features. "decrusted" is community created crates

    • @MRECoelho
      @MRECoelho ปีที่แล้ว +2

      @@llblumire Ah, I see. Thanks for the clarification!

    • @cat-.-
      @cat-.- ปีที่แล้ว

      I thought serde was some sort of standard lol

  • @michaelmueller9635
    @michaelmueller9635 ปีที่แล้ว +4

    Thx, really high value content. Amazing. There are so many crates out there, so that I'd love to see more than 1 video in 4 weeks.
    Thx for your work and effort!

  • @ramichasygov1037
    @ramichasygov1037 ปีที่แล้ว +7

    Another great stream 👍
    Can I ask to make the next video about LLVM? I'm really eager to see your insight on that 🤗

  • @bramble-east
    @bramble-east ปีที่แล้ว +3

    Rust code digging content is rare, this is top notch, can't wait for more Decrusting!

  • @monawoka97
    @monawoka97 7 หลายเดือนก่อน +3

    Heya this was really helpful and obviously you have a lot of deep knowledge. FWIW I felt like you breeze over the parts you consider obvious or easy, because they are the common case, and spend more time digging into the nitty gritty weird edge cases that are more complicated. I would actually appreciate if you did the inverse for videos like this. I am most interested in getting solid fundamentals about the common/obvious case since those are where I'll spend the vast majority of my time. And spending so much time on the niche/weird stuff makes it harder for me to remember the basics of how this crate works. EG you never actually write an example of a trivial custom desterilize method here. This made it hard for me to connect the macro generated deserialize to what my custom deserialize might practically look like. Just my 2 cents. Thanks!

    • @jonhoo
      @jonhoo  7 หลายเดือนก่อน +1

      Thanks for the feedback! I tend to focus on the more nitty-gritty bits because the documentation tends to be quite helpful for the simpler cases. Take serde.rs/custom-serialization.html for example, or the code snippets listed under serde.rs/examples.html.

  • @alanhoff89
    @alanhoff89 ปีที่แล้ว +3

    Another amazing Rust video to watch!

  • @carlosschellenberger7729
    @carlosschellenberger7729 ปีที่แล้ว

    Amazing vídeo! Thanks! Turns learning Rust (and Serde) into an exciting adventure !

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

    this series should be continued!!!!

  • @jwlzloff26
    @jwlzloff26 ปีที่แล้ว

    I highly agree to use BLUE as reference to Types!

  • @ruijieyu9035
    @ruijieyu9035 ปีที่แล้ว

    57:03 I’m not seeing why you would care about the additional bound: supposedly, derive serialize would insert “where Bar: Radical”, and wouldn’t care in which specific cases is the where clause fulfilled.

    • @jonhoo
      @jonhoo  ปีที่แล้ว +1

      The issue is if the derived code will only typecheck for subsets of the type where the bound holds.

  • @Danielo515
    @Danielo515 ปีที่แล้ว

    This was very dense, but you made a great job explaining each part. I have been breaking my head trying to write a custom deserializer for my enum format, and there is very little documentation about it,

  • @timanderson5717
    @timanderson5717 ปีที่แล้ว +2

    This video is on the front page of the serde website.

  • @origamibulldoser1618
    @origamibulldoser1618 7 หลายเดือนก่อน

    Defenestration... One of the best words in the english language.

  • @ozanmuyes
    @ozanmuyes ปีที่แล้ว +2

    Thanks for the great video! So Serde Data Model is akin to LLVM IR? If so, when serializing, we have 1 front-end (for Rust) and multiple back-ends (one for JSON, one for TOML, etc.). Is that true?

  • @secondengineer9814
    @secondengineer9814 ปีที่แล้ว +2

    Other suggestions for crate names: serdefied, serdefication, inserded

  • @kamu38
    @kamu38 ปีที่แล้ว

    The part that went into the `from` attribute on the specific fields is exactly what I wanted to do, but it only exists at the container level, not field level. You may have made a mistake here...

  • @Ben_Creates
    @Ben_Creates ปีที่แล้ว +1

    Wow, Awesome 😍 been waiting for this

  • @tomasz-waszczyk
    @tomasz-waszczyk ปีที่แล้ว

    Thanks for the stream.

  • @mintx1720
    @mintx1720 9 หลายเดือนก่อน

    I wish there can be a serde2 that addresses serde's numerous footguns on its attributes.

  • @hyllsimon
    @hyllsimon ปีที่แล้ว +1

    It would be amazing if you could make one of these for Tauri :)

  • @damoon_az2465
    @damoon_az2465 7 หลายเดือนก่อน

    Thanks!

  • @CrapE_DM
    @CrapE_DM 10 หลายเดือนก่อน +1

    The name serde looks Spanish to me, so I pronounce it like they would: sayr-day

  • @nati7728
    @nati7728 7 หลายเดือนก่อน

    Thank you!

  • @mahersallam8820
    @mahersallam8820 ปีที่แล้ว

    Thank you for this fantastic exploration of serde! I noticed that the Github code section/tab you have is different from mine (for example, the directory tree remains on the left side when you open a file and you can search within the file). Is this achieved with a browser extension or is it a setting on Github?

  • @roynrishingha
    @roynrishingha ปีที่แล้ว +1

    Hi Jon! Is it possible for you to make a similar video on `tokio` crate?

  • @lainisourgod
    @lainisourgod ปีที่แล้ว

    I've always pronounced it “sErde” with “e” as in “sErialize”. it sounds great for me

  • @XtremeGamesW2013
    @XtremeGamesW2013 ปีที่แล้ว +6

    Can you do winit next?

  • @Zeropadd
    @Zeropadd ปีที่แล้ว

    ❤️💙

  • @zahash1045
    @zahash1045 ปีที่แล้ว +2

    Lost opportunity to call the project serdeeznuts

  • @VixieTSQ
    @VixieTSQ ปีที่แล้ว

    YOU SHAVED AAAAHHHH

  • @max_ishere
    @max_ishere ปีที่แล้ว

    49:26 let's just say that this is all too big brain I petition for more examples to the docs.

  • @malborboss
    @malborboss ปีที่แล้ว

    Dk if its just me but Jon looked better with a beard

  • @mohamadbt4055
    @mohamadbt4055 ปีที่แล้ว

    nice

  • @romanstingler435
    @romanstingler435 ปีที่แล้ว +1

    +1 for AXUM

  • @parijatgamertv9228
    @parijatgamertv9228 ปีที่แล้ว +3

    Give me my lasagna, Jon.

  • @ewrietz
    @ewrietz ปีที่แล้ว +10

    Beard

  • @Alex-bv5se
    @Alex-bv5se 3 หลายเดือนก่อน

    Is it normal i watch half of the stream 2 days ago in good quality and today i can only watch in 360p without premium?? 😢
    I saw you were inviting for sponsor but it didn't feel so mandatory..

    • @Alex-bv5se
      @Alex-bv5se 3 หลายเดือนก่อน

      Lol but I can watch it in good quality if I'm not connected to my account 🤔.
      I don't feel like you would set up such a trick so i believe TH-cam is doing strange manipulations on your behalf..

  • @sortof3337
    @sortof3337 ปีที่แล้ว

    yeye

  • @julesoscar8921
    @julesoscar8921 ปีที่แล้ว

    Please decrust cargo or even rust itself

  • @zynaxsoft
    @zynaxsoft ปีที่แล้ว +19

    Beard

  • @oatiz
    @oatiz ปีที่แล้ว +5

    Beard