USA India
Home Articles UserTV Press Releases Dictionary Books Education Careers B-Channels Resources Forums Blogs Classifieds
Sunday 20 Jul, 2008 eNewsletter Register Login
Archives
Articles By Date
Articles By Category
 
 
 Archives >> Details
A chance encounter with genius
Your local repair garage finds out about bad code through great pains.
Posted by : Nelson King

As I opened the door with a jingle, I noticed immediately that it was a very busy office for an auto-repair garage. I counted about 20 people, many more accountants than you would expect for some guy's oil change or engine rebuild. There were at least as many computers as people, about one per desk--another tip-off that this wasn't your average shade-tree mechanic. Not that there were any trees. I was out in the North Dakota prairie country when my car suffered some kind of fuel-injection breakdown and I lurched into this garage.

As I sat in a worn, grease-stained chair waiting for the mechanical diagnostics, they hooked the car up to a large and very odd-looking rack of computer monitors--it looked like a home-brew system. I wondered if there's some kind of mad IT department at work, renegades from a failed dot-com. Nah, code jockeys never become grease monkeys.

Suddenly, a guy with the name Mike on a patch sewn to his coveralls came into the office and made a beeline toward me. He looked so enthusiastic that I was sure he'd found thousands of dollars of work. One hand trailed about two feet of computer printout; I was certain it was the bad news.

"Look at this," he said, waving the paper around so that it was impossible for me to read it. "Stupid computer part! Your injection system has a burned controller."

"Oh, great" I said, "another bad computer. As if I don't have enough problems with computers and software." Before I had time to savor the irony, Mike looked at me for a moment, twizzled his bushy red mustache, and asked, "Programmer, analyst, or project manager?" Obviously, Mike was one of those mad IT people who knows something about computing. "Worse," I said, "computer journalist. I review software and gripe about the industry in print."

"Wish I could do that," he said. "Then I could tee off on the fools who sold me a worthless accounting system."

"Tell me more."

He crinkled his brow. "Sure. 'Cross the street there's a café; we can get coffee there that doesn't have an inch of crankcase oil at the bottom." He laughed and immediately set out for the door.

A long path to auto repair

It turned out Mike's the owner of the "garage." He's a graduate of Cal Tech, a first-rate engineer who began his salaried life as a corporate hotshot at General Dynamics. But salaried life didn't agree with him. Or, more to the point, he didn't agree with either his bosses or the way projects were handled. He left in disgust, burned out and unwilling to ever again use his talents in the employ of idiots.

He went home to North Dakota, started the repair-service to make a living, and did his tinkering in the off hours. His tinkering: fluid hydraulic systems. Tiny, extremely precise fluid hydraulic systems--the kind that can be used to move sophisticated mechanical devices like airplanes, rockets, and space stations. Mike once submitted one of his designs to NASA, and they approved it. "That," he said, "was the good news, and the bad news.

"They wanted me to build the parts. Fine, I could do that. Thousands of them. Oh. I'd need some help. That's when this became a real company. You probably didn't see it but there's a 30,000-square-foot building behind the garage. In it are 56 employees working three shifts." Mike swizzles some cream into his coffee.

"It wasn't long after I got started on the first NASA contract that I realized we needed some big-time accounting software. So I called this software outfit in Fargo and they sent out a couple of people. I told them, 'I'm doing work for NASA. I need security, 100-percent reliability, and some specialized accounting.' 'Sure, sure. We can do that.' It was brand-name software, and I bought it. They installed it, although that took more than three weeks longer than they said it would.

"It wasn't long before we started making a list of things that didn't work. One of my employees showed me how to get into the system without a password. One day the server died; no big deal, except the software quit in the middle of a transaction. It couldn't rollback, rollover, or whatever. We lost some critical data on a $300,000 NASA contract. You can't imagine what I had to go through to make NASA believe that the computer software ate it."

"NASA has its own problems," I said. "Like crashing the Mars Lander because some programmer didn't know the difference between miles and meters."

Lost in space

