In his college years, budding developer Troels L. wanted to get a leg up over his fellow students. He figured a job to supplement his studies would serve him well, so he looked for employment at IT firms, banks and insurance companies, but no one was hiring students. The companies only had positions available to candidates with degrees.
Finally, Troels found a large non-IT company in his area that was looking for college students for a planned project. He read and re-read the job post to assess whether he had the skills called for in the project -- specifically in the area of database integration using a trio of technologies: Access, VB and Encarta.
Having used Access, Troels was ready on that front. He hadn't worked with VB, but he figured, how hard could it be? He'd used Microsoft's Encarta encyclopedia software before, but never in any professional capacity. He couldn't even imagine what using Encarta professionally could possibly entail. The job didn't seem a perfect fit for his skills, but he sent the application in anyway.
You Want What?
Not long after, Troels landed an interview. After a brief conversation, the interviewer asked Troels if he had questions.
"Well, I do have one question," Troels began. "What exactly are you looking for by way of Encarta experience?"
The interviewer looked stunned. "Well, you've used it, right?"
"Yes, for college papers and that sort of thing. But I don't know that there's any API or anything like that. Let me rephrase my question: What exactly is it that you want me to work on?"
"Do you play World of Warcraft?"
Troels was surprised by the response. What could a massively multiplayer online role-playing game have to do with the software project he'd be working on?
"Uh, yeah, I played it for like a month ..."
"Great! That's exactly what we want!" the interviewer said. "Except with icons of our competitors' locations on a virtual globe, instead of monsters."
The company wanted decision-making software for company executives, and those executives liked the world map in Encarta. The firm had already collected the data needed for the Access database. It had decided it wanted to hire a developer that would "make Encarta 3-D with icons for competitors."
Never mind the fact that there was no obvious way to integrate Access and Encarta. The interviewer told Troels: "They're both Microsoft, right? So they can just snap together."
Yes, Troels thought, in the same way a Ford Aerostar's engine can be dropped into a Mustang.
Fight for What's Right
Troels reluctantly accepted the position. The experience was just too valuable. Besides, with the title of assistant programmer, he figured he'd be working with a capable senior developer, or at least a strong regular developer -- or at least a developer. As it turned out, Troels would be working alone.
Troels taught himself VB and spent a few weeks fixing up the Access database. Several times, Troels asked the company to upgrade to SQL Server. After all, this project was a multi-user application with sensitive data, and Access just wasn't the right tool for the job. SQL Server licenses were too expensive, he was told.
After a few late evenings of hacking, Troels produced a working version of the Access database, though it hadn't been designed for security. The plan was to get something up and running, then patch in security later (despite Troels' protests). Again, he suggested upgrading to SQL Server, and again he was turned down.
Once the database was complete, work on the front-end began. A 15-minute meeting was held with the IT staff that Troels hadn't even known existed. And, thankfully, they backed him up when he brought up the idea of upgrading to SQL Server. With their support, he finally won the battle -- and with that victory came the loss of practically all of the work he'd spent weeks on. The Access structures were used as the basis for the SQL Server data structures, but all of the methods, forms and procedures were thrown out.
Still, Troels was happy. He'd won a little battle with the business and overcome the first "business-versus-development" fight of his career.
Access Abomination was originally published in Alex's DevDisasters column in the October 15, 2007 issue of Redmond Developer News. RDN is a free magazine for influential readers that provides insight into Microsoft's plans, and news on the latest happenings and products in the Windows development marketplace.