I spent the next 30 minutes trying to figure out how to add printline debugging to the standard library. I saw the precise line of code it was failing on, so I added some logging code above it to print out more info. Nothing happened. I tried to rebuild the file. There was no obvious way to do this. I googled for "golang recompile standard library." There was no clear, simple answer. I seemed to be expected to read all of the documentation in order to do this seemingly-simple thing. I went on Freenode and asked how to do it. Crickets.
I was being intellectually lazy, a cardinal sin. Obviously, the solution was to read the documentation, learn about GOPATH, learn how and why the source code was laid out the way it was, understand how to make my own package, then try to figure out how to make changes to existing packages.
But it's a step backwards. I'm staring at the code. I made changes to it. Why does it require a magical incantation to make those changes have an effect? Why can't it detect that the code changed, and do whatever's necessary to apply those changes? Or at least let me type "go make zlib.go" and be done with it? Yeah, "make" isn't a valid command. I'm supposed to "build" a package. But I'm not trying to build a package. I'm trying to run someone's freshly-cloned Go project.
The whole thing made me feel dumb and outdated.