Ah, the Holiday Season. A time to relax, unwind, and most importantly DON’T SHIP ANY CHANGES.
Recently, i had the pleasure of telling this story from my past to a junior (in age, not skill) dev on my team, and figured i’d share it here. So sidle up to the fire and grab a warm beverage, because it’s…
Story Time with JR
Many decades ago, i worked for a company that was building a program for Windows that did stuff on the Internet. Mind you, this was for Windows 3.0. Before Windows for Workgroups 3.1 that had TCP/IP drivers built in (we didn’t know that was on the roadmap either). As part of my job, i was working with a separate contractor that we hired to do the TCP/IP driver.
Let me set the stage even more. In those days, kids, you had to buy a separate networking card for your computer that cost hundreds of dollars and had to match whatever local networking protocol that you used. (Ah the days of coaxial runs, tokenrings, and vampire connectors. shudders), so we had specified a very specific configuration as part of the contract.
Since this was long before the days of reliable internets and nobody in the office wanted to run a BBS for this, i would get a disk in the mail (like an animal). i’d go to the test rig, install the driver (i laugh at your .msi configs), reboot, and…
As in Hard Crash / Blue Screen of Death at boot / Do not pass Go! Do not collect $200 kinda crash.
Ok, not great, but understandable because this was in the bear skins and pointy sticks period of personal networking, so maybe the card was wrong or the system was slightly off. i added a confirmation list for the hardware in the test rig, dug in to things as much as i could with a debugger, flagged the things i think are wrong, and mailed the package back.
Time marches on, a new week and a new disk arrives. They confirmed the build configuration, and it all looked good, so i reinstalled Windows, installed the new driver, and.. boom. Again, instant crash on boot. i debugged again, wrote up the report and into the mail it went.
Third week and again, no joy.
At this point, i was noticing a pattern.
So i called them.
Later that day i began a surprise journey into learning Windows Device Drivers and TCP/IP networking as my boss cancelled the contract.
So, with that, i want to remind you all that just because your package/application builds, doesn’t mean that someone else’s will. Be kind this holiday season and let other folks have a restful break before the New Year begins.
Don’t release, it can wait ’til January.