This is why Go Channels are awesome

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

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

  • @Max_Jean
    @Max_Jean 10 месяцев назад +31

    Wow The fact Go allows you to bypass a million third party libraries is great. These videos are really helpful

  • @whitefluffycloud
    @whitefluffycloud 10 месяцев назад +19

    I'm coming from the JS world (feeling the same fatigue you mentioned in another video) and also dabbling with Go on my spare time. Hoping to see more great Go content from you as you learn and explore the language!

  • @colbyberger1881
    @colbyberger1881 10 месяцев назад +3

    This is the reason why I spent the past year only coding in Golang....it's just such a nice experience.

  • @prasanthrv4850
    @prasanthrv4850 10 месяцев назад +13

    Really like your GO related videos, what kind of resource you are using to learn Go and kubernetes, is it youtube, udemey course or just documentation?

    • @WebDevCody
      @WebDevCody  10 месяцев назад +8

      chatGPT and experimenting by just building stuff

  • @CrawlingPanther
    @CrawlingPanther 10 месяцев назад +1

    Love your videos man they've been very helpful the last 18 months as I relearn web dev. Nervous about the job landscape for junior devs but either way, channels like yours make it seem more fun than anything else.

  • @dhaw
    @dhaw 10 месяцев назад +3

    Go mention !!!

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

    Straight to the point. Really good video, with zero bushing around the bushes.

  • @humeidussenejocordasse791
    @humeidussenejocordasse791 8 дней назад

    This is a worker pool concurrency pattern, explained in nutshell, amazing

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

    Once we enter the channel into the Reader function, why are we still dealing with the WaitGroup variable wg and wait for its Done? can we sync up the main function other than waiting for wg?

  • @psydook
    @psydook 10 месяцев назад +4

    Go is Go-ing over my head xD i tried rust too but the learning curve is steep.

  • @butwhothehellknows
    @butwhothehellknows 10 месяцев назад +6

    Doin great babe ❤

  • @richienguyen2703
    @richienguyen2703 10 месяцев назад +1

    I have not learned Go but are WaitGroup and Channel like Thread pool and (un)bounded buffer in traditional terminologies?

    • @WebDevCody
      @WebDevCody  10 месяцев назад

      Sounds accurate i think? Ask ChatGPT

  • @wlockuz4467
    @wlockuz4467 10 месяцев назад

    Would be awesome if you could do a video on error handling in Go, I hear it has a really good primitives for it.

  • @mohammed.haydar
    @mohammed.haydar 10 месяцев назад +1

    I've a general question. Would you say that Go is a great place to place my time on compared to Rust or is it the opposite way around?
    * I don't have a specific goal yet by learning a new language.

    • @WebDevCody
      @WebDevCody  10 месяцев назад +1

      I’ve never used rust, but if you want to actually be productive and build something real, I’d pick go. If you just want to learn new stuff, rust seems fine

  • @wlockuz4467
    @wlockuz4467 10 месяцев назад

    If I had to interpret it with what I already know, can I say that this is similar to an event loop?

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

    Thank you

  • @vincentverweij1053
    @vincentverweij1053 10 месяцев назад

    One of your previous videos you mentioned that public methods in Go start with an uppercased character. Why is the make method with lowercase, isn't that a public method of some sort? It is not defined in your code, and still you can access it. Something totally different, or something missing the convention?

    • @WebDevCody
      @WebDevCody  10 месяцев назад +2

      That’s a built in global. No clue why they decided to make it lowercase

  • @codinginflow
    @codinginflow 10 месяцев назад

    I thought you were referring to Go RUclips channels lol

  • @constantinamundsen5487
    @constantinamundsen5487 2 месяца назад +1

    Goroutines do NOT run on different threads. This is concurrency, not parallelism

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

    Is it really a round robin?

  • @Mirislomovmirjalol
    @Mirislomovmirjalol 10 месяцев назад

    would be very interesting your opinion about fiber framework which gives typescript developers easily get start

  • @yassine-sa
    @yassine-sa 10 месяцев назад

    The wait group is almost exactly like semaphores

    • @qizhang5749
      @qizhang5749 10 месяцев назад +1

      You would use a buffered channel to implement semaphores in go. That way you can spin up as many goroutines or threads as you've allocated the buffered channel

  • @mohaamiin8767
    @mohaamiin8767 10 месяцев назад

    what do u think about golang backend frameworks which one do u want to learn or want to use

    • @WebDevCody
      @WebDevCody  10 месяцев назад

      idk I'm just using the built in net/http

    • @pepperdayjackpac4521
      @pepperdayjackpac4521 10 месяцев назад

      go is so great, u really dont need a framework

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

    What theme is that

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

      Bearded theme stained blue

  • @sangwoohan1177
    @sangwoohan1177 10 месяцев назад

    What’s so special (beyond the cleaner syntax) about Go channels versus queues in Python and Java?

    • @WebDevCody
      @WebDevCody  10 месяцев назад

      I think queues are more of a data structure in python and java, but channels is a communication method built into go (that kind of acts like a queue)

  • @coffeeintocode
    @coffeeintocode 10 месяцев назад

    You should touch on races as well. Go routines are amazing but they have sharp edges that hurt 😂

    • @WebDevCody
      @WebDevCody  10 месяцев назад

      as in two go routines accessing the same variable which requires a mutex? is that what you mean by races?

    • @qizhang5749
      @qizhang5749 10 месяцев назад +1

      There's alot of concurrent primitives to avoid race conditions like atomic.Value or atomic.Pointer and sync.Map and as you mentioned using mutex on shared resources. It's really not hard to avoid. Go also has a race flag that helps you detect potential race conditions

  • @siya.abc123
    @siya.abc123 10 месяцев назад +4

    Theo: GO channels suck!
    Cody: GO channels are awesome!

    • @WebDevCody
      @WebDevCody  10 месяцев назад

      oh, did he recently say channel suck?

    • @xpamamadeus
      @xpamamadeus 10 месяцев назад +1

      @@WebDevCody he didnt say they suck but they arguing about why they work way they do.
      like they are nil if u dont put anything into them etc...
      u are really fast learner and doing great in Go!

    • @qizhang5749
      @qizhang5749 10 месяцев назад

      He was just saying there were some weird behaviors with channels like closed channels return 0 values and panic when you write to closed channels. He said it would have made more sense for channels to return an error

  • @chanchal11
    @chanchal11 18 часов назад

    well explained😅

  • @thoriqadillah7780
    @thoriqadillah7780 10 месяцев назад +1

    Not only go i fast, but also really fast and great. Using express + typescript eating my machine. 8 gb of ram is barely capable of doing the development