They're easier to pick up and support the idea of plug and play programmers that is very popular among managers.
Productive as a consequence of the above, maybe; in that more code is written in Go; but certainly not as a quality of the language.
And there's numbness and denial involved. I've been writing Go full time for about a year now at work. Every time I use another language I'm reminded of how much time and energy I'm wasting.
People change jobs and you need to choose a language you can either easily hire for or train someone up in. Go fits the second requirement very well, and as more people learn it, starts hitting on the first. I introduced Go at two different companies to great success not because it's my favorite language (I would much prefer Rust, Haskell, Clojure, etc) but in reality, in my role as a leader of a tech org, hiring smart people and getting giving them the means to be productive as soon as possible for however long they want to work with us is key.
It seems to me to be the wrong trade
Separately, I don’t buy the notion that a language that has a bit more boilerplate is less productive than one with virtually none.
From a coders perspective, using sub-optimal tools and churning out boilerplate day in and day out makes the difference between keeping a job and looking elsewhere.
Which turns it into a managers problem, because if your developers are not happy, you won't be either in the long run.
There are diminishing returns on programming features I guess. At a certain level of complexity the difficulty in learning the feature will kill adoption despite the usefulness of the feature - e.g. monads; after months I think I sort of get it ... sort of.
> Every time I use another language I'm reminded of how much time and energy I'm wasting.
Wasting writing Go or wasting writing in the other language? Sorry, just clarifying. I really can't tell which you meant.
Manual loop implementations of basic functional concepts, manual error propagation, finding ways around arbitrary limitations in the name of simplicity, the list goes on and on.
JavaScript, PHP and C are also widely successful, despite their design flaws.
Technical excellence doesn't driver adoption, unfortunely.
The thing is that productivity of a language depends on many factors, including many softer ones that are typically forgotten or discounted by language geeks. It also depends on the target audience. In some important ways, PHP was/is brilliant.
A technically brilliant language should be able to recognize the adoption driver mechanisms and build the necessary infrastructure. The point of a language is not (only) to build a theoretically sound framework, but to be an ergonomic vehicle for expression of ideas.