I'm no spring chicken, but I'm no dinosaur either. However, I have been around long enough to remember when using HTML templates and populating them in some server-side compiled DLL was all the rage in high-powered web development; a precursor even to VB6's WebClasses. Do any of you remember the ridiculous hype those WebClasses received - particularly at VBITS 1998 (maybe it was 99, I'd have to check my tote bag to be sure)? Well, anyway, it was super-duper showcased. All the power of VB6 in a dll, but still running on a webserver, serving up html pages like pancakes at an IHOP.
Now, do you remember actually doing any real development with those webclasses? I bet most of you tried it, realized the one major flaw, and quickly abandoned the technology. If you wanted to make so much as a single character edit to the HTML page, you had to recompile the DLL, stop/start the MTS package hosting the DLL and most likely stop/start the IIS website as well. Not exactly the most developer friendly deployment scheme.
Now... imagine that same situation, but instead your code engine is Power Builder. Add to that, an enormous amount of Javascript, some of it custom, the rest as part of old js-based menu system (Joust - remember?). For that extra little topper, toss in multiple framesets. Ooh, that's right. I said it. I said frames. HOW COOL where frames when we got HTML 3.2?!? Oh man, they were the best thing ever. How many corporate websites ran on frames? Just about all of them.
The point to all of this reminiscing is that some places have not realized the sins of the past and still, to this very day, run setups exactly as described above. I know this because my newest client site is one of those places. Yes. A major entity in the area is powered by classic asp, powerbuilder, javascript and frames (not even iFrames, real life frames. You remember:
<frameset cols="100%" rows="72,*">
<frame name="title" src="/webap_buildTitlePage.htm" scrolling='no' marginwidth='0' marginheight='0' APPLICATION='yes' noresize>
<frame name="menu" src="/webap_plan_menu.htm" scrolling='auto' marginwidth='0' marginheight='0' APPLICATION='yes'>
</frameset>
Yep. It must be one of the dirtiest secrets in all of this city's IT departments.
Now, for the title of this post... I was recently handed, literally, hand-delivered 40 (FORTY) printed pages of Power Builder code and told to use this a guide to replace one function of a classic web app with a new .net page.
I understand the department doesn't have the resources or time for a full site redesign, development, etc... but this is not the first time we've tried this "lets replace this one function with .net and stay on the migration path" idea. I'm reminded of the adage: "The road to hell is paved with good intentions." Yes, it's good to start thinking about moving away from PB/JS solutions, but trying to do it in this patchwork style only leads to bad things.
Oh, and lastly, when you deliver this stack of wasted paper and explain how you were the lead architect for the system 12 years ago and still brag on its flexibility and power, maybe you should realize that you've hired a "new age tech guy" to replace all of that stuff and this isn't your hayday anymore.
It's a cold, harsh truth that, especially in IT, the *moment* you think you're finally ahead of the curve, you realize you've just been lapped. I'm still fighting to stay in the race and as proud as I am about some of my past victories, I certainly would not expect any one of them to still be around today.