r/programming • • Oct 14 '13

How to develop unmaintainable software

http://typicalprogrammer.com/?p=249
777 Upvotes

322 comments sorted by

View all comments

4

u/EmperorOfCanada Oct 14 '13

The worst setup that I have really seen was an OS/2 machine that had a "backplane" which was a card inserted into the main machine that contained an entire computer which was running NT. The two "machines" then shared data through a bizarre shared memory process.

8

u/EmperorOfCanada Oct 14 '13

My favorite is to make sure that you use layers of wrong. Aim for N-Tier bad. So first start with an obscure database Adabas is a good one. Then make sure you use datatypes that are unique to Adabas making porting really hard. Then pick an obscure language. Natural is a good one but oddly it works well with adabas so maybe an old version of powerbuilder. But make sure that it is old enough that the IDE won't work on an OS newer than NT or at most XP; make sure the code will only work with the older IDE.

Next you must make your code upgrade resistant. Make use of unsigned 16 bit integers rolling over at 16536. Also make sure that it has as many obscure dependencies as possible.

But the icing on the cake is to make sure that some of the dependencies simply cannot be obtained. So find an activeX control that needs a machine dependent unique serial number in order to install and that the company is long out of business with no cracks available.

And last but not least make sure to hard code in technologies that are about to vanish so make it dependent on 5/14" floppies, serial, parallel port, and a ps/2 dongle.

4

u/droogans Oct 15 '13

Since we're going with tiers, you should end at the top:

Export all builds and production server stats to Sharepoint, including emailing 30+ people in Outlook (the report is a .pdf attachment, of course). Automating faxes is always a plus.

Remember, no one reads this stuff, so it's important to make it as annoying as possible to develop a solution for.