Golang interfaces, a pragmatic explanation for the programmer

I’m still in the process of learning golang the right way. Yes I already wrote some projects with the Go language (here and here), but I like to understand the real meaning of techniques when using them. One of what is said to be the most amazing features of Go is interfaces. Here’s what the official golang docs has to say about it: Interfaces in Go provide a way to specify the behavior of an object: if something can do this, then it can be used here.