CS200: Computer Science, Spring 2003
|
Problem Set 8:
Make a Dynamic Web SiteOut: 4 April 2003
Design Reviews: 10-15 April 2003
Due: Monday 28 April 2003 (see details below)
Web Sites Collaboration Policy - Read CarefullyFor this problem set, you will work in groups as assigned below. Unlike in previous problem sets, you should divide work among your group members in the most efficient way. It is not necessary for everyone in the group to work together on all parts of the assignment, but every student should contribute equally to the work. All students should also contribute to the overall design of your site.You are encouraged to discuss this assignment with other students in the class and ask and provide help in useful ways. You are also encouraged to seek help from people outside the class on the content, use and implementation of your site.
You may consult any outside resources you wish including books, papers, web sites and people. You may use the code from the example sites in any way you see fit. You may also incorporate any open source code you find into your project so long as you follow the licensing rules for that code, include its copyright information and credit its authors. If you use resources other than the class materials, indicate what you used along with your answer.
Teams
Team 1 (Flash Cards)
Boyd Worawannotai (cw7r@virginia.edu)
Ed Mitchell (ejm5p@virginia.edu)
Justin Pan (jap4u@virginia.edu)
Qi Wang (qw2d@virginia.edu)
Consultant: Rachel Dada (rmd3j@virginia.edu)Team 2 (Book Exchange)
Arielle Myhre (aam3m@virginia.edu)
Daniel Greene (dpg7g@virginia.edu)
Jeffrey Arrington (jda7d@virginia.edu)
Jessica Ruge (jmr9z@virginia.edu)
Sean Mays (sdm8s@virginia.edu)
Consultant: Jacques Fournier (jef9c@virginia.edu)Team 3 (Events Calendar)
Patrick Rooney (pjr2y@virginia.edu)
Ramsey Arnaoot (rma3n@virginia.edu)
Steven Marchette (sam7p@virginia.edu)
William Brand (wtb2f@virginia.edu)
Consultant: Rachel Dada (rmd3j@virginia.edu)Team 4 (Crossword Puzzle Maker)
Andrea Jacobs (amj2d@virginia.edu)
Lauren Cryan (lac4z@virginia.edu)
Lindy Brown (lcb4b@virginia.edu)
Sarah Bergkuist (srb5z@virginia.edu)
Consultant: Spencer Stockdale (sas9t@virginia.edu)Team 5
James Lee (jl6eu@virginia.edu)
Matthew Mehalso (mm4md@virginia.edu)
Timothy Shull (ts8b@virginia.edu)
Consultant: Katie Winstanley (kjw8k@virginia.edu)Team 6 (Housing)
Grace Chang (gjc5h@virginia.edu)
Salvatore Guarnieri (sg8u@virginia.edu)
Samuel Sangobowale (sos8v@virginia.edu)
Sarah Payne (srp2e@virginia.edu)
Consultant: Jacques Fournier (jef9c@virginia.edu)Team 7 (Forum for Change)
Anoop Gambhir (asg4y@virginia.edu)
Katrina Salmons (ks2wf@virginia.edu)
Patrick Daniel Lane (plane@virginia.edu)
Consultant: Katie Winstanley (kjw8k@virginia.edu)Team 8 (Restaurants)
David Madaras (dmm3j@virginia.edu)
Katie Eckerle (mke4b@virginia.edu)
Krystal Ball (kmb6j@virginia.edu)
Zachary Fleet Hill (zfh3e@virginia.edu)
Consultant: Spencer Stockdale (sas9t@virginia.edu)Team 9 (Pugwash)
Jessica Nute (jln2f@virginia.edu)
Margaret Olson (molson@virginia.edu)
Individual Projects
Andrew Connors (apc7a@virginia.edu) (Debate Team)
Nolan Madge (nrm5z@virginia.edu) (Baseball Statistics)
Consultants
Instead of lab hours for PS8, each team with three or more students has been assigned an assistant coach as a consultant (shown in parentheses at the bottom of your team list). You should view your consultant as a highly paid expert (you needn't actually pay your consultant, of course, but giving them Krispy Kreme's is encouraged) who can help a limited amount with your project. Do not place unreasonable demands on your consultant — they are students too with their own assignments and exams to worry about (some of which are even harder than CS200!). You should expect have at most two short meetings with your consultant. Use those meetings wisely to bounce design ideas off your consultant and to work out the trickiest programming issues for your site. You should definitely not expect your consultant to write any of the code for you.
In addition to your consultant, you may, of course, take advantage of Dave's office hours and schedule meetings with him, in addition to the required design review meetings.
Purpose
- Gain confidence that you can learn new languages on your own.
- Learn some useful languages for making web sites: HTML, SQL and PHP.
- Make a useful and interesting web site. I hope all groups will produce web sites that will continue to be used and developed after the course ends.
Assignment
Make an interesting dynamic web site.
Your site must be more interesting than just unchanging text pages — it must involve computation. Most sites will also involve a database (but it is not required if you think of a computationally interesting site that does not).
Your site can be anything you want (so long as it is consistent with the University's policy on public computing resources). If you have a site description listed along with your team, then the description you proposed in your email was strong enough to be a good goal for this assignment. If not, your team needs to come up with a better idea. It would be developing your original idea more fully, or something different that you are able to convince me would be worthwhile.
Your site should be as accessible to all web users. That means it should be obvious to any visitor what your site is for and how to use it. You site should be designed so it works well even for for visitors who have slow network connections (that is, its function should not depend on unnecessarily large images), small monitors with poor color contrast. You should even strive to make your site accessible to the blind (that is, it should be possible to use your site using a text-only browser).
Background
The three tools you will use to make your site are:
A simple example site is found at http://www.cs.virginia.edu/cs200/problem-sets/ps8/example/home.php3. You can download the code for the site from example.zip. A good strategy for this assignment would be to start by understanding how the example site works. You can reuse any code from that site to start making your own site. Your project sites should be much more interesting, though!
- HTML (Hypertext Markup Language) — the language used to describe web pages Schemer's Guide to HTML
- PHP (PHP: Hypertext Preprocessor) — a universal programming language that can be incorporated into web pages and is evaluated by the web server when a page is requested Schemer's Guide to PHP
- SQL (Structured Query Language) — a language for manipulating and extracting infromation from a database Schemer's Guide to SQL
Recommended reading:
- Envisioning a Site That Won't Be Featured in suck.com from Philip and Alex's Guide to Web Publishing by Philip Greenspun.
- www.useit.com — Jakob Nielsen's web usability site (how well does his site satisfy his own usability guidelines?) You should make sure your site does not make any of these Top Ten Mistakes in Web Design or Top 10 New Mistakes of Web Design.
- Other sites on the web. Visit them and judge critically how well they work. Are there interface ideas you can adopt for your site? Are there mistakes they made that you should be sure to avoid? Can you find what you are looking for quickly? Would the site work with a slow connection and no images?
- http://www.virginia.edu — Try this one without images for find out how much UVa's web developers care about blind people and people from poor countries with slow Internet access. With Internet Explorer, you can do this by selecting "Tools | Internet Options" then from the "Advanced" tab, under "Multimedia" uncheck the box for "Show Pictures")
- http://www.cs.virginia.edu — Can you guess which two popular sites were used as a basis for our design? Is it easy to find which Computer Science courses you should take next year? If you think you can do better, consider joining the CS Web Team.
- http://www.wherethestreetshavenoname.com/ — Site made by Gordon Peters and Portman Wills about their travels in Africa and South America. Portman Wills was a CS200 Assistant Coach last year.
Design Reviews
In class on Wednesday, 9 April, each team will sign up for a time slot for a design review. All team members must attend the design review.At the design review, you will describe your ideas for what your site will do and how you will build it. You will also be expected to show your progress so far.
The design review does not need to be a formal presentation, but you should prepare for it to make it as useful as possible. In particular, you should come to the design review knowing what you think the toughest problem for your project will be and having some preliminary ideas how to solve it. You should also have a plan for how you will divide the work amongst your team members, and how you will do it in a way that you know you will have something working by the due date even if you are not able to finish the most ambitious goals of your site.
Demos and Presentations
In class on Monday, 28 April, you will have an opportunity to present and demonstrate your web site. That class will be open to anyone, and you are encouraged to invite friends and relatives to see your (and your classmate's) presentations. Inviting students who might take CS200 next year is especially encouraged!Each team will get (+ 1 (* 3 (sqrt n))) minutes (where n is the number of team members) to present the motivation and idea for your website and demonstrate it.
To be eligible to present your site, you must submit a zip file containing all the files for your site to 10:55am on Monday, 28 April.
Teams that do not produce a site to demo must instead submit a final project report containing:
If you present your site, you do not need to turn in a paper project report.
- a short text description of your site
- the URL for your project site
- a URL to a zip file containing all the files in your project site
|
cs200-staff@cs.virginia.edu Using these Materials |