The ups and downs of porting 50k lines of C++ to Go (2015)
Switched from Python to Go about 2 years ago. If you need to build performant APIs with a small team there is nothing that comes close. You get the productivity of something like Python with the performance of C++. Or at least very close to it in both cases. (<a href="https://getstream.io/blog/switched-python-go/" rel="nofollow">https://getstream.io/blog/switched-python-go/</a>)<p>The lack of generics hasn't bothered me so far. You just find different solutions to the problem. Composition, interfaces, or if all else fails an empty interface{}. It's rare to really not be able to work around it. It does make it near impossible to build reusable and performant data structures in Go though. (say that you want to build your own heap or list, hashtable etc.) So that's annoying, but something that you rarely run into.<p>Bigger issue is that GO modules are still not ready for production since the ecosystem didn't catch up: <a href="https://github.com/golang/go/issues/24661" rel="nofollow">https://github.com/golang/go/issues/24661</a>