As a developer, I value my quality of life. I like to be as productive as possible, with as little frustration as possible.
I don't find challenging problems frustrating.
I find unnecessary problems frustrating.
What industries, tools, and languages are the least frustrating to work in?
Do you believe "modern" programming is more mentally ergonomic? Web development, dynamically typed languages, IDEs, co-pilot, etc.
Or do you take a more traditional and minimalistic approach?
I understand there will always be an element of frustration and difficulty in any given field, but I don't think the life of a developer has to be as low quality as it is currently.
I love the simplicity of it. Some think this results in overly verbose implementations or error checking, but I don't mind that. I feel like it fits in really well with my way of thinking when I write code. It makes me think about what I'm trying to do before I do it in a way that not all other languages do _quite_ as smoothly and intuitively. It just jives naturally with my way of thinking when I write it.
I also love the test tooling it comes with - it's one of my favorite parts. Not writing tests in Go just seems like a genuine waste. They are a pleasure to write and run. In some languages, writing tests seems like a chore you have to do because you know it's good practice. In Go, I feel like writing the tests as I write the implementation actually helps me produce better code from the beginning. I know that this is not exclusive to Go. I do write tests as I implement in other languages as well and find them useful, but something about the Go way just clicks with me really nicely.