The jading goes much deeper than 12 hour days and "culture", in my opinion.
It's "easy" to get stuff done if you have no strong feeling of responsibility for the longevity of the things you're working on, or if you've never experienced the pain that comes with this lack of planning/implementation. The first 90% is easy, but the last 10% is what makes things stable, performant, maintainable, deployable and secure (not advocating for doing this last; just saying it's easy to ignore).
It's also easy to be excited about things when you['re naïve enough to] expect them to work "properly". People who've been doing this for a long time recognize that it's really rare that software Just Works™, and for that reason, things need to be architected to make room for failure. Building things without an acceptable failure mode is super fun until it fails, and then it's even worse than not doing it in the first place.
Doing stuff right takes a long time and is hard. It's truly satisfying to nail it, but it's certainly not always fun/exciting.
It's "easy" to get stuff done if you have no strong feeling of responsibility for the longevity of the things you're working on, or if you've never experienced the pain that comes with this lack of planning/implementation. The first 90% is easy, but the last 10% is what makes things stable, performant, maintainable, deployable and secure (not advocating for doing this last; just saying it's easy to ignore).
It's also easy to be excited about things when you['re naïve enough to] expect them to work "properly". People who've been doing this for a long time recognize that it's really rare that software Just Works™, and for that reason, things need to be architected to make room for failure. Building things without an acceptable failure mode is super fun until it fails, and then it's even worse than not doing it in the first place.
Doing stuff right takes a long time and is hard. It's truly satisfying to nail it, but it's certainly not always fun/exciting.