- From: <rev-bob@gotc.com>
- Date: 31 Jan 2000 10:59:44 -0500
- To: www-html@w3.org
> ** Original Sender: Jennifer Pereira <jperei02@ctp.com> > > Can anyone share with me their processes for web site development?? I am > specifically looking for steps procedures, requirements to accomplish a web > development project. I suppose I'd better put a disclaimer at the top of this - this is the method I've been using and evolving for a couple of years or so, and so I've gotten past the hard part. In short, it can be a lot of work to set up (especially if you're converting an existing site to this system), but the work pays off in terms of ease of maintenance, reusability of code, and uniformity of results. This is how I generate all the stuff at www.gotc.com (close to 300 pages, each of which appears as HTML and as XHTML, for a total of about 600 distinct documents) - and I can make large changes in the site by changing about four total files. First up, the ingredients. You'll need a copy of the HTML specification you'll be using, a good text editor, a good FTP client, and a copy of the freeware program called htp (at http://www.crl.com/~jnelson/htp). For the FTP client, I recommend FTP Voyager for its scripting flexibility and the ability to "synchronize up" (upload changes only) between a local directory and a directory on your server. As a good text editor, I like HTMLed Pro - syntax highlighting and hotkeys for HTML tags are always handy. Oh, yeah - grab a copy of Lynx from somewhere. I'm really tempted to force a copy of the RSACi ratings into the package, too - after all, people who filter based on these ratings have the option of banning all unrated sites, so it's in your best interest to provide proper ratings for your pages. Before doing anything, read the docs. You don't have to memorize everything, but you should have a good idea of what you can and cannot do with your tools. For instance, know that you cannot treat the Web as a WYSIWYG platform, because almost none of your visitors will have their systems set up like yours is. Remember, you can always come back to the docs when you need specifics. Now you're ready to think about the site itself. What do you want it to look like (so far as you can arrange that) and what sort of content will you have? The better you plan your structure now, the easier it will be to maintain it in the future. I was lucky enough to hit on a good strategy for GOTC early on, so I haven't had to go through a massive restructuring. This is also where you start looking for any CGI scripts you might need, working on your graphics, and basically getting all your non-HTML stuff together. Once you've got the skeleton worked out, you can start working on the flesh - so to speak. Figure out what your pages are going to look like, and start writing a generic sample of each different type of page. To refer back to GOTC for an example, I have four major types of pages - index, column, photo, and "other". Every page in each of these categories fits into the same general scheme - there's certain formatting that's common to every index page, the blurbs that describe each author are pretty standard, and so on. In fact, about all I have to fill in for each index page is the date/volume/issue data, a tearline for the "Welcome to GOTC" sentence, and a description/link to each new column. This means that I can write a generic "boilerplate" template of a page which has slots for the changing information - and that's where htp comes in. Write a generic page, with a <USE blockname> tag everywhere you have changing content, and save that as a template. Then, for every page that uses that form, refer to that template and specify each of the required blocks with this syntax: <BLOCK blockname>content</BLOCK> Hence, the htp input that gets paired with my index page template for a typical issue of GOTC looks like this: <file template="gotc.htt"> <set front="index" mind="/" inc="T" last="index44"> <block text> <set vol="III" num="2" date="January 25, 1999"> <issue> <p>Welcome to <i>Get Off The Cross!</i>, where we're trying to get our act together.</p> <p>Allow me to introduce our (semi-)regular columns:</p> <smaneblurb> <justmeblurb> <hammblurb> <p><b>This week:</b></p> <ul> <li>Mike gives a few tips on how to <ilink g="mike/mike43">stop smoking</ilink>.</li> <li>Rev. Bob takes a longing look back at the <ilink g="justme/justme36">convention</ilink> he attended last weekend. (<al href=${bcon}>Photos</a> are forthcoming.)</li> </ul> </block> Everything else on the page is inserted through the template. Hence, change the template and you can affect all the pages which use that template - which means that if I want to add a new feature to all my index pages, all I have to do is change that one template, recompile, and upload the changes. Be sure to test your template in a few different browsers to make sure it's stable - and don't forget about that copy of Lynx. The idea here is that if your template works, everything based on it ought to work - but if it breaks, everything that uses it will break, so get it right. Once you get the skeleton and the flesh figured out, you can actually start creating pages - and if you've done everything right, this is the easy part. Just apply markup to your content and associate each page with the proper template, then add a line for that page into your htp.rsp file. (The htp docs explain that in detail.) You should know enough about your structure by now that it's just a matter of marrying the content to the templates and linking it together...and really, that's about the end of the process. Rev. Robert L. Hood | http://rev-bob.gotc.com/ Get Off The Cross! | http://www.gotc.com/
Received on Monday, 31 January 2000 10:59:04 UTC