UPDATE: Since writing these over 3 years ago I have since learned a lot more about GoLang and its type system. As such I now realize that GoLang has type aliases to address the need that I was writing an experience report about. ORIGINAL POST: One of the niftier aspects of programming in Go is …
Go’s unfortunate err != nil idiom
All-in-all, I am a big proponent of the errors-as-values approach to error handling in Go. I definitely agree with the general wisdom of handling errors when and where they occur, and not delegating them using exceptions. So this post is not about how many people find needed to handle errors through code an annoyance. To …
How to explicitly declare that a struct implements an interface in Go
One of the things I love about Go and find to be a strong supporter of serendipitous interface standardization is Go’s implicitly declared interfaces. However, there are times you really, really want to explicitly declare an interface, such as when you have a larger interface and you want your IDE and/or the compiler to tell …
Continue reading “How to explicitly declare that a struct implements an interface in Go”
In defense of “Syntactic Sugar”
One of my biggest career pet peeves as a software developer is when I see other developers derisively write “Well, that is just syntactic sugar“ in response to a proposal for improving a programming language. So today I want to write in defense of this often maligned underdog, and explain why syntactic sugar not only …
What is Software Engineering?
“Software engineering is what happens to programming when you add time, and other programmers.” — @_rsc Tweeted by @davecheney