If you can read this, you might want to skip straight to the content. Also, kindly take a moment to read my rant about Web design—especially if you’re wondering why this site looks a bit…dull.


by Ben Goren

First: I’ve completely re-written this code. Unfortunately, I haven’t yet had a chance to put a sample up on-line. I also don’t have the time to edit out all the references to said sample…so what follows is the original text, unchanged.

Not everybody is a Web designer. What’s more, not everybody who wants to run a Web site is a Web designer. People who fall into that category have two choices: learn to become a Web designer, or spend money on a person, product, or both, to design their Web site for them.

For most, the former is not practical. HTML is a fairly easy computer language to learn, especially since it’s a markup language and not a programming language (a markup language says, “make this text look this way,” while a programming language says, “if this, do that while this other thing is equal to something else”)—but even a markup language can be confusing and unforgiving to novices.

And mastering HTML is just the beginning: there’s the graphic design angle, which requires a different set of skills. As I rant about elsewhere, that’s even harder than the simple mechanics of formatting text with HTML. Once you’ve created your site, you’ve got to maintain it. What happens when you need to change that email address at the bottom of every page in the site, or if you get sick of the color scheme, or…?

There are many tools designed to assist in the creation of entire Web sites, not just individual Web pages. All of them have faults of one kind or another: the more flexible ones require more effort to learn and use; the ones that are easy to use can’t do everything the flexible ones can. Some of them are just plain bad products. I’ve yet to find one I like.

So, I wrote my own. Not from scratch, mind you—I used tools that others have already created. At the top of the list is HTML::Mason, a Perl module that woks with the Apache Web server to let a programmer commingle HTML and Perl in a very intuitive manner. (Intuitive to a programmer, of course). All the acutal content is stored in a PostgreSQL database; the Mason code extracts the pieces from the database and assembles them into pages such as the one you’re looking at right now.

Editing the content of the site involves working with a password-protected Web page. A form, similar to ones for ordering merchandise, has areas to enter a title, author, color scheme, and similar kinds of information. At the bottom is a large area to enter the text of the page.

In its current incarnation, that text must be entered in HTML format, but you only need to know a very little HTML to use it. Even this little bit of HTML could be eliminated, but at the cost of some flexibility.

It’s not hard. Here’s a before-and-after fragment:



<p>This is only a test; if it were a <strong>real</strong> emergency, the world would have ended by now.</p>

<p>``So long, and thanks for all the fish'' -- <em>Douglas Adams</em></p>



This is only a test; if it were a real emergency, the world would have ended by now.

“So long, and thanks for all the fish.” — Douglas Adams

That’s about all the HTML you need to know to use my site development software.

Many changes to the page layout can be accomplished by editing the style sheets, which can be done via the Web as well. Each page is (usually) associated with a template that dictates where various elements (headline, navigation menu, etc.) appear on the page. Significant alterations to stylesheets or templates may require the skills of a Web designer, but such changes should be infrequent. More commonly, you’d just pick from a menu of many pre-designed stylesheets and templates.

If I’ve piqued your interest, you can try things out for yourself. Visit http://sample.trumpetpower.com/ for a live site run with this software. To edit that site, visit http://sample.trumpetpower.com/edit and follow the instructions on the screen. You’ll need to use “Guest” as both the username and password. Of course, feel free to contact me at ben@trumpetpower.com if you have any questions, and especially if you’re interested in using this software on your own site.

If you visit that site, do please be aware that anybody on the ’Net can make changes to it. If you make changes, please “play nice.” If you see that somebody before you didn’t, please let me know and I’ll immediately investigate the matter. To make sure that changes don’t accumulate, the database for the site is automatically restored from the original every night, so anything you (or anybody else) does to it will last no more than a day.

You can also view (but not edit) a couple real sites that use the software. The site you’re looking at now, of course, is one. Others include http://www.artsed.org/, http://museumofmilitaryhistory.org/, and http://woodthaticould.com/.