I've asked myself the question about a year ago, and so far this is what I have done. Hopefully this will be helpful to someone who is starting to learn Go.
- Start with A Tour of Go, and after that build a small program to reflect everything you have learned, may be a quick sort algorithm.
- Watch the following video, Derek Banas is famous for "learn in one video" videos where he covers the subject topic in a lucid yet comprehensive fashion.
- After that, go and read the guides: How to Write Go Code, and Effective Go to get a grasp on writing idiomatic Go code, and to familiarise yourself with the "Go" conventions
- While you're at doing the above, it is also recommended to read the book "Introducing Go", by Caleb Doxsey. There is a freely available PDF on the internet: pepa.holla.cz/wp-content/uploads/2016/10/In..
- Doing all the above should make you sufficiently comfortable with writing, reading, and comprehending, Go code. Now you could go anywhere from here. Maybe the following place which teaches you "Applied Go"
There! I hope this will inspire some of you to give Go, a go! :D :D
Also, if there are any Go veterans here, please share the resources that one should look at, after going through this path. Thank you!
- Use this only if you have done everything listed here. github.com/avelino/awesome-go
- Follow Go Blog - blog.golang.org
- Advanced Stuffs - (Read and understand this) blog.golang.org/pipelines
This is a must. Effective Go is probably the best collection of information available for go.
Hashnode is a friendly and inclusive dev community.
Come jump on the bandwagon!
💬 Ask programming questions without being judged
🧠 Stay in the loop and grow your knowledge
🍕 More than 500K developers share programming wisdom here
❤️ Support the growing dev community!
Golang seems to be gaining in popularity, cool. But I have a few honest questions that aren't easy for me to find answers to.
Why would one want to learn Go?
What types of programs does one build with Go (web, cli, etc.)?
What makes Go a better language than say another language like Haskell, Python, Lua, Clojure, etc?