I had planned to write a fictitious software manual, based on the manual for the last major project I worked on at my last IT job. But in the interest of not skirting the edges of my non-disclosure agreement, I wrote a manual for an entirely nonexistent application instead.
This is satire. Curiously enough, it did not start out as such. But I found myself in a satirical mood when I sat down to work on it. Even if nothing else comes from this, I still had a good time writing it.
Any resemblance between this material and any actual company or software package is pure coincidence.
ABC SOFTWARE COMPANY
CODE WAREHOUSE USER MANUAL
CODE WAREHOUSE USER MANUAL
I. INTRODUCTION
The ABC Software Company recently found a unique way to deal with the rampant morale problems plaguing its programming staff: it fired them all. Not only did this put a stop to all of their whining about "reasonable expectations" and "keeping up with advances in technology," it also frightened the rest of the staff into stopping their whining and getting back to work. As a result, productivity skyrocketed.
Unfortunately, this decisive action had one small side effect. After all, a software company without a programming staff can hardly be expected to introduce new products within a reasonable time frame (the example of Microsoft notwithstanding).
Eventually, Management came to the conclusion that along with their crack team of marketing wizards, they needed someone who could produce actual, marketable code. So they hired a new set of developers – who, unfortunately, wasted little time in nurturing their own set of attitude problems. Like the original programming staff, these newcomers proved to be unproductive and disrespectful. After showing the boss for the fifth time how to copy a file, explaining to the vice president what “File Not Found” means, and trying to convince an end user that the application's CD-ROM won't play music if he puts it in his stereo, they spent the few remaining minutes each day complaining instead of coding.
As this second set of programmers quit in disgust one by one, one particular manager hit upon a brilliant scheme. He proposed that Management assign the remaining developer the task of creating an Application capable of filling all of ABC's programming needs. With a database containing every line of code ever written for the company, the Application would turn even the most computer-illiterate marketer into a coding genius. Given the most vague set of project specifications, the Application would be able string together just the right code to solve any problem. And it would do so without complaining or making unreasonable demands like, “Can't we go five minutes without a crisis around here?”
So the last programmer rose to the challenge, and labored long and hard on this project. Working through weekends and holidays, he overcame every obstacle in the pursuit of his goal. Crises were averted, issues raised and dealt with, and still he labored on. Slowly, steadily, the Application began to take form under his skilled hand.
Finally, eight months later, the Application was ready. Management put it through a battery of tests, giving it the most inane and illogical problems to solve. And the Application mastered every one in minutes.
And Management was pleased. They decreed that the Application would be known henceforth by the name Code Warehouse. And they saw that it was good.
Then they fired the programmer.
II. LOGGING IN AND ACCESS PERMISSIONS
As with all software intended for internal use, access permissions for Code Warehouse are based on employees' technical knowledge. That is, the more that you know about computers, the lower your level of access. Employees are thus unable to use Code Warehouse to steal ABC Software's proprietary code for personal use, as is clearly forbidden in your employee handbook. (See Section 18, “Causes Of Summary Termination.”)
Access permissions fall into one of five levels. The lowest is End User Access, in which you have access to the main screen, but all the buttons are disabled. From there, permissions steadily increase, up to Executive Access, where you have full access to the inner workings of the program and can do some real damage.
On starting the program, you will have five seconds to correctly enter your username and password into the login window. Employees who have forgotten their passwords should consult their Employee Handbook (See Section 27, “Don't Forget Your Password”) for further instructions.
III. ENTERING PROJECT SPECIFICATIONS
The first step to creating a Code Warehouse project is entry of project specifications. For those employees who have been with the company long enough to remember having human programmers at your beck and call, entering project specifications will probably be the hardest part of the process to become accustomed to. It is no longer sufficient to say, “I need this right now,” without specifying precisely what it is that you need.
On starting a new project, Code Warehouse will ask you a series of questions to determine what the requirements are for the application it is to create. Please try to answer all questions completely. Unlike our human programming staff, Code Warehouse does not have the ability to read your mind. You must provide a written description of what you need a Code Warehouse-produced application to do.
You may see an error message along the lines of “Incomplete specifications – please clarify further.” If this happens, you should close and re-start the program, and then enter the same specifications again. This meaningless message is the result of a bug that appeared spontaneously after the programmer was terminated. If you get the same message, repeat this process as often as necessary. Keep doing the same thing, and eventually the problem will go away by itself. Please consult Section 41, “We've Always Done It That Way,” of your Employee Handbook for further information.
IV. MODULE ASSEMBLY
After entering your product specifications, Code Warehouse is ready to begin Step 2, Module Assembly. The specific mechanics of this process will not be discussed here, for two reasons:
1. This is proprietary information. Ever since the Great Algorithm Betrayal of 1996, when Cecil the Treasonous was caught trying to explain to his grandmother how his latest program worked, the inner workings of all ABC applications are a closely guarded secret. See Section 75, “Loose Lips Sink Ships,” of your Employee Handbook for further information.
2. No one still working for ABC Software understands how Module Assembly works.
Click the button marked “Begin.” Then go get a cup of coffee or take a bathroom break. Better still, go to lunch. This may take a while, especially on Thursdays when the network is particularly unstable.
Some employees have reported coming back from lunch and seeing an error message reading, “Unable to begin – too many users connected.” Future versions of Code Warehouse will include multi-user access, which will alleviate this problem. (Employees who have wondered if we can – or should – use Code Warehouse to produce a future version of Code Warehouse itself should consult Section 25, “Questioning Equals Treason,” of their Employee Handbooks for further information.)
V. COMPILING A FINAL PROJECT
When the Module Assembly process eventually finishes, you will see the message, “Module Assembly Complete.” You are now ready for Step 3, Project Compilation.
Compilation is the process of converting the code modules created in Step 2 into an executable program. (Here's a tip: If you are unable to start an application, check the three-letter extension of the file on which you are double clicking. If the extension is .CWH, the file is a Code module and not an application. .EXE files are applications. .XLS files are top-secret information, not fit for mortal eyes to look upon.)
You may see an error message reading, “Needed File Not Found:
VI. FINAL THOUGHTS
As always, ABC Software prides itself on the quality of its products. Therefore, mistakes of any kind are not tolerated. See Section 21, “One Strike and You're Out,” in your Employee Handbook for further information.
Managers are encouraged to make copies of this document available for their staff. At the same time, however, you should remember and abide by ABC Software's non-disclosure policy as described in your Managers' Handbook. (See Section 11, “Give Me Your Wrist.”) Ideally, this manual should be kept under lock and key in your desk, along with your other ABC Software employee materials.
Good Luck and Happy Coding!
(2003)
No comments:
Post a Comment