A piece of (say) game software is unlikely to result in death or injury
Actually I have discussed this specific scenario, my flat mate (A flat is a house in New Zealand sublet by a bunch of students) wrote flight sim software for a company that ran high-end arcade games. Coding standards were... loose (in that they were what the lead programmer said they were). The simulators were a cross between you standard in-cockpit arcade cabinet and a tumble dryer that used gravity and rotation to emulate the sensation of zooming around in space. The part of this project that caused a lot of contention between the Boss ("Get it done now cheap"), the Engineer ("ye canne break the laws of physics"), and the programmer ("you want what to do what now?") was; if the computer, which controlled everything, crashed, how could you program it (i.e. the crashed computer) to enter a safe mode that would stop the simulator and open the doors? The Boss insisted that the computer could do it, just write the code dammit. The programmer said it couldn't as that's an aspect of the Halting Problem and you needed a second computer. The engineer said they needed an independent redundant system with a big red button. Eventually a micro-controller was installed, but the whole argument was referred to as the discussion about "Doors that shouldn't eat people". In this case the required standard is obvious, often when working to standards (or statutory requirements) the reasons can be obscured.
ahh no! my non sequitur powers!
| [reply] |
I think the reason the OP's comments got me riled up is that it's the 'what does it matter when it saves time and money' kind of attitude1 that can make working in these 2% situations very difficult. I think what I really wanted to communicate is that you can not always assume 'it works' is good enough. If your working environment has standards set higher than that, you're quite likely to be contracted to work to them, not under them, and you are obliged to do so.
I suspect it's residual bitterness from having to spend late nights at work double-checking data sheets against data inputs (that have already been checked twice yet still have 5% error rates). Eventually I did most of the key-punch work myself because I had the fastest data entry speed with the lowest error rate. People look at you like you're doing voodoo when you can do data entry on the keypad without using the mouse to navigate cells or look at the screen.
1 I'm not belittling his opinion. In situations where you've got to ship the product on a deadline, you've got to do what you've got to do and it is the right way to be thinking. I'm just putting up the counter PoV.
| [reply] |
People look at you like you're doing voodoo when you can do data entry on the keypad without using the mouse to navigate cells or look at the screen.
That's why I decided a long time ago that for any project I'm involved in that has a team of more than 5 programmers, if I have any influence, I'm going to strive to employ an administrative secretary. Key skills: touch typing, WP, shreadsheets, filing and no ability to take no for an answer.
There job is to off load as much of the non-programming work from the programmers as possible. Including typing up docs, maintaining timesheets, chasing deliverables, maintaining the project plan. etc. They cost about 1/3rd a decent programmer, but are about 5 times as productive in their areas of resposibility.
I once saw a programmer spend 3 days working up a program to collect and print his timesheets. And what happened to his painstakingly formatted printouts? They went up one floor where they were entered into a MIS system in about 30 seconds flat and then binned.
And have you ever watched a programmer use a WP program? They'll never finish that 3 page progress report until it has a title page, a TOC, and fully inverted index, a figures list and 2 other appendices. And until they've explored every obscure feature available. A good secretary will take a handwritten or flat text file and have it typed, spell checked, grammer corrected, formatted and printed before your average programmer has decided what naming convention to use for the file and where in his directory structure it should live.
Admin. secs., tech. writers and DBAs. Worth their weight to the project bottom line.
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
| [reply] |
| [reply] |
I think what I really wanted to communicate is that you can not always assume 'it works' is good enough.
If it doesn't work, then it is broken, which is the opposite of perfect. Thus, it is not good enough, since it must not be broken. Making the call that something is broken is tough though, and still subjective. But sometimes it has to be made.
| [reply] |