Web Development Introduction

Consider the following three things.

  • Content/Data: What does it say or show?
  • Presentation/Style: How does it look?
  • Behavior/Interaction: How does it respond to input?

These three components overlap somewhat, but the better you separate them, the easier it is to maintain a site. This is also how you tackle a large project, ideally with team members skilled in each area.

Also, keep in mind you do not want to reinvent too many wheels. If your site has more than a few assorted pages (which you can maintain by hand using a text editor, with full bragging rights) you will likely be much better off installing a suitable full-scale web server application. (Then use your hand-coding skills to customize the application to suit your needs and to troubleshoot it when it barfs.)

Fully hand-coded: http://bohodance.com (Count all four pages!)

Modified web server application (Dokuwiki): http://wiki.waggy.org/dokuwiki/econ/coffee_roast_solar (I hacked one web application into a plugin for another application to generate the graphs from wiki page content.)

The only interesting web server application I wrote and have online right now needs to be modified to work with a different database driver and to be updated to support current browser capabilities (as does bohodance.com to a lesser degree). One of the pitfalls of writing your own apps is having to fix all the bugs yourself.

Web publishing software occupies a middle ground, but often does a poor job of separating content, presentation, and behavior; putting them all together is often what the software is designed to do. This works well for some people doing small sites.

Finally, here is a short list of references. Think of these as the web's Code (as in Building Code or Fire Code).

Content: HTML, XHTML, DOM, and MySQL

Presentation: CSS Level 2, WAI AAA

Behavior: PHP, JavaScript

Here's how it all typically fits together. Your PHP code pulls data from a database and formats it as WAI-AAA XHTML, accessible and formally structured HTML. The browser reads the XHTML into a DOM data structure so it can apply your CSS2 to make the page look pretty and JavaScript to make it dance around.


Personal Tools