I've been working professionally in Go for almost a year now and I do agree Go is really pragmatic and is largely nice for just "getting stuff done".
However there is an absurd amount of nil checking which can be easy to miss and not always caught by the common linting tools.
Once you use Result/Option types and proper enums with pattern matching that is expressive and safe, it wears on you that Go does not have this.
However there is an absurd amount of nil checking which can be easy to miss and not always caught by the common linting tools. Once you use Result/Option types and proper enums with pattern matching that is expressive and safe, it wears on you that Go does not have this.