I think the bit that got me around GOPATH was last time I'd written Go, that was the only way. Then I fired up Go again, v1.12 and decided to take advantage of a Go module for a new project, which I naturally put beside my existing Go code. And then I got to learn about the settings for GO111MODULE.
Having the build tools a core part of your language itself is both a strength and a weakness for Go, I think.
Having the build tools a core part of your language itself is both a strength and a weakness for Go, I think.