Name: JobSecurity.
Problem: Commuting, and colleagues, bug you. You want to retire early, but sustain a high burn rate afterwards.
Solution: Here are some ways to secure your job, both good and evil:
Meanwhile, hosts of junior programmers will work on actually adding features to this useless core, seriously impeded by its slow compile times, fragility, obscurity and coupling.
Based on a true story.
An instance of an AmorphousBlobOfHumanInsensitivity.
Some software houses do this to the public on a large scale as a standard marketing policy...
...alternatively, you can write your code and documentation in Welsh
So I gotta learn another language. Darn. -- PCP
We document in German (ok, Welsh is more obscure). -- JuergenHermann
I can attest to the truth of Based on a true story.. I'm working on the project he's referring to, maintaining that incomprehensible core. The guy who originally wrote it quit after a couple of years and the company paid him big bucks to work at home enhancing it. He was the "best" C++ programmer I ever knew, and the worst. -- jpm
This is a job for HowToIntegrateExpertInExtremeProgrammingTeam.
This is totally untrue, see:
Sometimes JobSecurity doesn't require any intentional mischief on the beneficiary's part. Rather than making things unnecessarily complicated, just get yourself assigned to a project that nobody else will touch (either because it is impossible, or because of some horrible required technology. Then even if you quit, they'll beg you to do more work on it. (Unfortunately, based on my own true story.)
That reminds me of the time when I saved my old high school from the tragedy that was their MS Access/Foxpro/whatnot database for timetables scheduling and grading. I rewrote the core of the Access system to be able to do everything correctly in about 2 weeks (that's when they needed the timetables for the next year... they called me in out of panic). Of course, that wasn't enough time to do a proper design, and it was never intended to be. I later made them an offer to build a sustainable system with a proper database back-end and a Delphi front-end, but they refused. Two years later, after they completely trashed the Access system trying to move data to the next school year, I've become a rumored terrorist there. Even many years later, some still seem to think I "planted" something to make the system go bust after certain time. -- SvenNeumann
I'm sure MS knows of this technique.
In MS's case, they plant the dark corners in their systems, to make VendorLockin? nearly automatic.
See EvilCode, AreWeBiasedTowardLaborIntensive
Not sure whether I want this in CategoryEmployment, but it's definitely a member of CategoryAntiPattern.