I think criticism is all fine even by non-users. What I do not like is justifying to others who have no stake in project that why I used Go in place of lang of their choice.
Having used Go for some time now, and suspect that this attitude is a reflection of 'The Go Authors' and documentation.
Although it's described as a systems language, it glosses over many low level details. The 'atomic' package says 'These functions require great care to be used correctly.' In attempting to find out what care is required, I ultimately discovered that the authors couldn't agree on how to express how to define its operation.
When used for applications and running into shortcomings, the response is that it's not meant for that. The takeaway is that Go hits a spot between low-level systems programming and applications.
I have written Go intensively and less intensively over the course of last four years. Not surprisingly, most of the criticism are true.