IT350 - Web and Internet Programming

Lab 04 – IT350 Designers

Introduction

This week you’ve learned about how to apply HCI principles, including those of feedback, affordances, memory, and consistency to a website. This week, we have also read about and discussed web site style (in the broad sense) and design.

For this week’s lab, you will redesign the IT350 web site to make it more attractive and functional.  When complete, we will have a competition where you judge the results. Winners from each section will receive fabulous prizes, and the grand prize winner (as chosen by the instructors) will have his or her site promoted to official IT350 web site status. 

Lab Requirements

Note that this week you are not using the web pages that you previously created.  Instead, create one new folder on your Web drive called "Lab04" (without the quotes) and store your work in that directory.

1.      Copy files: download this zipped version of the IT350 web site.  Unzip these files into your Lab04 directory.  This is not a complete dump of all the IT350 files, so some of your links will be broken.  However, verify that you can correctly access the following pages:

2.      http://www.mXXXXXX.it350.cs.usna.edu/Lab04/index.html

3.      http://www.mXXXXXX.it350.cs.usna.edu/Lab04/calendar.html

4.      http://www.mXXXXXX.it350.cs.usna.edu/Lab04/design.html

5.      Split up index.html: You want to divide index.html into at least 3 different “content” pages. For instance, you might want the course resources to be a separate page, and the course links to be a separate page. For now, you don’t need links between these pages.

6.      Create a navigation bar for index.html. This should have links to each of your “content” pages that you created above, including index.html – and you probably also want a link for the calendar. Add this navigation bar to index.html. You can place the navigation bar wherever you like, but use CSS to give some reasonable layout and positioning.

7.      Add SSI:

8.      Rename Lab04/index.html to Lab04/index.shtml.

9.      Modify Lab04/index.shtml to include your navigation bar using SSI (instead of having it actually part of index.shtml).

10.  Modify all your other content pages, including calendar.html, to also include the navigation bar.  You’ll need to rename them to end with .shtml

11.  Make sure your SSI site is working properly before you proceed.

12.  CSS for different affordances. In class we discussed the important of perceived affordances. One ramification of this is providing affordances for those with disabilities such as blindness or poor vision, for which different fonts or cues for Braille readers are helpful. CSS2 provides different media types to provide this, including those for low resolution devices and Braille readers. For this lab, you will simulate (and learn useful tools to make page printing different from screen display) as follows:  add something to your CSS file for the “print” media type that makes printing noticeably different from on-screen view (use Print Preview to verify that this works). Here is an example: http://www.w3.org/TR/CSS2/media.html#at-media-rule

13.  Redesign: Now redesign the IT350 web site that you have in your Lab04 directory. Try to make it both more attractive and more functional.  You have free rein to change the site in any way, including adding or combining pages, module a few restrictions:

14.  Essentially all the content from the old IT350 web site must be present in the new web site.

15.  You may add new content if you like, or different views of old content (e.g. to show due dates in a different way).

16.  You must make use of CSS and an external stylesheet to apply some styling. 

17.  Your final CSS must have the “print” media change discussed above.

18.  The final product must be suitable enough in taste and functionality that it could be used as the official IT350 web site.

Note that the calendar already uses a stylesheet named “style.css” (not the “styles.css” we used before).  You can modify this stylesheet if you like or create a new one.  You may also change the layout/HTML details of the calendar page, but it should still make use of some stylesheet.

19.  Goals: When complete, the IT350 website should exhibit:

20.  Improved functionality

21.  Improved appearance

22.  A consistent look

23.  Final tips:

24.  You are not required to add additional comments to course web pages beyond what is present already.

25.  Pages that validated before (index.html) must validate in your version.  Pages that did not (calendar.html) do not have to validate.

26.  You must test with more than one browser!

27.  Final links: Add a link from your default.htm page to Lab04/index.html. 

 

Your web pages must be constructed using Notepad or a similar text-only editor. The use of programs such as Microsoft Word, Microsoft Frontpage, DreamWeaver, ColdFusion, Mozilla Composer, etc. will be considered an honor offense. 

 

NOTE: some of the pages from the IT350 site (the course policy, the labs, lab guidance) were constructed with Microsoft Word.  You can modify/re-create these pages if you like (still using a text editor), but it is definitely not required.  These files are not included in the ZIP file but you can download them from the web if you like.

Extra Credit

For a nominal amount of extra credit do some/all of the following:

  1. Design such an outstanding site that your peers select you as the winner of some fabulous IT350 prizes and some nominal extra credit.
  2. In a previous year, after IT350 had its week on web design, a certain website owner contacted the course coordinator, asking why his web site had been chosen as a negative example.  That led to a bunch of discussion, which is another story. In any case, the course coordinator received the above-mentioned email one day after we had our discussion about web design.  How did the web site owner realize that his site was being discussed and contact me?  Investigate how this might have happened and write your answer on the back of your coversheet.

Deliverables

  1. Your pages should contain all of the elements described in the requirements section above.
  2. Your final websites should be in a folder called "Lab04" on the Web drive. Your instructor will assume that your web pages are viewable at http://www.mXXXXXX.it350.cs.usna.edu/Lab04/index.shtml where XXXXXX is your alpha number. You may want to check that this URL is viewable and that everything works correctly from a computer where somebody else is logged in. If you've goofed and linked to a file on your X drive, this will help you catch it!
  3. Turn in the following hardcopy at the beginning of class on the due date, stapled together in the following order (coversheet on top):
    1. A completed assignment coversheet.  Your comments will help us improve the course.
      NOTE: at top of your coversheet, write down which of your pages is affected by the “print” media CSS, and how it is affected.
    2. The first page of the output of the W3C XHTML validator, as run on the final version of:
      1. Lab04/index.shtml
        These should show that your documents correctly validated, but turn it in anyway if you can’t get your page to validate.  Note: even though you are turning in validation results for only some of your pages, all pages (including CSS) are required to validate correctly.
    3. First page of the output of the CSS validator, as run on your final CSS file. This is a different validator, see http://jigsaw.w3.org/css-validator/
    4. A printout of the source to:
      1. Lab04/nav.html (or whatever you call your navigation page)
      2. Lab04/index.shtml

Addenda:

1. A floating nav bar with SSI may not mesh well with the parts of calendar.html.  Try deleting the “width=95%” that is present in the start of each table in that file.

2. You are not required to make links to things like the Course Policy, Lab Guidance, etc. work (though you can if you want). These are relative links that would work if those files were added to your website, or if your webpage was substituted for the official IT350 web page.

3. IE error: “The XML page cannot be displayed.  Cannot view XML input using style sheet.  Please correct the error and then click the Refresh button, or try again later.”  If you get this error, try using Firefox instead.  If Firefox works fine, then you can blame it on IE bug and proceed.  If you want to try and fix it, try deleting all blank space and comments between your DOCTYPE declaration and the start <html> tag.  I found this sometimes (but not always) corrects the problem.  The problem seems to usually occur when accessing things from the file interface, not when using the web server.