Thursday, January 10, 2008

Business 101

Today I attended (and helped lead) a 9-hour meeting with a client my company is building a portal for. Earlier this week my boss told me "Oh by the way, this client has been paying your salary. Even though I've had you working on other projects for the last 3 months, you need to make it seem like you've been working on their project for the last 3 months because I've been billing your hours directly to them."

First reaction: freaking out. This is unethical! Why didn't they tell me this? How can I possibly slap together a demo in a week that looks like 3 months of work? I'm doomed! Then I talked to my dad who laughed and said "This is business. This kind of stuff happens all the time. You should feel lucky that you were surprised." I confronted my boss about this, who said "Sorry, but the other project needed to get done too. I'll try not to do this again. In the meantime, I don't care how much overtime you need to put in to make this a good demo."

So motivating. But we made a good demo. Helped by the fact that MyGeneration is a great ORM layer, and ASP.NET has some pretty quick and easy HTML WYSISYG tools.

When I walked into the meeting this morning at first I was a little afraid. Would they see through us? Would anyone ask me explicitly how long I've been working on this project? How could I answer that question without violating my ethics? But then as we were implementing the "meet and greet" item on the agenda, one of the doctors asked if anyone knew how to share Visio files with people who didn't have Visio installed. I replied "Just export the Visio file as an image." He replied, "Export? Image?" The group was not so computer-savvy.

They loved the demo. It seemed like half of them didn't quite know what they were looking at (I had to explain what a portal was), but the other half were happy. They seemed less focused on understanding the demo and more focused on arguing with each other. I established lots of nerd cred by telling them some "aw shucks I'm such a nerd" stories from college, briefly describing the Amazon.com website architecture in words they wouldn't understand but would be impressed by, and making them feel smart for asking questions.

Overall, the meeting went really well. About half the time was spent getting consensus from them on what exactly they wanted. They had lots of ideas and anecdotes, but no clear plan. And now we have some sort of a plan. And somehow, I inadvertently convinced them to use us and not some other competing software company for one component of the project, a decision which more than justifies my salary for the year. Yay.

Were ethics violated? Turns out these folks are used to throwing money around and getting no results. They complained of giving more than 100K to the previously mentioned competing company, and getting nothing from them in return. And they've apparently been paying my company for years for nothing, so they were really happy to actually see something built. I'm sure it must be hard to try to build and run a software project knowing nothing about software, but still it strikes me as inefficient to throw money around so easily and not know how to get results from it.

I've also learned some things about doctors.

1. Doctors are like hashtables: they contain a vast amount of quickly accessible information, with no deterministic sorting or organizing scheme.

2. Doctors like to expound. It is useful to have bossy secretaries who cut them off and keep them on task.

3. Doctors like to argue with each other over minor, arbitrary points.

4. Doctors really really like drop-down boxes. Showing them drop-down boxes on a web form for data entry they had to repeatedly write out by hand makes them overjoyed. Who knew?

2 comments:

Marco Ramilli said...

Fews comments:

"Oh by the way, this client has been paying your salary. Even though I've had you working on other projects for the last 3 months, you need to make it seem like you've been working on their project for the last 3 months because I've been billing your hours directly to them."

1- NO COMMENT. I really don't know why often Computer Scientists are the "last wheel of the float" (I'm sorry it's a pure italian translation...)


"They loved the demo."

2- Of course they love it ! YOU did it :-D !


"I've also learned some things about doctors.

1. Doctors are like hashtables: they contain a vast amount of quickly accessible information, with no deterministic sorting or organizing scheme.

2. Doctors like to expound. It is useful to have bossy secretaries who cut them off and keep them on task.

3. Doctors like to argue with each other over minor, arbitrary points.

4. Doctors really really like drop-down boxes. Showing them drop-down boxes on a web form for data entry they had to repeatedly write out by hand makes them overjoyed. Who knew?"

3- Amazing !!!! In my family I have some doctors... and I can confirm that ! It's totally true !! :-D :-D

CMU Anonymous said...

I would disagree with your observations about doctors, because you were interacting with doctors who were simultaneously bureaucrats. I think your points 1-3 are more bureacrat-related. 4? I can't say, but I know that doctors hate paperwork. (Really, who doesn't?) --Jane