posted on January 05, 2007 04:00
There's nothing like technology to teach object lessons in humility.
There was a time, a couple of years ago, when The Dead Hand was built on a .Text platform, was plenty stable, and boasted a few thousand unique visitors a week. The site's finally stable again—on a DotNetNuke platform—but we're currently lucky if we get a hundred visitors in a week. What happened?
(Incidentally, you can still access the old site and all its content here.)
Well, without delving into ugly details, I'd like to share a few of the more painful lessons I've learned in the past year. The focus is on operating a portal network... but you don't have to stretch too far to make them apply to other facets of life
- Back up your $#%&*!# database! Seriously. Modern portal systems like Community Server and DotNetNuke are entirely data driven. It only takes a minute to back the thing up before you make a change, but it takes a lifetime to explain to a dozen clients why your lazy ass had to roll their systems back to last month. Single point of failure, anyone?
- Version control is not bullshit paperwork. The parts that aren't data-driven live in your file system. Making a change? Annotate the new version! Save the old one! Otherwise, when the change breaks your system and all you want to do is get back to a platform that works, you can't. No room? At 31 cents per gigabyte, slick, I think your porn collection can finally afford its own hard drive.
- Handing out your password is convenient. It's also stupid. As a former friend and business partner of mine liked to say, "It's always a friendly arrangement until it isn't." Read between the lines. If you must give somebody access to the inside, be appropriately stingy and build in an expiration date.
- Upgrade is a four-letter word. I'm not advocating living in the stone age, but your willingness to exchange a known set of constraints for an unknown swarm of bugs should be inversely proportional to the number of people depending on your system. Sure, you don't mind taking a few risks... but you didn't ask them, did you? Remember, they call it the "cutting edge" for a reason. Let somebody else be the guinea pig.
- Execute, damn it! I know you want your entire project team to have access to a web-based project management portal that integrates with Gmail and their PDAs. Know what, though? There ain't no such animal... and while you were looking for it, somebody else bagged your client. Shipping a spreadsheet around may not be the sexiest way the get things done, but it does get them done.
- Back up your $#%&*!# database!