zet

rwxrob.tv: !go !golang

💻💨 Go is the best general purpose modern language. You can do stuff quickly and safely. The most significant software of our time has been written in Go from cloud to malware. Designed by tech-gods Thompson/Pike/Griesemer (from UNIX, C, Unicode fame) it meets the real needs of Google and other major enterprises. It was specifically designed to replace Java/Python/C/C++.

Go was specifically created to handle most high-performance utilitarian software development needs at Google. Forged in the white-hot fires of enterprise to slay many very real problems, it’s no surprise this light, fast, and solid tool is a popular and ideal choice for most back-end work. Go should be considered required learning by any serious technologist because of its efficiency, ubiquity, versatility, and sustainability which is why it is the most significant language of the DevOps movement and in 2017 Forbes called it one of the “two highest paid languages you maybe never have heard of,”1 three years after TJ Holowaychuk switched to Go from Node2.

It is trivial to make robust, cross-compiled tools and applications with Go, which includes robust encryption, web-client and server code, and more in its standard library, which may be why there was a 2000% increase in Go malware in 20213. Hackers absolutely love Go for all the right reasons, which you’ll have to research for yourself.

Now that Go fully supports generics people are flocking to it even more. I’m porting all my bash scripts into a !bonzai z monolith that will run on any operating system supported by Go.

Learning Go

Learning Go is one of the most rewarding activities you can pursue. The best way to learn it is to start writing code in it, even the simplest code.

When it comes to books, courses, and other materials there is no real solid leader. Perhaps the best approach is to simply read the documentation created by the Go team itself. Consider reading these in the order suggested by the Go team:

  1. The Go Programming Language Specification https://golang.org/ref/spec
  2. Tour of Go
  3. How to Write Go Code https://golang.org/doc/code.html
  4. Effective Go https://golang.org/doc/effective_go.html

Other Go Resources

Here’s a list of every Go resource I know about. There are a ton of mediocre resource on how to learn Go. Maybe you’ll find something good among them:

  1. Forbes Magazine. https://www.forbes.com/sites/laurencebradford/2017/09/22/the-2-highest-paying-programming-languages-you-maybe-never-heard-of 

  2. Holowaychuk, TJ. “Farewell to Node” (2019). https://medium.com/code-adventures/farewell-node-js-4ba9e7f3e52b 

  3. “2000% increase in Go malware in 2021” (2022). https://www.zdnet.com/article/go-malware-is-now-common-having-been-adopted-by-both-apts-and-e-crime-groups/