Jason Salas' WebLog

On-air and online: making people laugh, making people think, pissing people off

Sponsors

ASP.NET sites that kick ass

Pals with blogs

Podcasts I listen to

What's worse - half a software spec...or no spec at all?

Want to know what's worse than having a software specification that's incredibly detailed to the point of leaving nothing to chance and completely eliminating ambiguity?  Having a half-concocted one! 

I just crammed out the finishing touches on a very strange app I was tasked to write.  I was basically given the following on a Friday afternoon:

  • an Excel file consisting of image paths and descriptions
  • a paper-based listing of e-mail addresses
  • a boatload of images
  • a “spec“ requiring me to ensure that all entities in the e-mail list (external to my organization) received the images, requiring membership, on a somewhat scheduled basis - essentially, an “image of the day“ service for members

In the past, this would have been a project that justified the existence for admin assistants.  Staff underlings would collect a paycheck for sitting there and manually e-mailing attachments to everyone on the list.  What's worse, the neophyte would have sent each attachment individually ('tis true...tragically there are people in the world who still don't know you can address an electronic mail message to multiple recipients...most of which seem to work here on Guam).

Now being the computer guy for my company, I wasn't able to delegate the construction of a database and then just tap into it, nor was I able to have someone build the consuming client, so all fell on my shoulders. 

Wanting to put this project to rest and with only 2 hours until our 6PM newscast, I threw together a simple XML Web service, requiring a SOAP header for authentication and returning a byte array, constituting the binary image.  Nothing you haven't seen a thousand times before.  I loaded a scheduled, sequential image path by linking the description information contained in the spreadsheet to the actual images from my local machine, and then built a deployable web client to display them.  I whipped out a quick mass-mailing list for announcements and went to town.

After collecting myself after Find the Bug-Fest ‘04, I refined and refactored the code to run a bit faster and finally, bug-free, deployed.  Voila!  Operational bliss and projection completion, all in less than an hour.  And one less thing for me to worry about.

While enjoying the rush of endorphins that finishing such a project delivers – a “coder’s high” or “mental boner” as I call it – I reflected on how often this happens.  In the online/TV news business I get this a lot, so I'm admittedly cheating by saying this was a first-time or rare occurrence, so my current pace is the product of readiness training.  Ill-formed specs are a nature of our game, and nearly weekly, I’ll have to come up with the best solution on my own. 

I've gotten used to working in conditions where I have to crank out something really cool, really special...really fast.  Having 5-hours of lead time is considered a gift.  And I really enjoy the challenge of racing against the clock, because as is so often said, it’s all about showtime, baby.  When the clock strikes 6PM if we’re not ready online, many heads are gonna roll.  And by “many heads”, I mean mine.  Heck, I’m the guy on TV who’s reading the thing anyway, so I’ll be my own judge, jury and executioner.

I’m fortunate to have worked with enough people that have given me great ideas and found friends in countless developers who were willing to share time-saving techniques to help speed the process.  I’m also lucky to have a great newsteam behind me, who constantly push me to develop ideas and to consistanely expand upon my own limits.  Working with apps that bridge TV and the web is monumental fun, and it’s never been like work.

So how about you?  You’ve read this far, so you must be interested or share my situation.  Do you normally work on projects with strange specs, and if so, do you like it?

Now that I think about it...maybe partial instructions aren't so bad...

Comments

Tejas Patel said:

Although I cannot say what the task was and are assigned on a daily basis, I can say that my Boss allways comes up with work and which is "just very urgent" and "ASAP". People in my company comes up with problems and want the answer or solution straight away (they think computer people are God).

Well I quite enjoy the level of respect I get when I get it but I also enjoy the challenge that I face and the innovative ways I come up with to meet those challenges.
# January 31, 2004 1:12 AM
Leave a Comment

(required) 

(required) 

(optional)

(required)