Sergio couldn't have woken up in a better mood. When his radio turned on at 6:00AM, the weatherman predicted nothing but sunshine, warmth, happiness, smiles, and hugs. He shaved, dressed up, and got ready for the drive to the Federal Department of Government. Sergio's company had just scored a major contract after a long negotiation process, barely passing the obstacle course phase of the Federal Department of Government's rigid requirements for a bid to even be considered.

Sergio was so happy because he was, to a large degree, in charge. He'd determine the architecture, the database design, and he was in charge of gathering requirements for the six-month contract.

Arriving at the Federal Department of Government office, he met with Craig, the tech lead. Craig had been promoted by seniority, and didn't have any apparent technical background or, for that matter, any apparent technical knowledge. Craig politely introduced himself and explained the requirements to Sergio.

Gathering Requirements

"OK, so what we need here," Craig started, "is a way to get all these paper forms into a computer." He pointed at an open closet that was near the building entrance that Sergio had come through. From where they were sitting, it looked like stacks of thousands of sheets of paper. These forms were shipped to the FDoG daily, and contained information about workflows, organizations, projects, and contacts. Clearly, they'd fallen behind on processing the forms. Immediately Sergio's thoughts drifted to automated scanning, cataloguing, OCR software, and other technologies that he'd never really worked with before.

"So," Sergio began, his thoughts returning to reality, "you want these to be scanned in, or..."

"No, I'll take care of typing all of the information in. We had a tech guy before that left about a year ago the last time we tried to get this project going. He said we should use," Craig looked down at his notepad. "'Visuals Basic.' Have you ever used that? We already have a database that you can use. And it has to run in Windows."

Sergio was scribbling notes furiously, holding his questions until he was done writing. "Did you say you were going to do all the data entry?"

"Yeah. I'm a very fast typist!" Sergio's eyes returned to the closet with the stack of paper that appeared larger each time he looked at it. There was at least a years' worth of full-time data entry.

"Are you sure you want to do that all yourself?" Sergio asked. "It looks like there's an awful lot to do." Craig smirked and nodded, with a smug yeah, I think I've got this covered look on his face.

Sergio continued. "By 'has to run in Windows,' do you mean as a Windows application? We can't do this on the web?"

Craig rolled his eyes, "God no! On top of how insecure web applications are, they're so hard to use! Take a look at this," he said as he turned a monitor to face Sergio. A horrid, ugly web-based version of the software Sergio was tasked with building was on Craig's screen. Craig demonstrated some common functions, many of which were throwing primary key violation errors, syntax errors whenever Craig entered a single quote in a field, and frequent crashes. "Our last guy had this in an Access database, which he was able to delete right before he left. We don't do web applications anymore."

The last IT guy deleted the whole database? Sergio tried to keep his composure. "Well, you do realize that if it's a Windows application, you'll have to distribute the installer, teach people how to install it, grant users network access to the database?" All this on top of the absence of a real IT guy, plus FDoG wasn't paying Sergio's company for any additional training.

Around the time that Sergio uttered the phrase "distribute the installer," Craig's eyes glazed over. Craig gave the look that your grandma would give you if you asked her to do a traceroute. Sergio sighed quietly. Windows forms it is.

Data Entry

After a few months of development, it was time for data entry. And after four hours of keying the data from a stack of papers, another box came in with more papers to add to the pile, totally negating (and then some) Craig's work. Noticing this, Sergio again asked if a handful data entry clerks could be added to the project.

Craig looked less smug this time, but still insisted that he be the one to do it. "This is highly sensitive data here! I have to be the one to do this."

Sergio would be dead by the time Craig finished the task. And unless Craig was planning to have a lifespan of Old Testament proportions, he'd never finish. And Sergio couldn't help but think it was a little bizarre that such sensitive data was in an open closet that didn't even have a lock on it, and that it was positioned right near the entrance (also unlocked).

Near the end of the following day, Sergio got a panicked call from Craig. "We're having huge problems here; the forms aren't working correctly, and I can't get anything done until this is fixed!" Sergio had the sinking feeling that he'd left off a WHERE clause on a DELETE query somewhere.

"What's the problem that you're seeing?"

"I can't really explain it — you're just going to have to come in first thing tomorrow morning." Sergio got up extra early the following morning and rushed to the FDoG.

An Emergency Issue

"Thank god you're here," Craig began. "Watch this." Sergio swallowed a lump in his throat.

Craig maximized the window. After a second or two, he restored down. "Did you see that?" He repeated the process. "See how the typing boxes and buttons and stuff resize when I click the shrink and the deshrink?" The form elements resized automatically as Craig changed the window size, exactly as it was supposed to.

Sergio stared in disbelief.

"It shouldn't do that," Craig said. "It should look exactly like the printed page."

"For the short term, you may just want to change your resolution," Sergio suggested.

"I don't even know what the 'resolution' is! Just get this fixed!" Sergio provided a workaround ("don't maximize") and fixed the application later that day.

A New Hope

Months passed, seasons changed, and the contract had ended long ago. When Sergio was done, about 500 of the tens of thousands of records had been entered. It was government work, after all.

Sergio had put the whole contract behind him. And one random morning, he woke up in a great mood. When his radio turned on at 6:00AM, the weatherman predicted nothing but sunshine, warmth, happiness, smiles, and hu- *RING*

Sergio's phone was ringing, and the caller ID showed Craig's number. When Sergio answered, he was surprised to hear a woman's voice.

"Sergio? Hi, my name is Sheila. I've replaced Craig and have some ideas for our application that I hear you worked on."

"Oh?"

"Yes," Sheila said enthusiastically. "I was thinking that we could bring in some data entry people to help us with all the paperwork we're behind on. Craig only finished about 800 of them before I took over, and we're running out of closet space."

"Go on," said Sergio, feeling a bit of déjà vu.

"And I was also thinking that this should be web-based. As it stands, we have to distribute the installer, teach people how to install it, and grant users network access to the database."

Finally, Sergio thought, a voice of reason at the Federal Department of Government! She actually gets it! Not only that, but a voice that vindicated everything he had suggested before. Plus the contract was practically a lock, which would make Sergio the hero for his company. He couldn't help but smile broadly. "This all sounds great!"

"Fantastic," Sheila said excitedly. "Our network administrator says our network is already secure, so no need to worry about that. If you can just make those few adjustments I'd like to have this on the web by the afternoon!"