Design

Why did I design this site the way I did? To tell the truth, it was a side-affect of my job, and my choice of browser: OmniWeb. For my job, I was reading a lot of web standards (HTML 4.01, XHTML 1.0, CSS 1 and 2, etc.). Also, since I had been subscribing to the OmniWeb mailing list, I knew that a lot of the sites that didn't look right were the result of sloppy HTML. The fact is that most of the HTML on the web today is atrocious in both design and standards conformance. In my opinion, the beauty and power of the web (and the Internet) is that it is non-prorietary. Pages which contain invalid HTML and use poor design make themselves less useful to everyone. I think the only way things will improve is if people who create webpages embrace the standards and support web browsers which implement them. You wouldn't buy a car that couldn't use standard gasoline, so why use a browser that doesn't support a standard from 1996?

That said, I have made a number of concessions to try to make this site work better with browsers which don't support the standards very well, but at the same time I think it's important to use new features of the standards that not all popular browsers support lest they are never implemented at all.

There are three main sources that strongly influenced how I executed my design. I think they are important for anyone who wants to design useful websites today and in the future.

XHTML

This site uses XHTML 1.0. It's actually not all that different than HTML 4.01, which was standardized in 1999. What XHTML adds is a bridge between HTML and XML, which seems to be the future of the web. The main thing I like about XHTML is that it is stricter than HTML. Optional closing tags are required, and all tags must be in lower case (which is what I prefer anyway). This makes XHTML easier to parse, and easier to look at. Also, you'll notice that all the XHTML (and CSS) on my site is valid according to the standard. This is the first step in making a website platform generic, but almost no professional websites use valid HTML.

Cascading Style Sheets

Cascading Style Sheets (CSS) are one of the best things to happen to the web in a long time, but they're under-used and under-supported. They offer the designer the ability to completely separate the visual presentation of the page from the underlying structure thereby simplifying both. While many sites today use CSS to control fonts and colors, the true power of CSS is in the ability to position elements precisely rather than fudging layout with nested tables. This is the spirit of CSS. It makes for simpler pages which are easier to change, and easier for disabled users to access. This page, for instance, uses no tables, just two <div>s: one for the navbar, and one for the content. What's more, if you view this a page with a browser which supports CSS fixed positioning (Netscape 6 (Mozilla), IE5/Mac, and Safari all do) the navbar stays in the same place while the content scrolls. Previously the only way to achieve this sort of interface was through frames, which are more trouble than they're worth. Here are a few sites which show how to design in the spirit of CSS.

Simplicity

Most sites I see on the web are needlessly complex. It's hard to find what you're looking for and an overabundance of unnecessary images and superfluous elements (Flash and Java applets are often used when they are not necessary) make sites take longer to download and render. I prefer a simpler approach because it makes my website more accessible to all and more aesthetically pleasing to me.