"
Ability is what you're capable of doing. Motivation determines what you do. Attitude determines how well you do it.
"
- Lou Holtz
Purpose:
This site is being designed as a portal for current and former students
into the resources used in graduate software design courses.
Content Status:
The upper-level pages of this site are mostly descriptive and navigational. They don't have a lot of
the interesting details, except for the code page.
The lower-level pages, indicated here by indenting, are where the course detail resides. Each course page
has a lectures link that leads to one page for each lecture. Some of the content of these pages changes
each time the course is taught, partly reflecting the needs of the class and partly to track changes in current
technoloty. You can see a view of most all the pages in this site here:
AllPages.
New Pages:
One final note: eventually you will find here a new page:
AllPresentations - organized into something, I don't know what, yet.
Structure:
The site consists of three levels. Most pages at the Home and at the Home Child level contain
a title and revision date, a captioned image, a navigation bar, and contents with child links:
Page Locations are in folders below handouts folder:
Home Level and Course Level pages are located in WebPages folder.
Course Lecture pages are located in course folders in a lectures subfolder.
Presentation materials, mostly Powerpoint and Word files, are found in presentations subfolders.
Design Technology
Every visible page in this site is rendered through the contributions of four files:
An XML file with the information to be rendered. You can render this specific page, using IE 6.0
for example, by clicking on SiteDesign with an XML extension, as long as the other required files (discussed
below) are in the current directory.
An XSL file which transforms the XML file into renderable HTML. The transformation is guided by matching
specific XML tags with rules for their transformation defined by xsl:template expressions in the XSL file.
The page you are reading, like every other page in this site, is processed by
courses.xsl.
A CSS file with Cascading Styles which provides a style theme. There are separate themes for Home pages,
for Code/Lecture resource pages, and for Course descriptions. This page is styled by
HomeTheme.css.
An image (jpg, gif, or png) file, included by an anchor element created by XSL processing of an XML
image tag. The images on these pages, were acquired with digital cameras, captured as screen shots and
saved as png files, or acquired from Microsoft Office clip art folder in the office installation directory tree.
If everyone used Microsoft's Internet Explorer, version 6.0 or later, this would be the end of the design
story. XML pages can be directly rendered as HTML, using XSL and CSS files to define formats for presentation.
Separation of content from presentation formats is very effective. This site is fairly easy to maintain
because the content changes much more often than formatting themes, so all one has to do is to modify
the XML content.
However, earlier versions of IE, including 5.0 and 5.5, do not support the now standardized syntax
of XSLT. So what you are viewing requires two more steps:
Convert the XML, using XSLT and CSS files, into HTML for viewing with earlier, as well as current,
browsers. One way to do this uses the tool MSXSL.exe, which you can download from the
Microsoft Web Site. Effective documentation for its use is also
available from the Microsoft site.
In the resulting .htm files, use a text editor to effect a global replacement of all XML
extensions in file links to .htm extensions. Then save
all the htm files and css files to the web directory.
There is, of course, another advantage to using the HTML files directly. They load faster since the
conversion step has already been effected. Note that there is not a lot of perceived difference between
the two alternatives.
I use XML file references in these pages so that I don't have to perform the first step
while I am working on site contents. I simply use IE 6.0 to view the work in progress by clicking on
the XML files, directly.