I think the ephemeral nature of software really plays poorly with the artificial deadlines, and the artificial importance of some projects in general.
Eventually you recognize the pattern, and there's no logical way to justify it, so it's harder to motivate yourself. You know the deadline isn't real, and you know the software will be rewritten next year with some new technology. You may even be rewriting last years right now.
Tooling churn hurts here as well, because eventually after enough iterations, new tools are just in the way of getting real work done. You know it's not gaining you anything by putting in the effort to learn Toolchain X, because arbitrarily different Toolchain Y is about to become the new industry fad, and will make all that prior arbitrary knowledge pointless.
Some of my favourite years in software were when I worked at an eCommerce agency that served only one framework. Learning I invested directly impacted my work for the coming years. I began to master the tools, which feels amazing. I could also see the real world effect the software had. Sure, it was simple, selling products to people. But commerce is an interesting problem space, and a fundamental part of society, so it was neat to be a part of it and see real companies I worked with grow because of my software.