My initial impressions back in 2013 when I started using Go was that it's development environment was annoyingly opinionated (the GOPROJECT env var crap, which is now gone). I was mainly using C/C++ at the time and for smaller tools python. Go with it's static binaries however looked like a very interesting python alternative, so I tried it anyway, and found a language that was very easy to dive into. Took me only a few days to really feel comfortable with it, which surprised me a bit.<p>My main take-aways, other than what is mentioned in the article:<p>* it was a lot easier and even a natural thing to dive into other people's and even the stdlib's code. I had been coding in C/C++ and the only time I did that was when I was tracking bugs. Now I just do it to figure out how things are done or even out of curiosity.<p>* libraries are source-code only. This is great for developers, and is a large reason for the previous point, but some businesses are hesitant towards this. One thing to always keep in mind here however is licensing.<p>* while not actively encouraged, the way you write Go pushes you towards writing reusable libraries, with just a small wrapper frontend. You see this in many larger projects you can easily integrate many in your own application.<p>* the standard library is fantastic, and contains a lot more than many expect, but clearly shows what the target audience is: operations and backend development.<p>* dependency management used to be garbage, this has massively improved. Not perfect, but better.<p>* Cross-compiling is a breeze. Coming from C/C++, this blew me away. Even when using CGo, which complicates things a bit, there is pretty good tooling around this.<p>* It's very opinionated, but most of the times, in my opinion, right.<p>It ended up replacing pretty much all my need for C/C++ code, except for embedded Arduino-like hobby stuff, and I haven't looked back. The main valid thing I've seen people complain about is the lack of a decent multi-platform GUI library, which I don't need, and is always a mess anyway. Web-frontends are a thing though, and goes hand in hand with Go being pretty damn good at backends and APIs.