On Page Design
I am not an artist. That's probably pretty obvious to anyone who has seen even my Photoshop work.
I am, however, a computer science major, and I think writing decent XHTML should be within my grasp. This site is my practice arena for that; all code is written by hand, currently using Quanta Plus as an editor. I'm trying to keep several goals in mind while writing this site:
- Fast loading/rendering times
- Bandwith and processing power are limited commodities, and should be used as sparingly as possible. I don't want to waste your time or mine.
- Accessibility
- The Federal Government has an excellent set of guidelines on Web design for the blind and visually impaired available -- it's part of a wider disability law and is known as "Section 508." Basically, they ask that webpages be easily navigable using screen readers: what would bold or italics or letters of a different color mean to a blind person? That's why we have elements like <em> and <strong> instead to indicate emphasis and strong emphasis, after all. Worse, how can a screen reader interpret Javascript? How about XHTML which relies on screen layout to imply the function of elements?
I doubt that my site is fully 508-compliant, but I'm at least trying to stay abreast of the design issues involved.
- Clean rendering in any (modern) browser on any system
- Closely tied into the idea of accessibility is the belief that you should be able to use this page in IE, Firefox, Konqueror, Opera, Lynx, Links, or whatever else you should choose to browse in. Moreover, I cannot stand to see notices on webpages that say things like "Best viewed at 1024x768" or even "800x600." My laptop's native resolution is 1400x1050. If I had a PDA, it would probably be about 320x240. My page should be useful and readable in both of those environments, and everything in between. To this end, anything that specifies layout by number of pixels rather than proportionately should be avoided, as should images that aren't necessary. This is actually one of my pet peeves with a number of different blogging systems' default layouts, where they restrict me to a tiny column of text about 2" wide on my screen.
- Standards compliance
- Sort of related to the any-browser goal; by writing to the best available, most strict, and easily checkable standard, I have a better chance of writing code that will stand the test of time and come out looking halfway coherent. Previous experiences have shown me, however, that validating is not enough for really decent design.
- Text reusability and maintainability
- Basically, I'd like to be able to easily re-use the text I've written for this site in other contexts with a minimum of importation hassle. It's another reason to keep display information out of XHTML and in CSS. I also would rather spend my time writing than formatting.
There are probably things that I could be doing better to further these goals and make my life easier, like keeping pages in a publicly accessible revision tracker, or just using a decent wiki to hold all the content instead. Since one of my ancillary goals with this site, however, is to stay fluent in Web standards, this seems like a pretty good compromise.
In short, there's no reason that, if you think this site is too plain, you couldn't fix it up easily yourself using CSS. I'm pretty sure that Firefox lets you specify a default CSS file for pages that don't have one, like mine. This amazing tutorial from Albino Black Sheep shows, once and for all, that page layout is something best handled entirely through that medium.* If, for some strange reason, you actually do this, drop me a line with it -- I wouldn't mind having a better looking site.
*Disclaimer: I don't agree with the author's use of fixed-pixel width for his page, or graphical backgrounds, but otherwise it's the best demonstration I've seen. And, as I said at the beginning, I'm not an artist by any stretch of the imagination.