Go tends to be underrated simply because its syntax is straightforward. A lot of people argue that once software engineering knowledge has accumulated, a language should adopt newer notations to reflect it. But Go is a language designed not to fail. It deliberately avoids flashy features and just combines the approaches that have already proven to work. It comes down to a different definition of what “beautiful” means.