Mike flashed a wry smile and continued. "NASA requires some special accounting; the software couldn't do it out of the box--though [the software company] said it would. So I had to have a module written especially for the requirements. That was a nightmare. I found out the guy they sent to get my specifications was a specialist in agricultural software. Really. The first version they produced didn't run. The second version ran, but had unreliable summaries. The third version ran and was accurate, but it couldn't handle the confirmation system NASA requires. What could I do? Nobody in this shop knows Java from a cup of coffee."

"Roughly how much money were you out by the time this came to a head?" I asked.

Mike scrunched his face in thought. "About 200 grand."

"A lot of money for your size of operation." I said.

After a moment, Mike nodded.

"Many companies in the software business make their profit from fixes, maintenance, and upgrades," I told him. "They have little incentive to give you perfect software. What did you do?"

Mike grinned. "Used some NASA muscle. They had a Colonel somebody--a lawyer--call the vendor and the local representative. That got serious conversation going again."

"I'll bet. A lot of small firms can find larger organizations to give them some weight in these problems."

"Basically, we had them start over. I admit, even if it's commercial software, don't let them just waltz in and go live with it--like we did. The second time around we agreed to some additional payment, but we demanded a demonstration of operation first. We also sat down and prioritized our expected functionality: Know what has to work and stick to your guns about it."

Pursuing perfection

I asked Mike if he had expected the software to be flawed. "I'm an engineer," he answered. "I like perfection. I know you can't get it. They could do better, though."

Yes, they can. I informed him that some software companies are changing not only their attitudes but also their pricing structures. Instead of paying up-front for software of unknown quality, you lease it, pay in installments--or quit paying if you aren't satisfied. I also told him that some software companies are trying to combat problems caused by the complexity of software by using new diagnostic tools. I don't think Mike was convinced that he can expect all shiny new apples in the barrel.

"You know," he said, "if I were talking to other small companies, I'd say they should always expect to pay more than the listed or quoted price. Add 25 to 35 percent to your budget figure. If you can't afford it, do less--or do nothing."

He added, "Oh, by the way, we can have the part for your car in about two hours; it'll cost you 50 bucks or so."

I was floored, not at the price of the computer gizmo, but by Mike. "How do you have time to work in the garage and talk to folks like me?"

He laughed. "I try to make an appearance, from time to time. I like to remind myself what service is about."

 
 
Archives by Date
 
 
 
 
 
Copyright © 2001-2008 ComputerUser, Inc., All Rights Reserved
About us | Terms of use | Privacy Policy | Legal | Trademark/Copyright | Awards | Advertise | Writer guidelines | Sitemap | Contact | FAQ's | Feedback  | Link to us

