IT350: Web & Internet Programming

Lab Guidance


This course will consist of 10-12 labs.  Each lab will be graded and count a percentage toward your final grade (see course policy).  Pay close attention to the guidance given on choosing a topic (your unit) and the sequencing of the labs.  Each of the sections of this course will receive the same labs, which will build consistency between the different sections.  Typically labs will be published every week and be due sometime the following week. Labs are the bulk of your work for this course: normally you will have time only to begin the lab during the assigned lab time, and will finish it for homework.

Sequence of Labs:

For the first half of the course, most of the labs will be based upon the topic that you choose now and will build upon one another.  That is, the labs will consist of web projects that will be increasingly sophisticated and complex.  You will add additional capability to your web project throughout the semester.  Labs toward the end of the semester may be more independent and not involve your chosen topic. Below are more detailed instructions for your topic.

Choosing a Topic:

CHOOSE WISELY!  The topic (unit) you choose will be one that you will have throughout the semester.  This is a chance to learn about that unit’s community, so choose something you are interested in.   Make sure it is significant enough to allow for more advanced web techniques.  You will be required to email your topic to your instructor – see the calendar for the deadline.  After that, you may only change your topic with instructor consent.

Your Task

You have two choices for picking a topic:

  • Pick a unit (ship, squadron, etc.) that you might be assigned to in the future. You are at your first unit and your collateral duty (one of them) is to manage the unit’s website. Your boss, CAPT Smitty, has a keen interest in unit morale and information dissemination. He has appointed you to the position because of your IT background. You must use all of your web and programming experience and technology to design, publish, enhance, and maintain this web site.  Good luck.

  • Pick an ECA that you are involved in. You will design a website for that ECA (it's okay if there already is one). If you pick this, bear in mind:
    1. Most lab instructions will refer to your "unit", just think of your ECA instead.
    2. Assignments will often have very specific instructions regarding events, forms, etc. that you must have on your website. These might not be things you would want if you were building a website just for your ECA. (though you can always change that after the course is over)

Event Guidance

Later in the semester you will be adding information to your web site about events that are sponsored by your unit. You will choose the specific events to include, such as:

  • Sporting events
  • Musical events
  • Military gatherings
  • Art or drama events

You will also be adding administrative capabilities to your site. Possibilities include:

  • Leave paper requests
  • Change of address
  • Anonymous submissions
  • Muster reporting/Electronic Mustering

As you make your selection, keep in mind that you will be asked through succeeding labs to enhance your web site! By the end of the semester, you will have a site that includes lists, tables, various hyperlinks, images (all kinds of them!), and forms.  Your site will have user interactive feedback (via forms) and have dynamic capabilities.  It could include a way to sell merchandise (e.g. tickets, registration, event photos, commemorative plates, unit coins, unit T-shirts, etc.) for your unit.  

Other Information:

You may not use Front Page, Dream Weaver, Microsoft Word, Mozilla Editor, ColdFusion or any other automatic HTML editor/generator for this course – to do so is an honor offense.  Plain text editors such as Notepad++, Notepad, WordPad, emacs, vi, etc. are acceptable. Ask your instructor if you are uncertain about a different option.

Lab Grading:

You should carefully consider all of the following elements when designing your web site. Labs will be graded based on the following criteria:

  1. Programming accuracy: Almost all labs will involve programming, whether html, JavaScript, or some other elements.  There are many aspects to programming accuracy, discussed below:
    1. Does it work?  Does the web page, script, or program display/function as it should?  For example, do the images or hyperlinks on a page work?  Does the dynamic JavaScript do what it should?  If you have programmed a mouse over event, does it work?
    2. Is the code appropriate?  There are accepted ways to write code.  The program may do what is expected, but the code may not be optimal.  To write 300 lines of code when five would suffice is not optimal.  To use a non-descriptive title in a web page (calling it, for example, as Front Page does, “New Page 1”) or leaving out the title completely is not acceptable coding.  If you do not include the attributes of height and width for an image, for example, the browser will display the image but will download more slowly.  We have new browsers here, which cover up many non-appropriate coding errors.  Older browsers (or different browsers) may not be so forgiving, and in web page construction you must allow for different browsers.  Non-appropriate coding may not show itself in obvious ways, but does have an effect: it may download slower, it may not work with older or different browsers, or it may affect Internet processes (such as search engine efficiency).
  2. Functional quality: A web page by design (at least most pages) is there to attract viewers or users, to convey a message or theme, and to conduct some type of business.  It is not there to sit on a server with no hits.  Therefore, the way pages are constructed and designed should facilitate the users.  Granted, some of this is subjective, but there are some basic guidelines that should be considered:
    1. Readability: If a user cannot read or see the page(s), it doesn’t have much use.  Here are some examples:
      1. Text too small to read. (Remember your commander will be reading these pages!)
      2. Background color or image covers over or blends in with text.  This is a common problem—you must be very careful when using a dark background color!
      3. Dynamic elements (such as scrolling text or images) move too fast to see
    2. Usability: Most web sites have multiple pages that one can go to using hyperlinks.  Navigation between these pages is critical!  How you do this should reflect the purpose of the site.  For many sites, each page should have a hyperlink to every other page.  Some sites are more sequential in nature and hyperlinks may be appropriate to just the page before and after (and maybe the home page).  Remember: make it easy on users.
    3. Size: Size is important in two ways.  First the size of an html file (one “page” of your web site) determines (mostly) its download time.  Tests show that if time to download is greater than about 4-6 seconds, the user loses interest.  So every particular page download time is important (and remember many use modems!).  Secondly, the physical size of a page is also important.  It is inconvenient for a user to do lots of scrolling.  So pages that go on forever are not user friendly (and too long).  Keep in mind: lots of scrolling is not good.
    4. Consistency: Are your pages consistent?  That is, will the user know that they are still in your web site?  Some consistent features should make this obvious, such as a common header or footer or perhaps a common menu.  Although there are web sites where inconsistency is a sought after quality (for example a site promoting a particularly creative video game), the vast majority of sites (and those you will create in this class) are more serious in nature and should have some consistency.
  3. Artistic quality: A web site must be appealing to the user.  This requires an understanding of actual (and potential) users (which in this class you must think about).  It is naturally also somewhat subjective, but keep these ideas in mind:
    1. Lines: Lines are useful dividers of sections and generally enhance the page provided they look nice.
    2. Images: You must decide how and where to put images on a page.  A web page without an image (i.e., a picture) is boring, but you must carefully consider their positioning.  Suppose you have three images to be placed in a particular section of a page.  Do you align them horizontally or vertically or some combination?  Do you make them the same size?  Crowding them into one corner may not look attractive.  Keep in mind as well that images should look nice (not be distorted, for example).
    3. Colors: You have lots of colors available; how you use them can enhance (or detract) from a web page.  Using different colors on text could provide emphasis.  Making each letter of a sentence a different color would not normally be very attractive.
    4. Content: Is it appropriate?
  1. Creativity: This is more subjective, but how you weave in tables, frames, forms, and images to create a visually appealing and functional web site is important.  Do you have dynamic elements that appropriately enhance the site?  Is your site appropriate to its content and purpose?