DEV Community

Cover image for 📚 How I am Learning Go
Luis Gamarra Jimenez
Luis Gamarra Jimenez

Posted on

📚 How I am Learning Go

#go
fmt.Println("Hello, Go!")

One of my favorite things to do my senior year in college was to attend hackathons. In one of those hackathons, I needed to build a web service that can handle HTTP requests. At the end of that weekend, I learned how to use AWS Lambda.

Random thought 💭: Man, I miss those free AWS credits from MLH!

Fast forwarding almost two years, I have gotten to work with many AWS services. Through that process I have developed a passion for building tools and infrastructure. While learning about DevOps, I came cross Go and I was quickly intrigued. That now leads to this post.

After many weeks of putting it off, this week I decided to start learning Go. First, I started reading the book The Go Programming Language by Alan Donovan and Brian Kernighan. The first couple of chapters gave me a great introduction to the language but mid-way through chapter 3, I realized that this is not a book to get me started quickly. So instead, I turned to Go in Action by William Kennedy, Brian Ketelsen, and Erik St. Martin. This book has been a quick read and has given me a high level introduction to Go (currently reading chapter 6 on concurrency). I have enjoyed it very much!

To put into practice what I have learned so far, I am solving problems on Leetcode. I have found this approach has helped me get familiar with built-in types and packages. Through this, I realized that I needed to understand pointers better (a post on that coming soon). So far this have been a fun and challenging approach.

My direction going forward is to finish reading the "Go in Action" book and start working on projects, which I am noting down as random ideas come up.

Feel free to comment on ways that you have approached learning Go or any other programming language and project ideas you recommend!

Cover image by Maria Letta from https://github.com/MariaLetta/free-gophers-pack

Top comments (3)

Collapse
 
hditano profile image
hditano

Great Article Luis!.
I tried a few times to get into LeetCode and clearly is way to advanced for me at least.
Just began to learn programming in c#. What do you advice to me to alternatives to Leetcode??.

Thx!

Collapse
 
amazingpapaya4 profile image
TK

try out codewars, hacker rank, codeforces or atcoder. Good luck :)

Collapse
 
_luisgamarra profile image
Luis Gamarra Jimenez • Edited

@hditano I've personally always used Leetcode. There are easy problems you can start with. If you are struggling, most problems have solutions and discussion boards people contribute to. Good luck!