Software Engineering

Writing good code is hard. This tag includes posts about concepts and best practices in Software Engineering.

Go Patterns: Retries

by

When working on microservices or any network-related code retries are a must. Go has a few neat features that help with creating an easy-to-use retry library.

Go Patterns: Pipelines

by

Sometimes, when reviewing code, you come across a huge spaghetti of sadness. You’d love to refactor it, but it is just a list of steps that need to be executed in order.

Go Patterns: Elegant Parallel Queues

by

Processing items in a queue in parallel is one of the trickier subjects in programming. You don’t want to overload your systems, but you also want to maximize speed. Go has some unique tools to deal with it.

Go Patterns: Embedding Static Files

by

Go creates a single, statically linked binary. This makes it extremely easy to distribute applications. How do we add static resources, such as text files, images, and the likes, to our application without losing that advantage?

Go Patterns: Object-Oriented Programming

by

On the surface, Go doesn’t look like an object-oriented language. However, if we look deeper, OOP is not only possible, but an effective way to organize code.

20,000 lines under the Go-cean

by

Last year I wrote two blog posts about the programming language Go. This is the follow-up after having written over 20,000 lines of Go code.

TCP connections can break silently

by

Are you thinking of using Microservices? Here’s something you may not know: TCP connections can break entirely silently.

Mockito is Bad for Your Code

by

Mockito, a tool to make mocking easy, is actively encouraging test code. Here’s why.

Go is a terrible language

by

Go certainly caught a lot of attention. Let’s look at the bad parts!