5 posts

Don’t just check errors, handle them gracefully

Best option to use is an opaque error strategy that requires the least coupling between code and caller. The caller only knows an error happened, but they can’t see inside the error.…


5 things Rob Pike attributes Go’s success to

Writing a formal specification of the language. Making Go attractive for app developers to use. Establishing a strong open-source community.…


Security assessment techniques for Go projects

Static analysis tools like gosec, go-vet, and staticcheck can help catch low hanging fruits not included in compiler errors & warnings. Dynamic analysis techniques like fuzzing, property testing & fault injection should be used for deeper results.…


Most common mistakes I’ve seen in Go projects

Unknown enum value. Relying too much on pointers for speed. Misunderstanding context. Not using the -race option.…


Why Go and not Rust?

Some of Go’s characteristics make it a fantastic fit for developing enterprise software. Enterprise software development is all about scale & dealing with complexity and Go is all about suppressing complexity at scale.…