Virtualization, “The Cloud”, Internet of Things, Self-Driving Cars, Drones, Virtual/Augmented Reality, 3D Printing, Quantum Computing, Nanotechnology.
I could continue with a further list of the dizzying array of numerous other modern, bleeding edge, technological advancements in the technology industry that I could mention but that’s not the point of this little blog post.
My point here is that there is a side of our high tech world that most ‘End User’ Consumers and even most IT Professionals don’t even realize exists. Much of the newest technology actually relies on Legacy architecture.
“Legacy” in terms of the Technology/Computing industry is described as “an old method, technology, computer system, or application program, ‘of or relating to, or being a previous or outdated computer system’.”
In short, much of ‘todays’ technology is actually built, and/or tested, with ‘yesterdays’ technology. Manufacturing equipment in the circuit board manufacturing equipment are often highly expensive, in the mid to high 6-digits cost range, reliably built to do whatever task they’re designed to do for a very long time. These machines are not built to be ‘disposable’. Also, much of the processes themselves that are used to manufacture circuit boards really doesn’t change a whole lot, even as the technology itself does advance.
As an example of this would be one piece of equipment that comes to mind which is a Wave Solder Machine. Essentially what this thing is, is a big heating unit that melts solder into a liquid and then splashes it up under circuit boards as they move over the tank on a conveyor system. That’s fairly simplistic but essentially what the machine does. This process pretty much applies equally to circuit boards that were made 20 years ago as it does to the most modern, high tech, circuit board made today.
Essentially where I am going with this is that there are still a lot of Legacy systems in use in today’s manufacturing of technology and someone still has to keep this stuff running.
As IT Professionals we’re constantly pushed to add skills for the bleeding edge of our industry and there’s an overriding attitude of “upgrade it”. Many in this industry get blinders to the fact that sometimes that’s simply not financially feasible.
As an IT Pro, if you were to approach the CEO, CFO, etc. of a manufacturing company with the argument of:
“We need to replace this $180K+ piece of equipment.”
“Why?”
“Well, it’s old. It’s running on an outdated operating system with old software that can’t be replaced”
“Does it still work?”
“Well, yeah it works perfectly fine but it’s old!”
Yeah, good luck with that. The Manufacturing industry especially runs with razor thin margins and very ‘tight wallets’ when it comes to company asset investments. If something still does what it’s supposed to do and it can still be kept running, it’s going to be used until there’s no choice but to replace it.
So, this is where my point has rambled to. There’s still a need for IT Professionals who are tasked with keeping “Legacy” systems alive for as long as possible.
Basically that’s me. I joke about being half IT Professional and half Paleontologist but to be perfectly fair to myself, I am very good at my job. I’m not trying to ‘toot my own horn’ or being some self-righteous douche here. I just want people to understand that just because I am in a situation where I have to keep “old skills” fresh, does not mean that I’m not good at what I do and that what I do isn’t important.
A recent example that, frankly, I will toot my horn about that stirred me to write this blog post.
We have a piece of circuit board testing equipment called a Flying Probe. We have several actually, but this one specific machine is the one I was recently called on to replace the PC. This machine is 20+ years old. I’m honestly not even sure what it does actually but whatever tests it performs are still valid and this specific machine is configured to work on boards for a significant customer that is forecast to drive a large portion of our company business this year.
Well, the controller PC that runs this machine has been ‘on it’s last legs’ for a long time and I’ve been warning management of this for quite awhile. It’s actually in the future forecast to replace it, but that forecast is more like 2018. In the mean time this machine is fairly critical to get us through this year.
So, Murphy’s Law being what it is, the PC recently finally reached a point where it just couldn’t deal with it anymore. It got to the point where the PC would reboot every 6 minutes. On the clock oddly enough. This obviously meant that it was essentially useless.
This PC is over 20 years old. Spec wise, for the tech savvy reader:
VIA motherboard
733 MHz Pentium III cpu
768 MB of RAM
160 GB IDE Hard Drive
128 MB Graphics Card
10/100 Network Card
Running Windows XP Pro
The equipment this old soldier powers requires specialized software, hydraulics controller card, and image processing. The machine is old enough that none of these things are replaceable anymore.
I’ve worked very hard in my current position to earn a bit of a reputation of being a ‘miracle worker’ for keeping this stuff running. Frankly, I hate it since it means I have no choice but to never be able to advance in my career. I’m stuck being Legacy just like the equipment I support and stuck watching the rest of my industry pass me by.
That said, needless to say I got called on to see what I could do.
Luckily, I had a newer “old” PC sitting under my bench. A system that was “only” 10 years old. Also an XP era PC, but one that was made at the end of the XP era instead of at the beginning of the era like the one that needed to be replaced.
Dell system/motherboard
2.8 GHz Dual-Core Pentium D cpu
4 GB of RAM
1 TB SATA Hard Drive
1 TB Graphics Card
10/100/1000 Network Card
In all specifications this machine is dramatically more powerful than the old one. If this works, not only will the test equipment still be useable, but it will be considerably better at doing what it does than it has ever been before.
Here’s the catch, the Operating Systems itself can’t be reinstalled. The software that this machine requires to runs is not replaceable. The PCI controller card that powers the machine hydraulics requires drivers that are no longer available.
So, I basically have to put an old ‘brain’ into a new body, reconnect it’s nervous system, and bring it to life without any failure.
Or, cost the company $180-200K to replace the machine.
Deep breath. No pressure.
It’s pretty obvious that I wouldn’t be writing this blog post if it wasn’t a ‘happy ending’.
I did it.
Imaged the old hard drive onto the new, larger one. Blue Screen of Death, no surprises there.
Repair Installation of Windows XP Pro so as to rebuild the OS without losing the installed drivers and software.
It boots! Sweet. But now the system Properties are blank. The Event Log is jammed full of obscure errors. Essentially the PC boots, but it has no connection to the hardware due to it being so dramatically different. ‘Lights are on but nobody’s home’ essentially.
An hour or two of researching and I figure out how to rebuild the ‘hardware layer’.
Re-register a couple hundred .dll files and system32 .exe files. Re-create system accounts.
Voila! It worked. Properties now show the actual new system specs. Event Log errors are gone.
Ok, huge sigh of relief and more than a fair sense of pride in the accomplishment because this was no small task.
However……. I still have to put the PC back into the test equipment and it still has to actually do what the old one did inside the equipment.
Go to put it back in the equipment chassis, and, it doesn’t fit. The old case was narrower than this new one so it wouldn’t fit through the front cabinet like the old one did.
Thankfully with some reasonable effort and about a half hour of laying on the floor, supporting myself with one arm while working waist deep inside the back of the machine it does fit inside through the back of the equipment.
Ribbon cables for connecting the hydraulics arms don’t reach the PCI card connections now because the PC is much larger now.
So, pull it out, flip it over, and start over with working it in through the back of the chassis.
Finally, all connections are plugged back in.
Call for the department manager to power this thing back up while basically holding my breath.
XP boots up (which sadly was still a big relief)
Proprietary controller software launches (whew!)
Equipment servos move as software controls are tested. Woot!
This machine now not only works, but works better now than when it was new.
This was no small accomplishment and I am very pleased that it succeeded. In the course of my career I’ve done projects like this. I’ve spent hours hacking system files and copying registry keys from old Win 95/98 systems into newer Windows XP or Win7 systems in order to get old, irreplaceable software working.
I’ve literally used a paperclip to clamp down a broken CPU heat sink in a machine, while it was running, in order to keep a manufacturing line from going down.
For the fellow IT Professional reading this, the next time you roll your eyes at the term “Legacy” and tell me “just upgrade it”, keep in mind that you may well have no idea of the challenges involved.
We do have a lot of advanced technology here and I work with a highly skilled Systems Administrator whose job is to drive the new improvements and processes but me, I keep Legacy alive. At least until it can be sent off and retired with the honor it has finally earned when no longer able to.