Graceful Server Stop and Restart in Go

A blog post from 2014 explains quite nicely how one can achieve graceful server stops and restarts in Go, that is, how to implement a server process that allows running requests to finish before exiting the application. We will also want to deploy new binaries without interrupting running requests and without any noticeable server downtime. There are tools for this and in the past, I’ve used a combination of manners and goagain, along with some additional code on my end. Read more...

Find Similar Images with Duplo

I’ve released a Go library Github: Duplo. The library can be used to detect image duplicates or to find similars in a set of images. It is an implementation of Fast Multiresolution Image Querying by Jacobs et al. It works surprisingly well if you want to find duplicate images which may have been modified slightly (e.g. colour correction, different compression / file format, watermarks). Applications may include: Recognize copyright violations Save disk space by detecting and removing duplicate images Search for images by similarity The images themselves are not stored in the data structure. Read more...

My Talk at the Golang User Group Berlin Meetup

I gave a talk at Berlin’s Golang User Group (which is supposedly the biggest one in Europe at the moment). It was a quick overview of the duplicate image detection software I wrote in Go for Stock Performer. You can find the slides here. I will put the code on my Github profile very soon. There will also be a more extensive blog post about it.