Experience • Go

Go was the first compiled, statically-typed programming language I learnt and it was truly a challenge coming from interpreted, dynamically-typed languages. Ok well, not entirely: leading up to my exploration of the language, I had been wanting some form of static typing in my projects and had basic experience with TypeScript and Crystal but nothing that gave me a deep understanding of the world that is static typing. I had learned more through JSDoc typings than anything else, but it was time for a change, and Go was that change.

My memories of venturing into the Go world are blurry with hints of frustration, to say the least. Syntatically the language was very simple and (arguably) appealing which made it easy to learn, but the niceties stop around there. Learning the package and project structure, type safety, visibility rules and even the toolchain were quite complicated. I distinctly remember being stuck on how to start a new Go project multiple times because I forgot how go mod init works.

Note: This page is still being written, check back in a few days.