Skip to content


Switch branches/tags

Latest commit


Failed to load latest commit information.

What's this

This repository is a list of articles that complain about golang's imperfection.


Seems like complaining about go's flaws is becoming a trend. Any newbie must have a chance to read all the go-is-bad arguments before they go too far. So here it is.

What it's for

This repo is not aimed to offend or insult someone (at least not more than each author does it in its article), especially golang itself, its authors and the community. It is for educational purpose only. Any contributor can have an absolutely different point of view.

I don't think anyone would deny that go has weaknesses: it certainly has. But how do you know, is it really a language design flaw or is it just you, doing something completely wrong? This list here to help you quickly answer the question.

How to use it

You're writing some code. And suddenly you understand you need something that language can't give you. You go here and check if you're the one with that issue or not. If it's a common issue, it'll be here. Then you decide what to do: choose another tool for your task or go find a better solution or a workaround.

The List

Reverse complaints index

It's a reverse complaints index, generated by (thanks to @capoferro)

Get involved

Feel free to add a PR with a new or old article you found on the internet. The structure is simple, just look at existing entries. Run make and check in the resulting along with your updated entries.json.

	"URL": "",
	"Author": "Kaushal Subedi",
	"Year":  2015,
		"no generics",
		"slow json parsing",
		"bad dependency management",
		"no subpackages"


  • merge complaints with the same ideas under the same names (make the complaints list smaller)
  • sort reverse index by the number of articles which have that complain (popular complains to the top)


A curated list of articles complaining that go (golang) isn't good enough







No releases published


No packages published