DEV Community

Cover image for Part 1: Background and learning golang
Jonathan Harrison
Jonathan Harrison

Posted on

Part 1: Background and learning golang

The cover image is from MariaLetta/free-gophers-pack

This post is part of a series detailing my journey with golang from learning the language to entering the DigitalOcean App Platform Hackathon.

The app I built can be found on GitHub.

Part 1 details:

  • How I came up with the project idea
  • How I learnt golang

Background

In August 2020, I wanted to start a new side project and learn something new.

At the top of my backlog was golang.

In the following months, I completed online courses and read blogs, guides, language specification etc to get familiar with the language.

At the beginning of December, I thought it was about time I built something.

At the same time, my youngest brother who had missed getting a Xbox Series X on the UK launch day decided that he wanted one. What transpired was every time a UK retailer potentially had a re-stock, my two brothers and I would be checking their website throughout the day to try buy one; only to fail every time.

Then I saw this DEV post. This inspired me to build an app in golang that would check various UK retailers for a Xbox Series X and notify my brothers and I when available.

Lastly I saw that DigitalOcean were hosting a Hackathon. This provided an opportunity to also get experience working with a cloud platform I hadn't used before and more importantly, gave me a deadline to work to.

This series details the journey of building the stock-checker app:

  • Part 1 - Learning golang (this one)
  • Part 2 - Development environment
  • Part 3 - Developing the stock-checker app
  • Part 4 - Deploying to DigitalOcean

Learning golang

How I tend to learn something new is by trying to expose myself to as much information as possible from a variety of sources, even if I can't remember it all.

This is so that when I start building something I do it the right way and also, it gives me mental "hints" to further lookup things during development.

With that, here are the resources I used to learn golang.

Online courses

Documentation

golang.org

Particular areas of golang.org:

Go Blog

The Go Blog has many posts going into depth about aspects of the language.

golang/go GitHub

The GitHub Wiki contains many resources for every aspect of programming with golang from learning, tools and libraries.

go.dev

go.dev details the different use cases of golang such as cloud and network services as well as companies using it for that purpose and libraries/frameworks to consider.

Next

That's it for this post.

In part 2, I will talk about my development environment.

Top comments (0)