… with CSS, otherwise known as Cascading Style Sheets. I’ve used these off and on in web development for the past few years, but almost always only to define how I want links to appear on a page (underline/no underline, hover color, etc.), nothing more. Not until recently did I discover the true beauty and power of CSS.
This can only mean one thing. I have to overhaul my site and replace it using CSS. Here’s why:
<dorky rant>
Software engineers are perpetually obsessed with the soft concept of the “software development cycle.” There are always new theories coming out, the most recent one being the “agile cycle”, which emphasizes feedback instead of planning. There are plenty of others, and those truly interested can read the Wikipedia entry to find out more. When it comes down to it, a website is just another piece of software, and the process of designing and implementing a webpage is very much a “software development” exercise.
My approach to websites thus far have almost always been the Waterfall, with a bit of Spiral, but not much. The reasons for this are two-fold: 1) I am lazy, and Waterfall allows for the least amount of thought paid to future maintainability, which takes a heck of a lot of front-end planning, and 2) I’ve been focusing (perhaps too much) on artistic design rather than practicality. But as the good Ruth Anderson and John Knight once told us, the majority of time spent on software development is actually spent on maintaining the software, so the easier the maintainability a piece of work has, the better it is. My websites may look pretty, but with zero maintainability, they are terrible pieces of work from a software engineer’s perspective, which is really a shame. It also makes it so that I get stuck with the same look/site/layout/style/links for years after making it, because it takes so much effort to update even the tiniest bit of it.
CSS changes all of this!! Check out this example: CSS Zen Garden, and select each of the designs on the navigation bar to the right. The HTML code for all of the example designs NEVER changes, yet the pages have drastically different looks! How? The genius of CSS. A software developer’s dream for maintainability. This freedom is the reason I feel compelled, almost obligated, to overhaul my site. A project for winter break/IAP perhaps.
</dorky rant>