I have been writing Go daily at work for about a year and a half. It is now my primary language, and my default choice for any new projects, the way Python used to be. Before that, I come from a background in functional programming (and still find functional programming to be my favorite paradigm).<p>It seems to me that there are two disjoint sets of people: those who write Go regularly, and those who complain about generics in Go.<p>Of course, you can interpret this either way you wish!<p>1) Perhaps those latter people would like Go despite its lack of generics if they only bothered to get familiar with idiomatic Go.<p>2) Perhaps the lack of generics is precisely what prevents them from writing Go on a daily basis.<p>But as someone who actually does write Go on a daily basis, and has for a year and a half, I can honestly say that I've only ever missed them a handful of times. And I say this as a functional programmer who is used to being able to call "map" everywhere.<p>In fact, if I had to prioritize the things that I wish I could change about Go, generics would not be in the top three - not even in the top five[0]. They're just really something that I don't miss anymore.<p>[0] I could tell you what they are, but that'd be making it too easy - give Go a shot, long enough to realize you really don't need generics as much as you think you do, and then you'll probably have a good idea of the good, bad, and ugly when it comes to Go.