In many ways 2009 decided my future career. I was thirteen and had just scored my first goal in a competitive football match - a lovely one-two with the winger finished by a powerful strike into the top left corner. Sadly the talent scouts were missing that day. Whilst I was dreaming of Wembley, Go was announced to the world.
Go soon attracted a large following. People loved how simple it was, how optimised it was for web services and the tooling like gofmt. Every action has an equal and opposite reaction however, and so it was with Go. People hated how simple it was, how it was just for noddy REST APIs and the overzealous tooling.
In the past fifteen years many criticisms of, and far more rants about Go, have been written. What interests me is the idea that Go is badly designed. This is probably most famously put forward by two articles - I Want to Get Off Mr Golang's Wild Ride and Lies We Tell Ourselves to Keep Using Go - both by fasterthanlime. The latter goes further and says:
To me, a design is a plan or specification for something that fulfils a goal. For example, the goal of the BBC News website might be to inform users of the most relevant things that are going on in the world. The way they do that is by writing news articles, ordering them based on location and importance. The nuclear missile speeding towards me trumps the cat stuck up a tree.