Go Interfaces - why I love Go
The big selling point of Go is its focus on concurrency, and its simplicity. Go delivers on those concepts extremely well. There’s no doubt that the designers of Go have done a great job in… »
The big selling point of Go is its focus on concurrency, and its simplicity. Go delivers on those concepts extremely well. There’s no doubt that the designers of Go have done a great job in… »
At a recent job interview I was asked to create an application that manipulated images, and allowed the user to move forward and backward through time, such that they could undo and redo changes to… »
One of the recurring questions people new to Go ask is, how to lay a project out on disk, that is, they want to know how to arrange the files and directories in their project… »
Before I embarked on my Go development career, I was a (not very good) Python developer. Unit testing was mandated at the company I worked at, but there was no (at that time) really simple… »
The Go programming language lends itself well to the SOLID programming principles. They go so well together that it should be a prerequisite that those new to Go also learn SOLID as part of their… »
A common problem that Go developers come up against is how to process interfaces. They typically find themselves in a situation where their code has received an interface{} and it’s not clear that the interface… »
Such a weird title! Applications do, however, require the ability to have one thread block forever, specifically the main thread. As long as it stays blocked, it can never exit, as long as it never… »
Goroutines are touted for being lightweight and cheap, in terms of memory usage. Let’s take a look at the argument and see if it withstands scrutiny. Before we look at Goroutine memory usage itself, we… »
Why is knowing the internals of the Go runtime so important? For that matter why is knowing Computer Science from the Silicon on up so important? First and foremost, knowing what’s going on underneath allows… »
One of the Go language’s selling points is its Goroutines. Goroutines are threads that are manufactured and managed in user-space. Goroutines are similar to Green Threads, but there is no need for a direct relationship… »
Threading in programming has a long history. A number of patterns have evolved over time, to help programmers share and control resources between threads. The Go Programming language implements a number of the classical patterns,… »