It is my observation that if you use a shit ton of abstractions, wrapper libraries, frameworks, so on, your software gets crappier. This is from experience, too. Whereas, if you build something from scratch, that is, reduce reliance on abstractions, the software quality in the long run is more stable. Thoughts?
I want to learn Go but I need to visualize a real-world use case. Why should I use it instead of X, Y or Z. What do you use it for? Please supply examples.