Learn Go by Building a Bus Service
Go is a pragmatic language. It’s about getting stuff done. This allows for a more direct coding style that I personally find to be a relief from the “classic” object-oriented coding styles with their proliferation of class hierarchies. With Go, we can still take advantage of many relevant design patterns without getting distracted by having to write getters, setters, factory classes and complex class hierarchies.
Design patterns are fundamentally just recipes - or best practices - for how to approach certain classes of problems.
[Read More]