January 2004 - Posts
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...
In a previous blog post, I asked about how companies and organizations these days reward or acknowledge technical achievement, such as attaining certification or being awarded MVP status, completing big projects, being selected to sit on an important committee, or writing a book.
I'm interested now in the flip side of the argument, the “how can we use this for our advantage?” perspective, looking through the eyes of the employer.
Granted, many of you indicated that the level of compensation and/or material reimbursement is minimum (if at all). Still, I've noticed (through many years of organizational observation after being screwed over myself) that while *some* companies will make the investment to help employees reach such status, *many* companies might not do much else than give employees mention in their corporate newsletter, but *several* waste no time in leveraging such achievements as sales drivers or public relations bragging rights. And many do so creatively, to the benefit of thier own operations overall, if not to the direct improvement of the quality of life of the individual who was distinguished.
Such is business - it's all about serving the greater good.
So...how does your company flaunt your achievement(s)?
Back when I was in college, I would watch The Benny Hill Show between classes almost religiously when it showed in syndication on Comedy Central in the afternoons. It was the greatest...short attention span TV with great, hilarious skits, mostly about older English gentlemen getting hit in the groin, slapping each other on the head, scantily-clad women and running around at double-speed.
I've loved the show since I was a kid, as I wasn't wise enough at that point in the culture of my English ancestors to appreciate most of the stuff the Monty Python lads were putting out. The videos are still great rents, and much of the humor (being based on perversion) is timeless. I think he coined the term “dirty old man“.
The show did a lot for comedy - for editing, for writing, for sight-gags. But what most people don't realize is the wit he used...a lot of the funniest jokes were often tongue-in-cheek or not as obvious as falling down a flight of stairs. But it was all good...and all funny. Benny Hill a couple of days before my birthday, the year I graduated from high school.
Before South Park, before The Man Show, before all the shock & extreme comedies, there was Benny.
Just because I work for a TV station doesn't necessarily obligate me to endorse televised programming, much less enjoy it. That being said, I can't stand reality TV. In fact, the only connection I have to modern-day reality TV is that Kelly Clarkson from American Idol and I share the same birthday (April 24).
However, I think it would be a hoot if some network execs got a bunch of developers together - I'm talking hardcore nerds - and made a TV show out of it. Give them some sort of situational obstacle, a limited (or unlimited) amount of resources, and eliminate one candidate per week until a winner is chosen. Now, to only come up with a script. We could make a bunch of prospective techies battle for a job, but The Apprentice claims had laid claim to that storyline. Maybe hold one female and male under the single-and-available spotlight? Oops...forgot about Joe Millionaire. The Real World's also been done, Average Joe is predictable, most developers I know are a bit outside the range of Fame, and Survivor...well, let's not go there.
So - what would make a good reality show for programmers? Maybe casting computer fanatical devs in an environment completely unfamilar to them, like an auto body shop? Dang, the Simple Life's been there, done that.
Geez...in retrospect, I sure know a lot about reality shows for having never watched them...
Chris Sells has had a great guide to some of the questions one can expect online for awhile when going through the process at Microsoft. This got me thinking. I'm 0-2 at the moment myself - I've been through the Microsoft interview process once in person and once over the phone, so I've taken note of the mentality when it comes to their brain-draining questions. If you've never had an interview there, I really suggest you apply...it's really fun and very educational, but you'll crash out from mental exhaustion afterward for sure. It is, from various accounts and articles on both business as well as technical journals THE world's hardest job interview (although I've heard Dow Chemical and Pepsi are also tough). And I was just there for a marketing gig.
It's the Microsoft way to not really judge you based on the quality, speed, or accuracy of your answers, because much of the time, you're asked questions for which there is no right response. The key is that it's your reaction and thought processes to the questioning that much of the time determine how well you did. Do you go to pieces when asked a certain question? Do you display some sort if systematic problem-solving when trying to suss out a very vague situation? Do you try and BS your way through it and get it over with quickly? Do you just give up?
While not an exhaustive list by any means, here are some of my favorites that I was asked. I've even used some of these when interviewing candidates for positions under me.
- why is a manhole cover round?
- how many streetlights are there in New York City?
- how do you design the world's perfect toaster?
- how can we make Word better to lawyers?
- why is XSLT inferior?
- what type(s) of technology appeal to YOU, and why?
- how would you explain Excel to your grandmother?
- how would you test whether a pepper dispenser worked?
- suppose two spaces occupy two distinct values. introduce a third space and have the third assume the value of the first in no more than 3 steps, moving sequentially and not skipping
- assume you have to market a new alarm clock for the deaf. How do you do it? (this one's harder than it looks)
If you've gone through the Microsoft interview process, what are your favorite questions?
And dammit...I will make it in there one of these days.
Take a trip with me down Amnesia Lane, won't you? Let’s together traverse a long path to attempt to profile the missing link within today’s .NET community - certification. Recall with me the days of yore (circa 2000) when it seemed like every IT staffer on the planet, their dog, their receptionist and even the guy who delivers your express packages by mountain bike had a plethora of letters and credentials after their name, stating their technical area(s) of implied expertise.
Recall how employers and clients flocked and clamored towards those citing themselves as MCDBAs like so many lemmings, instinctively and naively following the pack to their eventual doom. A booming CD, book and teaching industry thrived, with everything from learn-at-your-own-pace courses to 6-day boot camps. Heck, even people who had no business working on, much less administering a corporate network, had an MCSE.
Ahem. Flash forward to today, in a marketplace ravaged by economic downturn and slow recovery, and hurting from a national war and a high unemployment level. Companies have wised-up to the “I want $150,000 a year on principle because I'm MCSD” demands of the certified and let them go. Quoting Gordon Gekko from the 1989 movie Wall Street, “Give me people who are poor, hungry and ready to work.” Companies these days want proven skills, not theoretical knowledge or memorized, classroom expertise.
Organizations now concentrate on using the skills of those who can do something and have a track record that says so, regardless if their business cards have some many letters after their name that they more accurately resemble dentists than developers.
So...what the heck happened?!?
The last any of us really heard of the Great Certification Drive of 2003 was an episode of The .NET Show which profiled The Developer Roadmap for .NET certification that, according to the feedback, wasn't very well received (apparently largely because it dealt more with marketingspeak than a technical discussion). Many may believe this attempt to migrate technical staffers towards dreams of deeper product knowledge, higher pay and greater peer respect came too little, too late, while others have a decent argument in postulating that it was that the .NET Show episode that killed off the allure of certs altogether.
Certification in the .NET world never really took off, and I'm not sure why. I've read articles and talked to people that testified that the MCSE got blown way out of proportion, and that so many people having it actually led to its downfall - it became so easy to attain that it degraded the honor of carrying it. When Windows 2000 rolled around, the exams were HARD. And this should have been a good thing. I didn’t take part in reviewing the early exams for ASP.NET, but I’ve heard they were also marginally more difficult than their MS FrontPage for the MCP + Site Builder predecessors.
I myself never made too much effort to plunge into .NET certification, because the tests were based primarily on knowledge of early versions of Visual Studio .NET, which at the time I really didn’t use that much. The MCAD and MCSA designations looked promising for web app builders and sysadmins, respectively, but I’ve only ever met a few people who carry either one.
So what did in Microsoft .NET certification – the job market? The cost of getting up to speed? The difficulty of the tests? Is .NET still considered to be in the infancy phase of its lifecycle and therefore certs just haven’t taken off? Are alternative learning resources (forums, UseNet, mailing lists, et al.) sufficient to not warrant such designation?
Has the allure of being a Microsoft-certified professional worn off?
I’d venture to guess in some part all of the above.
I was fortunate enough recently to be awarded as a Microsoft MVP for ASP.NET, for which I'm most grateful, and a very well-deserved congrats to those of you who were also selected. I work as a dev lead in Guam's largest broadcast organization, so I'm not exactly in the business of selling custom software, although I do write it all the time.
As such, my company gave me the obligatory pat on the back only when they saw my new signature line in my e-mail, and not really understanding what it was. I'm recieve lots of support and congratulations from the ASP.NET community, so thanks all for your kind words and encouragement. If only I could recieve such recognition at home.
Carrying extra letters after your name or a series of earned credentials is nice, but I'm not exactly reaping the fruits of my labors with the company that gives me a check every two weeks, if you know what I mean. I've also dealt with enough organizations over the years to know that ISVs flaunt MSCEs, MCTs, Cisco-certified people and Novell-trained people up the wazoo as sales drivers to customers and as public relations magnets to the media.
I'm likely not going to get that cool parking space closest to the door or a fat raise anytime soon, and I don't expect one for various technical achievements I've accured over the years, because that's not my organization's core competency, and I'm fine with that. Sort of. I'm not expecting anything, and the economy here is too screwed up to demand a raise anyway, so that's out of the question. Still, it would be nice to get some type of acknowledgement to having done something in my field of choice.
So...how do your companies reward or recognize achievement in technical fields? A former employer gave out “Thanks“ cards when we got Microsoft and other certs, which was more insulting than gratifying. Rewards systems work, but only if implemented right.
In the meantime, can I have a hug?
If there was one single book I'd want to keep if all my other books were to be taken away, it would be “Nerds 2.01“. Well, that and “ASP.NET Unleashed“.
I remember one night after jamming out a paper while in graduate school, I was senselessly channel flipping and caught “Nerds 2.01 - A Brief History of the Internet” on PBS. It was a timeless classic, profiling the people, places and processes that helped to bring the Internet and the subculture its spawned into the mainstream.
It's an amazing production - and I've got 2 copies of the book at home. Greapet interviews and accounts of the trials (courtroom and otherwise) and tribulations of industry giants like Microsoft, Sun, Intel, AOL, 3COM and Cisco are all there, so it's a must see. I've almost likened it to a bible of sorts for IT people, both on the business and engineering end, a “learn from whence you came“ guide of sorts. And you'll come away from it wanting to schedule a meeting with the nearest venture capitalist. Or not.
At the time (circa 1999), it fit perfectly with everything that was going on, and the rise of the e-industry before the bubble burst. And trust me - if you're a student now, it is THE ultimate helpguide for getting quotes, factoids and dates about the industry to which we cling so dearly. Now, those of you who are geographically closed than I to Silicon Valley may disagree with the film, but it's an educational piece either way.
And even though it came out before the next evolution of the Internet - with the eBays, Amazons, and the like, making it somewhat dated, it's still a great read, and an essential one at that if you're working in IT.
Undoubtedly many of you reading this will have seen it and formulated an opinion. What's yours?
As a musician and lifelong wannabe rock star, I'm a huge fan of VH1's “Behind the Music” series, ever since it premiered some 6+ years ago. I was really bummed when the new current “season” wound up being only sparse episodes acting as the marketing equivalent of hype-inducing jumper cables for notable acts with forthcoming albums (case in point: Britney Spears).
But, there are some very compelling episodes about people who've lived - and lived through - some truly remarkable events. Going back to my point about shameless fluffing for the sake of marketingpush, I'm not really all into the “Behind the Movie“ series. Funny how the premiere episode was for “Chicago“ just a couple of weeks prior to the Grammys to perhaps sway some last-minute voters.
I just caught the page for the BTM series, and I was blown away by how many episodes they've produced (being a TV guy, I'm into this soret of thing, being around it 24/7). I had no idea there were that many. For instance, I think the Depeche Mode episode aired only once, which was a bummer. Oddly, the same fate became of Judas Priest, which was a great episode.
BTM, the I Love the 80's, I Love the 80's Strikes Back, I Love the 70's and some other shows are the main reason that my cable company could get rid of every channel except for VH-1 and ESPN, it I wouldn't care (or likely notice).
Here are my top Behind the Music episodes (not in terms of the bands I like, but for the episodes themselves):
- Ozzy Osbourne
- David Crosby
- Ted Nugent
- Tony Orlando
- Lynyrd Skynyrd
- Public Enemy
I'd also like to see future episodes profile/document the lives and careers of Smashing Pumpkins, The Cure, Bob Marley (although this would be more suited for the “Legends“ series), Saturday Night Live, Jimi Hendrix (another “Legends“ candidate), Iron Maiden and a few others.
I'm working on an internal project to parse out sports scores for pro and college games for my staff. As such, I've got a zero-budget. (Go figure).
I'm on the hunt for any and all good XML Web services that I might call to get scores from, if anyone out there knows of any. I've read up on SportsML, which is a sports-centric version of the NITF (news industry text format), both published XML schemas (whoops! pardon me....“DTDs”) for articles and scoreboards.
More Posts Next page »