- I have to source GOPATH in my rc files? Annoying.
- File paths are network URI's? Ugly.
- I have to deal with every err != nil? Verbose.
But over time I've grown to love go more than almost any language (python is still bae, especially with type hints, and even then, it's close).
- dependency pathing is a pain in most other languages. Singular source of truth is great (I've had virtualenvs leak and cmake do bizarre things when multiple libs are on the file tree)
- host/paths are file/paths. I love this pattern now. It's just so obvious and natural.
- ok the err != nil still drives me nuts. But it drives me to write things in a way where I don't need to deal with errors as much. Reduces fractal complexity and paths through the code. It also forces "the buck stops here" sort of pattern where you have some atrium which is resiliant and is where most errors bubble up to