I could really go on about this at length but my advice is:
- keep things simple. Avoid complexity at all costs.
- keep it fast - fast to compile, fast to run, fast to change
- if you don’t Like something, change it.
I stopped using frameworks, stopped using heavyweight runtimes, switched to a language that built and ran faster, and kicked out everything I didn’t like.
I can now focus on the actual problems I’m trying to solve instead of trying to work out how my problems fit into someone else’s idea of how to do things.
I went the opposite route and moved to a language that, while not the most performant, championed the idea of developer happiness (Ruby).
> if you don’t Like something, change it.
This is also super important, and a good point make. Don't ever choose a technology for the sake of looking good; choose something you enjoy working with.
yep! but it's not really about Go, it's about finding something that suits my groove. I don't for a moment think Go is the best language (I suspect Rust would be more my thing), but as an ex-Java dev, I'm tired of fighting the tools, and that's something you hear quite often with Rust.
So I compromised by trying Go, and my productivity has been really great. And productivity seems to me to be the thing that is most important about making me happy.
(actually I suspect most people would say they love productivity, but not everyone seems to know how to achieve it).
I stopped using frameworks, stopped using heavyweight runtimes, switched to a language that built and ran faster, and kicked out everything I didn’t like.
I can now focus on the actual problems I’m trying to solve instead of trying to work out how my problems fit into someone else’s idea of how to do things.
Just my 0.01c. Good luck.