Never Again - The tale of a missed friday evening beer
He was just like all the other developers when the project started. His eyes gleamed at the thought of starting off on a new code base - the thrill of the first include statement. He knew excatly where the code would be located - D volume (obviously - no self respecting techie would ever use the system volume for storage ). The code would go 5 folders deep under Projects\Work\CompanyName\ProjectName\Code - no spaces. He liked his keyboard and spaces induce the dreaded two-fingered shift key combo that would slow down coding when in the command prompt.
The months passed away in whirl of multi-threading (to the tune of "do that funky coding.. geek booy") and exception chasing. Then it happened. T'was the night before UAT, and he had just put the final touches on the self-healing component of the system. In his all-knowing farsightedness, the self-healing patch download location would be the same as the host application which would get passed to the Process.Start command as a paramter - sweet. It was all unit tested - patches were coming in just beautifully and doing their magic. 6 p/m friday - nice - beer beckoned. and then ..... one of the silly users decided to install the application ... of all the arcane locations under c:\Program <space> Files \blah <space> blah.. damn these pesky users . of course he had forgotten to sorround the command arguments with "".
Note to self -
1. Always develop against a realistic folder path with spaces in them
2. Never assume the presence of even a "C" drive.