Here are the topics we cover computer certification computer careers computer training computer games consulting data recovery data security digital entertainment emerging technology gadget reviews handheld computers hardware reviews home automation home networks home office how-to advice internet linux local companies local news local profiles macintosh mp3 players network security online music online security open-source small-business technology soho software reviews technology books technology dictionary vpn web site reviews wi-fi windows wireless technology tech articles tech news press releases tech dictionary education resources career solutions create your personal blog upload your videos become a writer usergroups special interest group SIG 3com cipts adobe adobe certified expert apc ncpi apple achds acpt acsa actc avaya bea 8.1 certified administrator 8.1 certified architect 8.1 certified developer 9 certified administrator bicsi rcdd checkpoint ccmse ccsa ccsa ngx ccse ccse ng plus with ai ccse ngx cisco access routing and lan switching ccda ccdp ccie ccip ccna ccnp ccnp old ccsp ccvp crmam ip communications optical proctored exams for validating knowledge sales specialist storage networking vpn and security wireless lan citrix cca 3.0 cca 4.0 cca 4.5 cca xp ccea 3.0 ccea 4.0 ccea xp ccia ciw ciw associate ciw certified instructor master ciw admin master ciw designer master ciw enterprise developer security analyst comptia a+ network+ security+ server+ computer associates ca cusa cuse cwna cwna cwsp dell eccouncil cea cep certified ethical hacker chfi e-commerce architect emc emc specialist implemenation technology foundations enterasys ese eta exam express exin exin itil extreme networks ena ens filemaker f7cd f8cd fortinet fortigate foundry cne fujitsu fujitsu guidance software ence hdi css hda hdm hdsa hitachi hitachi certified professional hp ais apc app aps ase certified systems developer csa cse master ase huawei hcne hyperion hcp ibm advanced deployment professional advanced technical expert application developer business process analyst certified administrator certified advanced system administrator certified advanced technical expert certified associate developer certified enterprise developer certified solution designer certified specialist certified systems expert database administrator db2 deployment professional enterprise developer eserver certified specialist ibm on demand business solution advisor solution designer solutions developer solutions expert storage administrator system administator iisfa cifi intel isaca cisa isc cissp sscp iseb itil ism cpm juniper jncia jncis legato lcaa lcea lotus clp lpi lpic level 1 lpic level 2 lpic level 3 macromedia mcafee mcdata csnd microsoft crm mbs mcad .net mcdba mcdst mcitp mcp mcpd mcsa longhorn mcsa 2003 mcsa 2008 mcsd .net mcse mcse 2000 security mcse 2000 to mcse 2003 upgrade mcse 2003 mcse 2003 messaging mcse 2003 security mcse 2008 mcts microsoft business solutions microsoft partner competency mile2 cnsa network appliance nac-na nac-nie naca nace nacp network general sniffer certified professional nokia nokia security administrator nortel ncde ncds ncse ncss ncts novell5 cna 5 cne 6 cna 6 cne 6.5 cne cne upgrade omg ocup oracle 10g dba 10g oca 11i 8i dba 9i dba 9i internet application developer oca ocp8 to ocp8i dba upgrade exam pmi project management professional polycom pcve redhat rhce rhct sair sas institute sas scp saas scp snia snia certified architect snia certified professional snia certified systems engineer snia storage networking certification program administrator professional associate symantec scse scsp scta scts teradata tca v2r5 tcad v2r5 tcda v2r5 tcis v2r5 tcm v2r5 tcp v2r5 tia ccnt ctp tibco tcp trusecure ticsa veritas infraguard chamber of commerce vcp vmware certified professional webex linkedin facebook myspace Professional page layout, image editing, vector illustration, and print production Website design, development, prototyping, and blogging Creation of rich interactive content Industry-standard visual effects and motion graphics Video capture, editing, and production; DVD titling; and digital audio, Adobe Photoshop CS3 extended, Adobe illustrator CS3,Adobe indesign CS3,Adobe Acrobat 8 Professional, Adobe Flash CS3 Professional, Adobe Dreamweaver CS3,Adobe Contribute CS3,Adobe Fireworks CS3,Adobe After Effects CS3 Professional, Adobe Premiere Pro CS3,Adobe Soundbooth CS3,Adobe Encore CS3,Adobe OnLocation,Adobe Bridge CS3,Adobe Version Cue CS3,Adobe Device Central CS3,Adobe Stock Photos, Intel Pentium 4 (1.4GHz processor for DV; 3.4GHz processor for HDV), Intel Centrino, Intel Xeon, (dual 2.8GHz processors for HD), or Intel Core, Duo (or compatible) processor; SSE2-enabled processor required for AMD systems Microsoft Windows XP with Service Pack 2 or Microsoft Windows Vista Home Premium, Business, Ultimate, or Enterprise (certified for 32-bit editions) 1GB of RAM for DV; 2GB of RAM for HDV and HD; more RAM recommended when running multiple components 10GB of available hard-disk space (additional free space required during installation) Dedicated 7,200 RPM hard drive for DV and HDV editing; striped disk array storage (RAID 0) for HD; SCSI disk subsystem preferred Microsoft DirectX compatible sound card (multichannel ASIO-compatible sound card recommended),1,280x1,024 monitor resolution with 32-bit color adapter Blu-ray burner required for Blu-ray Disc creation OHCI compatible IEEE 1394 port for DV and HDV capture, export to tape, and transmit to DV device QuickTime 7.1.2 software required to use QuickTime features Broadband Internet connection required for Adobe Stock Photos* and other services