title: Creating the GUSE pages author: mswe613-guse@python.org split_content: true
Cooking the GUSE (pages) |
The Guide to Usability for Software Engineering is a collection of pages created by the University of Maryland, Masters of Software Engineering, Fall 98, Usability Engineering class (MSWE 613) taught by Professor Ben Schneiderman. The collection is intended for software engineers and usability engineering practitioners to find relevant resources on the Web.
The GUSE pages are a one time only online publication of sorts. Content has been provided in each of the subsections. The top page provides a short summary of each subsection. Authors for the subsection pages were given a guideline template to act as a style guide for their individual pages. The navigational controls are added later (See below). While nothing is actually enforced, the editorial board made recommendations when it appeared as though their were gross violations of the common motif for the collection.
Individual contributors were given complete freedom to write in whatever style (third person, first person, etc.) they liked, about any subject they deemed relevant, and with as many words as they deemed necessary. Discussions in class led to informal agreement about style issues such as having the text of the URL explicitly visible in each link. To this end, the editorial board largely took a hands off approach. Dr. Amy Friedlander, editor of DLib Magazine sums up this attitude succinctly: Just tell the story.
| Goals |
|
The goals for the GUSE Web page collection independent of the content were:
I believe we were able to satisfy these goals using freeware tools.
| Limitations |
|
At this point I should also mention some limitations in the current navigational motif of this collection:
| Ht2html |
|
The GUSE pages were created by an automated script called ht2html.py The script is written in an object-oriented scripting language known as Python. Python is often compared to Java or Perl and is freely available.
Ht2html.py is a script for creating and managing a collection of web pages with a similar navigational motif. Here's the source for the script. You are free to use the script for your own web pages but the authors will not assume responsibility for any unexpected results. There is a more production oriented version of ht2html in the most recent version of Python. Go to the Python web sight for more information.
Ht2html.py takes as input a template HTML file which is a file that creates a standard set of styles for section headers, colors, fonts, and graphics. The example template used for the GUSE pages was created by Jim Zahniser, (jzahnise@nova.umuc.edu).
Each page has a background image which has the GUSE lettering in a large font. This was contributed by G. V. Suresh, (Gsuresh@ifc.org). Including this background image was questionable in relation to the third goal. Since it is only one 13K file shared by all the HTML files, it seemed reasonable.
Content providers edit the template file. In the case of GUSE, each of the ten subgroups (Metrics, University, Formal Methods, etc) edited the template to contain their groups specific content.
Before running ht2html.py on files derived from the template, several small things are done to the template to prepare it for the script.
Here's the example .ht file for this page. As you can see, I've specified title and author as meta-data. Here's the .ht file for the top level page. It also contains a pagecolor meta-data directive. Valid pagecolors are: blue, red, pink, orange, purple, bluepurple, sienna, olive, green, black, and brown. Each of these color motifs has a darkshade, mediumshade, and lightshade, which are used in each page to provide heading, subheading, navigation bar background colors.
The ht2html script also reads a file called links.h. This file contains the links (with <LI> tags) of all the pages that are part of the main collection (the ones that appear on the left side of each page). The script peeks at each corresponding .ht file in the list of links to see if the file has the pagecolor meta-data tag set. If so, it shades the link in the navigation bar to match the lightshade color of the specified pagecolor motif.
Once you run the script on each .ht file in your collection, a corresponding .html file is produced.
Finally, for convenience, I maintain a UNIX Makefile which includes a make.rules file (for common rules), that maintains all of the appropriate arguments to ht2html.py as well as manages what files have been modified and need recompilation. While this might seem like overkill, the script was run hundreds of times during the process of refining the GUSE page content and style. You can get very use to just typing make install , and having all the right things happen...
Enjoy!
| Credits |
|
This page was created by:
This page was last modified on 10/17/98