His example code is indeed not very instructive. But the problem he is
getting is easily reproduced in a clean example, as demonstrated in
the issue report on github. That one does do error checking.
I encountered this problem with and without the use of shaders. So
whether the shader sources are correct or not, does not have any
bearing on the problem at hand.
As for 'GetError': it is simply a binding for glGetError(). The 'gl'
package is not intended to be high level. This means it's functions
may appear a bit odd to someone not familiar with the OpenGL api. We
have the `go-gl/glh`package to provide higher-level, Go-centric
abstractions for various bits. Including `glh.CheckGLError` which does
what you suggested.
I do agree on the documentation though, and that is being worked on at