First some definitions:
Static Page
This kind of site is defined once and is more or less the same content served each time a user loads the page. It can contain any number of elements like images and mp3s (examples of Static Content), and/or Flash and JavaScript (examples of Dynamic Content). These elements are “glued together” with HTML, which is coded ahead of time using either manual typing or one of the page creation tools I list below. This type of page can use “dynamic content” but usually does NOT use “server-side scripting.” Both are defined below.
Dynamic Pages using Server-Side Scripting
This kind of site is defined by a programming language like PHP, Perl, or Active Server Pages (ASP). This computer code, and not the actual HTML page that the user sees, sits on the web server. Each time a user requests a load of your web site, the web server itself executes this special code to generate the Flash, JavaScript and HTML “glue” that is unique to each and every visitor of the site. This type of site can also utilize the web server to store information between visits, such that when a user posts a comment or makes a selection, the server stores the data and can display it to future visitors, create a shopping cart between pages, etc.
Dynamic Content using Client-Side Scripting
Dynamic content and Client Side Scripting usually refers to things like Flash, JavaScript, ActionScript, etc. These elements can be part of either a “Static Page” or a “Dynamic, Server-Side Scripted” page. Like the static pages described above, dynamic content is usually created ahead of time using manual methods or specific tools, which is almost always the case with Flash. Dynamic content is usually transient; that is, the user loads the dynamic content into their browser, “does something” with the content such as watch a video or pick a song, and then leaves the page thereby ending that session and losing the choices and changes they may have made.
When to I ‘static’?
Static pages are great if you’re building a site that should more or less stay the same for a minimum of a week or two at a time, should be more or less the same for every visitor (everyone sees the same thing), and doesn’t require a lot of user input. By “user input” I mean, posting comments, submitting their e-mail address, ordering products, etc.
When do I ‘dynamic’?
Dynamic pages are more useful for things like blogs, address collection, people posting and reading comments, and they’re pretty much essential to the e-commerce process.
If I ‘static’ when I should ‘dynamic’ am I going to have a Bad Time?
Dynamic content is very often used on both types of sites; i.e., a site can contain both static AND dynamic content… each URL or page would have its own type of content. Some people consider JavaScript or Flash to be “dynamic” and in this way, the same page can be static with “dynamic” content, but the difference between “static with dynamic content” and “dynamic page” is that the former refers to a staticly-defined server page using HTML that causes a dynamic element (ie., JavaScript or flash) to load on the CLIENT (user’s) web browser. The latter refers to pages that are dynamically created on the server before they’re even sent to the client (user).
All that technical mumbo jumbo aside, the best way to decide what is right for your site is to surf the web and find some examples.
Here are some examples, using both static and dynamic pages:
Static Pages:
http://christopherj4321.googlepages.com
http://www.tqpublishing.com
http://www.laurenweizer.com
http://www.soundintimerecords.com
Dynamic Pages with and without Dynamic Content:
http://www.christophercouture.com
http://www.networkguy.net
http://christophercouture.imagekind.com
And now for the tools:
Tools for creating Static Pages (with or without dynamic content):
Google Page Creator: http://pages.google.com/
Its Fast, Easy, and Free
Nvu: http://net2.com/nvu/
Supposed to be good, never used it. It’s free, open source, and claims to be as good as Front Page
Dreamweaver: http://www.adobe.com/products/dreamweaver/
Expensive, but the “Gold Standard” for page design
Expression Web: http://www.microsoft.com/expression/products/Web_Overview.aspx
This is the successor to Microsoft Front Page
Open Source Web Design: http://www.oswd.org/
This isn’t a design tool, per se, but is a collection of free templates to base your design on
100 Web Design Tools Article: http://www.designvitality.com/blog/2007/07/the-open-source-web-design-toolbox-100-tools-resources-and-template-sources/
It lists a bunch of other template and design tools, in addition to the ones I listed above
Tools for creating Dynamic Content:
Adobe Flash: http://www.adobe.com/products/flash/
Expensive, but standard
Open Source Flash: http://osflash.org/open_source_flash_projects
Some tools in the early stages of supporting Flash development (and similar technologies) without relying on Adobe products
Ajax Animator: http://code.google.com/p/ajaxanimator/
Promising alternative to Flash, but development is stalled. I’ve never used it
svg-edit: http://code.google.com/p/svg-edit/
Another promising way to develop vector graphics without Flash, but very young at this point
And finally,
Dynamic Page Systems:
WordPress – http://wordpress.org/
Drupal – http://drupal.org/
Joomla – http://www.joomla.org/
Mambo – http://www.mamboserver.com/
MODx – http://modxcms.com/
Moodle – http://moodle.org/
Nucleus – http://nucleuscms.org/
SilverStripe – http://www.silverstripe.com/
Tandem Server – http://tandemserver.org/
Xoops – http://www.xoops.org/
Geeklog – http://www.geeklog.net/
Lifetype – http://lifetype.net/
reBlog – http://www.reblog.org/
Serendipity – http://www.s9y.org/
WordPress – http://wordpress.org/
With the dynamic page systems, installation can be a pain sometimes, but once the system is installed, all the rest of the management of the site is done dynamically.
Here is where I will be writing an article about how to build and publish a photo blog based on WordPress, GoDaddy webhosting, and the Autofocus theme. Check back soon for more details.
