Pardon me while I rant for a moment...
Over the years many people have asked me what I do for a living. I'd answer saying saying "I'm a programmer" and watch their eyes glaze over. The odd time I have encountered someone who wants to know more about what I do its usually because they have a 9 year old cousin, nephew or neighbor down the street who they think is a computer genius. He's not a genius, he just knows more than they do.
I can't blame them though. While it is getting better, the computer industry on a whole has done a dismal job in educating people on technology and what it takes to "make it go". Of course, when you put half-a-dozen geeks, nerds and dorks into a room together to come up with some educational material, what do you expect is going to come out?
Everyone knows that there are computer chips and processors in everything these days, from your wristwatch to your toaster oven, but people seem to forget that every singe chip is only as good as the program, or software, that runs on it.
Okay, the rant is over.
So back to what I do for a living. I am a programmer. More than that, I am a software craftsman. I develop web applications for small and medium sized businesses when they can't find off the shelf software that does what they need. Some projects take only a few hours, some projects take a few months and some projects take years. I have clients that are still using software today that I wrote over seven years ago. The hard part though is that because my primary focus has been on business applications I can't show it to anyone to show that what I actually do.
That changed today.
For the past five weeks I have been working on the new website of the Kelowna Rockets hockey club. We launched it at mid-night last night. Bill Barns was the project manager, Gord Hotchkiss and Cory Bates did the graphic art, and Ryan Watters and Dana Soleski wrote all the content. And me, I did all the programming.
And I'm proud of it.
Here's a run down of some of the features.
- The site is fully template driven and component based allowing easy customization of nearly every page.
- All pages are search engine friendly allowing customization of the page title, keywords and meta tags.
- There are eight different content types, four of which allow audio attachments.
- Content can be scheduled to appear on the site at a specific date.
- Many aspects of the site utilize AJAX including the home page features, player profiles, ad rotator and game calendar.
- A full mailing list system including bounce processing.
- A complete role based membership system that allows users to manage their subscriptions to the various email newsletters published by the Rockets.
- An image management system that allows large master images to be uploaded once and then automatically resized to the sizes defined for the various image locations.
- A desktop uploader for managing the images, game programs and audio content of the site.
- A trivial trivia component.
- Full game management system complete with next game, previous game results, summaries and a game calendar.
- PLEASE NOTE: I DID NOT BUILD THE STORE! We've been trying to convince them to build a new store for three years now so if you hate it as much as we do, send them an email letting them know its time to replace it.
Currently the site is hosted on a single dedicated server which also hosts the database. Total development time was about five weeks, with the last week being primarily content development and testing.
So there you have it. The next time someone asks me what I do for a living, I can point them to the Kelowna Rockets Website and say "Stuff like that".