Caleb Doxsey- An Introduction to Programming in Go
Go (Golang) is an open source programming language that makes it easy to build simple, reliable, and efficient software. I first started using Go through my work at DigitasLBi. My department adopted this language as one of our tech stacks for the following reasons:
- It’s open source (i.e. free) and intended to be simple yet expressive.
- It’s intended to be a good middleware layer to provide for both quick one-off applications as well as large collaborative code bases.
- It’s a static simple language, which allows for static analysis tooling and fast compilation.
- It can easily be compiled across multiple platforms, which is important for us since we host several different commercial and open source operating systems.
- It’s based around composition instead of OOP inheritance, which avoids a whole class of issues. There’s no type casting hell. Things are either a type or not.
- Objects and functionality can easily be combined. Structs provide simple blue-prints. Interfaces provide a lightweight polymorphism without complicating things too much.
- Concurrency is built in through Go routines and channels, which are a simple and efficient means to run multiple executions at once.
My aim in reading this book and completing the accompanying exercises was to gain a thorough understanding on the fundamentals of the Go programming language.
100% - completed 01/27/16.
View my code on GitHub
I'm a senior data engineer working to advance data-driven cultures by wrangling disparate data sources and empowering end users to uncover key insights that tell a bigger story. LEARN MORE >>
comments powered by Disqus