Just recently a colleague and I had to design a little web site and fill it with some content. We decided to use an open source CMS and since the existing infrastructure contains a Windows 2003 Server with IIS and MS SQL as a database backend, he convinced me to give DotNetNuke (DNN) a try. This was when the fun began…
I took a look at the default templates and was somewhat lost. OK. Lots of HTML and other (unrecognizable) files. Then I took a look at the documentation (pdf only?) and was a little less lost, but this was plainly a pain. Fortunately I found a nice and slick and clean replacement template at xhtmlskins.com, which I downloaded after registering on their web site (guys, this was the last time I did this, I was just too desperate to search any further). This template (or skin as it is called throughout DNN) is a zip package with some files inside (this one much easier to understand than the template on the web server). I uploaded the skin package using the skin upload mechanism built into DNN, and this is problably where I should have RTFM first. There are 2 options when uploading a skin, and it looks like I chose the wrong one. The upload worked and the DNN engine obviously unpacked the zip file, parsed the HTML data and created lots of new files, so everything looked fine.
Everything fine? Wrong, pal! After the (seemingly) successful upload of the skin I activated it as my default skin. You never guess what happened: the page broke completely. At first, some content panes switched their layout to something totally different, including lots of partly unrecognizable error messages. When I navigated the page, i got very long waiting times, followed by an IIS error. Going back there was no chance to undo what I just had done. I messed up and killed the complete DotNetNuke installation by activating the wrong skin. Since there is no separate admin front end there is no chance to remove this any other way than by accessing the server directly (which wasn’t possible at that moment). Knock-yourself-out at its best.
I don’t know if I will ever install DNN again in my life. This happening even convinced my otherwise Microsoft-friendly colleague to go for something different – which will be the next part of this story.
One more thing before any fanboy fraction starts to complain: I know that I possibly made a mistake. But any software that is THAT mature (version 4.8) and THAT widespread should do better than screw up by installing a skin. This is what software quality is about, and DNN did this incredibly wrong. Period.