import ("github.com/go-sql-driver/mysql")
so it's standard to have the library files in the root directory. ├── cmd
│ └── binary-name
│ └── main.go (may subpackage for things like CLI porcelain, etc)
├── go.mod
└── internal
└── app.go (and subpackages, etc)To me go code looks like somebody vomitted stuff in the root dir and i have to wade through that every time. No namespacing. nothing
Other languages have fanbois but they didn't disparage and denigrate other communities to prove themselves.
And you're right, fanboys are in every language. But resorting to changing the argument by whataboutism is a bit reductive.
There’s an oft-repeated pattern where valid specific criticisms morph into broad criticism, which morphs into judgement, which breeds defensiveness, which feeds the criticism. Once you recognise this pattern, you see it everywhere.
I guess I qualify as a Go fanboi -- it is not perfect but gets the job done for a lot of us, sorry it doesn't work for you.
But back to your point about "vomit in the root dir", Go does have namespacing of sorts via packages, and the pattern you criticized is not the only way -- often just a simple main.go at the root bringing in packaged functionality.