I’m an optimist for the most part. I stay upbeat and try not to let much get me down. I feel it’s important for a team to have a generally positive vibe as negativity breeds negativity and turns into a vicious cycle that’s difficult to break out of.
But where my optimistic side gives way to my sense of realism is the “Oh, vNext is going to be so amazing to develop in” line of thinking. As, well sure in your head or dreams, but if what would make vNext amazing is something your not doing now, then it’s not the current version of the software that’s the problem, it’s you.
It all boils down to the fact that there is always a vNext. I worked at a place that had been talking about their own vNext for something like 20 years. If that piqued your morbid sense of curiosity it was a hotel reservation system running on an AS/400 and the vNext was this new “Windows” fad (it was 2005 btw).
Like my case study above, vNext don’t always happen and I would wager money, vNext’s almost never happen. Businesses hate vNext’s as your rebuilding functionality you already have and they already paid for. So from their perspective, “Why am I paying to build this again, when I already have and it’s not going to help me attract new customers?”.
Make a list of why your vNext will be so much better than your current version to work\develop in. Could be stuff like Dependency Injection, Unit Testing, Automation, SOLID, No SPROCS, etc. Then every month start doing one of those in your current code-base. At a minimum, you’ll gain experiences of what to do and not to do when or how to set stuff up when vNext comes and start forming good habits. But if vNext never comes your turning your existing application into vNext and making your work life better in the process.
If you can’t make those changes now, why would anyone expect vNext to be different then current? If what would make vNext so much better and easier are not worth it to bring into the current code base your doing a disservice to yourself, your co-workers, your employer and more importantly your customers, as I’m sure eventually they will find a product or service that does care enough to evolve.
Breaking development habits is hard, but worth it if the gain is making your current code base the vNext your dreaming of.