Starting with a Golang journey

I want to rekindle my interest in programming again, and this time I choose to go with Golang.

Roadmap (how to start)

The first thing that comes to mind is having a structured learning experience. this time instead of going to the classroom, I looked up the roadmap.sh m, I look up the roadmap.sh (https://roadmap.sh/golang)

I decided to start learning a few things from the go.dev tutorial here; this is going to be a non-linear learning method, considering it like the open world exploration, random pecking into the Golang as we make demo program, and test writing codes. Hence I directly jump into the intrinsic part of the Golang how to refer to the module, basic error handling, and function, variable declaration. I guess the rest would fall into its place as we start building some mini-application. The quick tour of Golang, help me to understand and appreciate the cleanliness of the language itself. (https://go.dev/tour/basics/11)

Tools and Editors (what to use)

  • thinking of working on the Linux machine, primary choice Fedora Linux, Gnome

  • tested with GoLand, JetBrains product to observe how it goes. Eventually, I decided that this is kind of similar experience if one already knows how to customise for the VSCode. Hence I go with Visual Studio Code.

  • The goland IDE experience

this is the visual code example

I have a feeling that JetBrains IDE is getting more and more like Visual Studio code. Perhaps behind the scenes, there is some kind of conspiracy for the cloud-based environment, cloud-native concept? (not sure, “shrug”). Nonetheless, I’m happy with the VS Code for now, given it offers me better flexibility and is kind of pocket-friendly at the moment.

Some ideas to build upon Golang

In order to make use of what Golang could offer, perhaps I could try with some cli, or TUI- terminal user interface, to build something that might be useful for me? Here’s some idea that pop into my mind.

  • using Golang to populate a database on MongoDB with some open-source self-hosted solutions information.

  • build something like a Multi-User Dungeon, in a text-based format?

  • contribute to the open-source project that’s written in Golang. Kubernetes, microservices related? example one: https://github.com/zeromicro/go-zero

  • study and learn tools in the CNCF Landscape. https://landscape.cncf.io/

Additional Inspiring content I found as I started on this article

Did you find this article valuable?

Support Divineforge Technology Enterprise by becoming a sponsor. Any amount is appreciated!