Technical Info
This site was initially developed with a couple of goals. The first was to minimize cost while maximizing quality. To that end, no software (beyond that which came with the computer) has been purchased in its development.
The second goal was to be as responsive as possible for all users. The use of large graphics, sound and video files was kept to a minimum in order to allow more rapid access to users without high-speed internet (DSL or cable). Further, published standards have been adhered to, and validation done using various browsers in hopes of making these pages available to the largest audience.
The table below summarizes the tools and techniques used. Following that is discussion, justification, and sometimes sermons on the decisions made in developing the site. Ideas for future site improvement and development can be found on the Maintenance page.
Development Need | Tool or Technique | Revision |
---|---|---|
Lenovo Laptop running Windows 10 Home |
Version 1709 - OS Build 16299.309 | |
NO LONGER USED |
1.5.3-1 | |
1.11.5 | ||
Notepad |
N/A | |
1.2.4 | ||
N/A N/A | ||
(X)HTML Style Sheets JavaScript Gif, Jpg files |
4.01 N/A N/A N/A | |
Various |
Various |
Development Platform
Most of the site was developed on a laptop running Windows XP with a standard package. It was cheap. It is portable.
Product Build and Packaging
As an old UNIX hand, I've got a lot of experience with "Make". When I started developing in Java, the preferred tool was "Ant". Ant's built-in directory recursion capability is the biggest advantage over most flavors of make. Operating features, platform independence and price combined to make it the right choice for this site.
Version Control / Configuration Management
I chose CVS as the version management tool. CVS compares poorly with ClearCase. The latter has a relatively intuitive graphic interface, the capability to support directory moves and good support of object deletion and renaming. CVS is also not as robust as enterprise tools like PVCS/Dimensions, or Continuus, but this "RCS++" application works fine for personal use on a small site like this. And, it is free.
HTML / Text Editor
HTML generators (Frame Maker, and tools like Word and Excel which can export HTML) are great to generate a quick-and-dirty web page, but the internet is filled with the blocks of unnecessarily formatted whitespace, invisible links and hard-to-read source created by using these tools for maintenance.
Further, to provide consistency for an entire web site, pages need common presentation navigation and other properties. These are easily supported with style sheets and JavaScript (and if you like spending money JPSs or ASPs). They are not so easily supported with most page editors.
The choice here was for consistency using inexpensive style sheets and JavaScript. The primary editor? Notepad !! Wherever a generator was used in the course of creating these pages, the HTML was stripped after generation to its essentials.
Graphics Editor
I've avoided the purchase of a graphics editor. It doesn't make sense for a blind man to buy paint and canvas. (Don't go thinking I'm blind, I'm just artistically impaired.) Where I have needed a simple graphic or wanted to make minor edits on an existing picture, I've used some of the elementary capabilities of Gimp with the (now legally available) LZW compression extensions.
Source Validation
Wherever possible, pages and scripts are compliant with the latest W3C recommendation for transitional HTML 4.01. Some pages, however, have been purposely kept in near-original form. These pages are retained for self edification, and are usually compliant with an earlier HTML version.
HTML strict was not chosen. One reason is that this site makes frequent use of a couple of non-strict features (notably the target attribute of the <A> tag). Another reason is that the strict recommendations are not fully supported by commonly used browsers (i.e. the reliance by some of the Netscape browsers on the deprecated language attribute of <script>).
Validation Bugs:
In IE 6.0.2800+, a DOCTYPE on the first line of an HTML 4.01 document forces a Times font (or causes a style sheet font to be ignored). To get around the problem, and still allow validation, each HTML 4.01 file has a comment on the first line.
The WDG HTML Validator has a problem with tags inside quoted JavaScript lines. The following (legal) line displays an error:
v.add(new Volunteer ("HELP", "<B>Unscheduled</B>"));
There are several pages on this site which use a similar construct.
Presentation
For simplicity I took the LCD approach, using (X)HTML, simple graphics files, style sheets and Java script files. The last two are used to enforce consistency and to reduce maintenance. Java script is also the current mechanism for performing calculations and repetitive operations. I've also created a simple template to more quickly create pages.
There is no use of Java Server Pages (JSP) and Active Server Pages (ASP) for a number of reasons:
- I'm not gathering information from my "customers" or working with large amounts of data (yet).
- To use them, you must know the type of server on which you are operating.
- The server needs to be available to you as an ISP customer.
Use of server pages creates a reliance on the environment in which they operate. Conversely, avoidance allows more flexibility.
Techniques
"Frames are Bad"
For various reasons, frames have been deprecated. Current HTML standards support frames only for backward compatibility. Without frames, the methods for providing a menu bar like the one on the left seemed limited to a huge table-driven mess. I (he says, sheepishly) used this mechanism in an early version.
More research showed that absolute positioning with a generic block tag produces much more maintainable source. This (using the <div> tag) is the current method for the site.
Offsetting Background
A Knights of Columbus sample site also
showed an interesting technique - a graphics file one
pixel in height repeated vertically on the screen to
provide a colored, fixed width border. I'd forgotten my
past use of a simple repeating hex image, like , until I'd seen
the Knight's site.