Best-practice Web Design Process

Web Design Process

I have spent a considerable amount of time investing in learning best-practices for modern web-design..
(as defined by the World Wide Web Consortium) This basically means that I can rapidly make changes to a site.

Let me break down the process

I use XHTML to structure the code on the webpage. I then use CSS (cascading style sheets), to style the XHTML, this creates the presentation. All that is left is for the client to supply the content that I plug into the XHTML.
XHTML == structure CSS == presentation CONTENT == content SCRIPTS == dynamic structure/presentation/content
It is a very modularized way of designing web-pages. By using CSS, I can change 1 line of code and the effect is an instant change throughout the entire site.

Web Programming Languages

The programming languages that I use are php, unix shell scripts, perl, python, ocaml, and javascript. I also rely and depend heavily on the open-source Apache web server. Coming from a background of computer security and linux/unix, I am very glad to go with a non-windows Apache environment. You can forget about worrying about virii and other attacks! I use Apaches .htaccess to do a number of things. One use is automatically changing all non-www urls to www urls. Another big thing it does is allow me to specify that pages that end in .htm will be processed as if they included php code. Which is how I am able to call scripts to execute from within the page, all transparent to the end-user, who cannot see the php source code, only the result.

Optimizing for speed and accessiblity

I am very much concerned with optimizing web-pages for speed and accessibility. If you view the webpage with images disabled (use firefox with extension 'web developer'), you will be surprised at how the webpage still looks pretty normal. The images I do use are mostly .png files, which are much smaller and better than any other public image format. And they are mostly 1px wide or 1px high, and using CSS I tell that image to repeat to give the effect of a much larger image.

Traffic shaping

Using the OpenBSD-powered firewall/IDS/proxy that I have in my office, I can setup traffic shaping to slow the uplink and downlink of my connection. So I slow it down to the speed of an old 28.8 modem connection and then I test the webpages to see how fast the page is displayed at that limited speed. For accessiblity, I test each webpage using the browsers IE, firefox, Opera, Netscape, Mozilla, Konquerer, Lynx, Links, Dillo, w3m, and Galeon from windows and linux OS's. The javascript I use doesn't load in the browser until a call is made to that javascript. The way I use javascript is called "unobtrusive javascript" much like AJAX.

Web Design Conclusion

Those are just some of the ways that illustrate the use of best-practice web-design. I don't put executables or scripts anywhere other than the /cgi-bin/ directory. File directory structure is very important to me, my experience with BSD operating systems has taught me to make sure there is a logical method of organizing files and directorys. We'll get into all the exciting stuff once the current site is more stable.. stuff like subdomains, SSL, chatrooms, blogs, forums, livechat support, etc., etc.. Also, believe it or not I actually enjoy getting criticisms and critiques of my work, so any suggestions, recommendations, etc. are welcome and will be dealt with in a timely fashion..

Web Design