Turning into a Gopher with Golang United School
Most of my coding journey has been with Python. I love the language and have been using it as my primary tool for the job. Fortunately, all three years of my professional experience have also required me to write Python code which at times becomes a bit boring.
Also knowing only one tool to solve your problem sometimes feels like you are using a hammer for all your tasks.
If the only tool you have is a hammer, you tend to see every problem as a nail. – Abraham Maslow
So on the lookout for adding a tool to my utility belt for my backend tasks, I set out to find a new programming language that I can replace at times with Python.
I had stumbled upon The Go Programming Language some two years back. But could not effectively pick it up due to my unstructured learning approach and when I stumbled upon the Golang United School it was a no-brainer for me to register.
I picked up Python in a very naive way jumping from one book to another and it took me a lot of time to even get basics straight because I was overwhelmed very quickly. So to not make the same mistake when learning Go, the course seems like the right choice.
The Course Overview
The course is divided into two phases:
- The first phase is an individual phase divided into 11 weeks with one lecture per week covering Go essentials and using Go to work with databases, writing simple web servers, and concurrent programs. The good thing is that they have built a small platform where you submit assignments after each lecture. The platform has a very typical grading system, submit the solution and it evaluates your solution on some pre-existing test cases in the system.
- The second phase is more of a team-based project phase and this phase requires you to pass phase one.
You can get a more detailed overview of the course on the program page.
The Plan Ahead
✅ Finish the course: To me, the course is a bit slow which is best as I can take it up easily with my current job and not miss assignments.
✅ Finish the complementing book: With the course, I am picking up Learning Go by Jon Bodner. The book's content seems like a good compliment to the course.
✅ Build Stuff with Go: Also not sure how much hands-on the assignments(as of now I have only finished one) would be in the course so as a final challenge to myself I am planning to write a clone of when: a timezone utility for the command line by Armin Ronacher. When is written in Rust so I would write it in Go.
Phase 1 – Progress
I am also planning to blog about the whole progress I make every week with the course. (So the list below would be updated with separate weekly progress blog posts as I move ahead in the course.)
* Week 0: Introduction