(Most of the following is true. Some details have been changed to protect the guilty.)
I met up with my buddy Don recently for beers and to enjoy the last bits of the warmest, driest summer in Seattle history. He likes hefeweizen and I like a good IPA. Over chips and salsa our conversation--having exhausted the continuing woes of the Seattle Seahawks offensive line--turned as usual to work. And, since I do what I do for a living, I asked him how his modernization effort was going. Don is a fairly senior dev lead in a fairly large IT shop.
"Not bad, more or less. A year or so ago we inventoried all the apps in the whole org--or at least we tried. We went around to every department and asked them to tell us what they had, who owned it, what it did, what it was written in, that kind of thing."
I ate a chip. Don ate a chip. Once you eat one chip, you're pretty much guaranteed to eat all of them.
"We got back the most amazing list of crap--you wouldn't believe how much stuff has been created over the years that's still running. Some of it on an XP or Vista box under someone's desk."
The chip headed for my open mouth paused mid-journey. "XP?"
"XP," Don said. "Guess they didn't see the 900 memos we sent out on the subject when extended support ended. Anyway, that's over--we blew away all those boxes."
"What else did you find?"
"ASP.NET? Like Webforms?"
"No, actual ASP. As in Bill Clinton was president ASP. As in Duran Duran was hip ASP. As in some of my employees were still in diapers ASP. Classic ASP."
"How is this possible? Wait--let me check my phone...yep, it's not 1996 anymore."
"Right? So this department had this app from the 90s that they were still using. Because it's so old it went to the top of our modernization priorities for an upgrade to ASP.NET at least."
"Sounds reasonable." I grabbed some guacamole while Don's mind was on other things. There's never enough guacamole.
"Well, yeah, except they didn't want us to change anything. They didn't want to pay the transfer cost for the modernization. They didn't want a rewrite. They wanted to keep using the app. 'Oh, it's fine. It's been working for 20 years so why change now?' they said."
"What did you do?"
"Gave 'em an ultimatum: get rid of the ASP code or get kicked off the network. Can't have something that open and ancient on the net."
"Slam the door on the Russian hackers, right?"
"Shut that door!" He nodded to the waiter for another beer.
I contemplated the remaining guacamole, trying to decide if I could, with a reasonably clear conscience, eat the rest of it while Don was deep in thoughts of hackers at the gates. Grabbing an intact chip, I decided that if I paid my half plus all the tip I could still possibly maintain some degree of balance in the universe.
"Now that we're deep into DevOps," Don said, looking with a puzzled expression at the now barren dish that once held guacamole, "and now that we're pretty committed to continuous delivery, etc--CI/CD you know...this old stuff seems so, well, old. I'd be happy getting rid of all our hardware--well, not the client side stuff but all the servers and storage. Put it in Azure! Scale up! Scale down! No more worrying about processors or memory or disk, just drag those sliders around. Our folks just check stuff in and the tests get run automatically; everything gets deployed into production right away if all the tests pass. All the new stuff we write we're doing test first--TDD--and when we hit a bug we just write a test for it."
Don gets enthusiastic...I was worried he might burst into song, waving his beer glass like a drunk Bavarian at Oktoberfest. I guessed correctly that the next phase would be Nostalgia Hour.
"You remember when," Don began. "we'd find a bug after we'd release and it would be six months to a year before we could fix that bug?"
"Because our releases were a year apart," I said.
"Now we're never more than 3 or 4 weeks from a release, so you find a bug tomorrow worst case is it's gonna get fixed in couple of weeks, maybe same day with CD."
"Sounds good," I said.
"Yeah, good." he said. He looked at the empty dish again. "Want some more guac?"
I burped. "Nah, I'm good."
Don't despair if you have old ASP code - Mobilize is here to help! Need info on what's next in the Microsoft developer ecosystem? Check out Microsoft Connect(); 2017 where you'll learn the latest on developer technologies, tools and skills.