Why You Should Learn Go

Поделиться
HTML-код
  • Опубликовано: 27 мар 2024
  • video notes/article
    joebulfer.com/Golang
    langauge benchmarking
    joebulfer.com/Language+Benchm...
    language popularity history
    promptier.github.io/website/u...
    data is beautiful popularity history
    • Most Popular Programmi...
    pokemon game repo
    github.com/Joe-Bulfer/molemon
    #computerscience #software #softwareengineer #programmer #programming #golang #rustlang #htmx #leetcode #softwaredeveloper #reactjs #backenddeveloper #faang #progra
  • НаукаНаука

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

  • @JohnBrewerly
    @JohnBrewerly Месяц назад +42

    It's because we spend way more time reading code than writing it. Way way more

    • @joebulfer
      @joebulfer  Месяц назад +7

      In my internship I found this to be true. We spent a lot of time refactoring typescript written by a previous intern who left.

    • @vitalyl1327
      @vitalyl1327 Месяц назад +3

      And golang is far too verbose to be easily readable.

    • @fsharplove
      @fsharplove Месяц назад

      @@vitalyl1327 Java was the king of verbosity back in the days, 😉.
      if foo != nil does not make Go looks modern.

    • @frien_d
      @frien_d 23 дня назад

      and the following intern rewrote your code?

  • @_zetrax
    @_zetrax Месяц назад +4

    Just started using golang and I like the minimalist nature of go, but old habits are hard to get over

  • @mohammadalaaelghamry8010
    @mohammadalaaelghamry8010 Месяц назад

    Great video, lots of good insights and history. Thank you.

  • @90chiellini
    @90chiellini Месяц назад +1

    Great info!

  • @luqmandv
    @luqmandv Месяц назад

    Great insights, keep it up 👍

  • @tru2thastyle
    @tru2thastyle 11 дней назад

    Go is simple and fast, as a result making it extremely productive! That's all I could ask for in a language.

  • @user-zg2bx4oz2p
    @user-zg2bx4oz2p Месяц назад +26

    java still has 100 times more jobs then go

    • @richcaputo2929
      @richcaputo2929 Месяц назад +9

      If you think about jobs in terms of language you’re doing it wrong

    • @user-zg2bx4oz2p
      @user-zg2bx4oz2p Месяц назад

      @@richcaputo2929 90% if java jobs are backend webapp springboot, other languages might have more of an issue with this, go has little to no jobs for it half of them are probably devops

    • @user-zg2bx4oz2p
      @user-zg2bx4oz2p Месяц назад

      @@richcaputo2929 i think you really have to think about it as languages and their ecosystem, for example java springboot and c# .Net even tho the language is almost identical i don't see many developers work on both, beacuse the marketshare is big, does the same thing and the ecosystem takes time to learn, not like you can just pick another language and be as fast takes a long time

    • @manofacertainrage856
      @manofacertainrage856 Месяц назад +12

      @@richcaputo2929 You have to be proficient with at least one language that people will pay you for.

    • @joebulfer
      @joebulfer  Месяц назад

      ​@@richcaputo2929This is correct for several reasons. One of them being that is an extrinsic financial reward that is transient.

  • @vaibhavsingh8122
    @vaibhavsingh8122 Месяц назад +2

    The shift from front end render engine was promoted because of google's new SEO standard

    • @joebulfer
      @joebulfer  Месяц назад +1

      Because pre rendered HTML is easier for Google to crawl in order list accurately as opposed to dynamic content Javascript?

  • @sheriffderek
    @sheriffderek Месяц назад

    This was an enjoyable chat!

  • @jazzochannel
    @jazzochannel Месяц назад

    what are you filming from? A gopro? just a webcam and a fisheye? I like it :)

  • @renanmonteirobarbosa8129
    @renanmonteirobarbosa8129 22 дня назад

    Go is a tool among many tools that you totally should learn. However, instead of trying to pick a pointless fight about which language is the best you should learn concepts like system architecture, Computation paradigms, and so on ... Because in the end you have several tools and you want to know how and when to use each tool.

  • @maxmuster7003
    @maxmuster7003 Месяц назад +2

    I like the assembly programming language.

  • @NoahNobody
    @NoahNobody Месяц назад

    For me OOP provides a great paradigm for writing and maintaining large projects.

    • @joebulfer
      @joebulfer  Месяц назад +1

      I think it makes sense when a program gets large enough, I just don't like how some people must, perhaps naively, organize everything into a class. Early abstraction can sometimes get you in trouble and you find yourself over analyzing and designing components of a problem instead of solving the problem outright.

  • @Dabayare
    @Dabayare Месяц назад

    The rule is if Ur student. Just do industry languages like C# and Java. Once u get a stable job, try different things on the job n see where it takes u.

  • @fabricehategekimana5350
    @fabricehategekimana5350 Месяц назад +1

    For me Go and Rust are the best iterations of C (unlike C++, Java or C#) because they took a default ideology. I also think they implement the true essence of the OOP paradigm that Alan Key intended to create with Smalltalk (where the others failed)

    • @joebulfer
      @joebulfer  Месяц назад +1

      Rust implemented Alan Key's paradigm, or the others? Sorry.

    • @fabricehategekimana5350
      @fabricehategekimana5350 Месяц назад

      @@joebulfer I saw that Rust and go greatly implement Alan Key's paradigm (not 100% though) but the others where too focused in the "object" of OOP and didn't really implement it as it was ment to be (especially with the four pillars of OOP)

  • @bounceofffast
    @bounceofffast Месяц назад

    I wonder if you want to try Odin lang ( also similar to C ) to develop a simple game ... ?

    • @joebulfer
      @joebulfer  Месяц назад +1

      First time hearing about Odin. If I wanted to do game dev I'd probly do Godot for the sake of the game. For the sake learning Go I am developing in it.

    • @kshyr811
      @kshyr811 Месяц назад

      ​​@@joebulfer Godot is beatiful and quite easy to pick up, agree.
      Do you hold any opinions on using Go for gamedev? New to this, still trying to understand if GC is a big issue
      edit: I commented too fast 😅 thanks for mentioning "Golang Physics Engine" vid. I guess I'll try OpenGL bindings and just see for myself, really want to get into game engine development but don't want to invest into C++

    • @joebulfer
      @joebulfer  Месяц назад +1

      @@kshyr811Yeah Go is definitely not popular for Game dev. Rust seems to be the upcoming language in that space with engines like Bevvy and Veloren the most impressive game I've seen.

    • @tylerkropp4380
      @tylerkropp4380 Месяц назад

      @@kshyr811 Go doesn't have very good control over the threading, because it's all abstracted as goroutines. That can make it a bit harder to control latency.

  • @BookmarkMountain
    @BookmarkMountain Месяц назад +3

    I did 4 take home tests last year. All Python projects each with completely different tooling to achieve the same thing. The cognitive load with these languages is insufferable 🤢 I’ve pivoted to Swift/iOS not exactly Go but I do all my server work in Go

    • @joebulfer
      @joebulfer  Месяц назад +5

      My CS professor teaches us all the intricate details of Typescript and every lab has to fit everything into a class. Like he will create a class system with methods in order to fill an array of objects containing products with prices, names, brand etc. These products are displayed as HTML on a page and sorted. I just filled the array directly with objects avoiding the classes and it was half the code. Then I could focus on manipulating the actual DOM and displaying/sorting those products on the page.

  • @kellymoses8566
    @kellymoses8566 21 день назад +1

    Go is MUCH MUCH easier to learn than Rust.

  • @mariobroselli3642
    @mariobroselli3642 Месяц назад

    Still bad in comparison to Python for learning as a first language

    • @joebulfer
      @joebulfer  Месяц назад +2

      Why is that? Go is fairly simple syntax and probably has less keywords/built in functions than python due to its intentional minimal design.

    • @mariobroselli3642
      @mariobroselli3642 Месяц назад

      @@joebulfer in the book of Head First for Go it wasnt described as a suitable First language to learn

    • @joebulfer
      @joebulfer  Месяц назад

      @@mariobroselli3642Why? And what is the author's idea of a suitable language?

    • @mariobroselli3642
      @mariobroselli3642 Месяц назад

      @@joebulfer i have to Check but Python was for example introduced in the book "learning to Code" or a similar title and was intended as a first introduction. I wonder what they say in the Ruby book or the JS book.

    • @mariobroselli3642
      @mariobroselli3642 Месяц назад

      @@joebulfer Head First did Not Cover Lisp but universities Like to teach Racket or a functional lang First Like OcaML.

  • @seanknowles9985
    @seanknowles9985 Месяц назад +1

    Looks like Rust is climbing much quicker, probably going towards Rust than go. Even though I think Go is better, Zig might take the cake in 10 years time.

    • @joebulfer
      @joebulfer  Месяц назад +4

      It's important to note where a language is being adopted. If you look at Jetbrains survey you can see Rust is mostly hobbyist developers (or personal/side projects) while Go was used by developers at work. So it's not just a matter of total number of people using it, but whom. I would argue a language being adopted by actual businesses is more noteworthy than people's side projects.

  • @TON-vz3pe
    @TON-vz3pe Месяц назад

    I think one should never think one language is better over the other. You may say Go is better than Java, JS or Python. But there are even better languages better than Go. Rust is much better than Go in my opinion. But this kind of thinking is stupid. Java and Python hands down beats Rust and Go in terms of jobs. Ultimately, its about jobs amd usecase. Which is why we need to use the right tool for the job. These kinds of comparison are worthless in my opinion. Nice video btw.

    • @joebulfer
      @joebulfer  Месяц назад

      Your are right that certain languages are better for employability. Though I would say it doesn't really matter because any place will hire you if you have enough experience regardless of language. Once you've learned several, it takes little time to pick up a new one.

  • @thievingpanda
    @thievingpanda Месяц назад +1

    Subscribed. I prefer Python but everybody can have their own opinion!

    • @joebulfer
      @joebulfer  Месяц назад +1

      Python is great for beginners! Thanks for the sub

  • @cloudguru3018
    @cloudguru3018 27 дней назад

    Mojo is potentially next big thing.

  • @WofWca
    @WofWca Месяц назад +1

    11:25 go is good because you can use a different language instead of it XD

  • @kevinb1594
    @kevinb1594 Месяц назад

    Gonna have to write you off my man. Classifying JS as OOP... Saying the point is GO isnt performance and that its on par with C# / Java? No...

    • @_zetrax
      @_zetrax Месяц назад +1

      Ur not making sense

  • @radivojevasiljevic3145
    @radivojevasiljevic3145 21 день назад

    There are better languages.

  • @smnomad9276
    @smnomad9276 Месяц назад +1

    What the hell is this video quality? This will just make people not bother to even subscribe just quickly watch and leave.

    • @joebulfer
      @joebulfer  Месяц назад +2

      Can you still hear my voice and read the text? I accidently chose the LVR (low video resolution) from my gopro next time should be better.

    • @TokyoXtreme
      @TokyoXtreme Месяц назад

      @@joebulferNothing really wrong with the video quality; the audio is completely clear, which is all that really matters.

    • @mohammadalaaelghamry8010
      @mohammadalaaelghamry8010 Месяц назад

      @@joebulfer The video is great

  • @KevinArellano
    @KevinArellano Месяц назад +2

    "Why you should learn go"?
    To learn to hate and switch over to Rust XD

  • @YourMom-rg5jk
    @YourMom-rg5jk 24 дня назад

    i dont want to add a garbage collector to my programs

    • @joebulfer
      @joebulfer  23 дня назад

      Are you building high performance applications?

    • @YourMom-rg5jk
      @YourMom-rg5jk 21 день назад

      @@joebulfer if a process scheduler falls under high performance then yes

    • @YourMom-rg5jk
      @YourMom-rg5jk 21 день назад

      im just kinda having fun with you here though i get it lol