In this course we'll practice using various programming languages which are useful in Web design.
Maymester starts Wednesday, May 16 and ends Wednesday, June 6. This course will meet for four hours each day:
Lecture: | 9:15 till 10:15 AM in GSRC 306 |
Lecture: | 10:30 till 11:30 AM in GSRC 306 |
Lab: | 1:00 till 2:00 PM in room 306 or 307 |
Lab: | 2:15 till 3:15 PM in room 307 |
The last day, June 6, is our final exam.
Programming skills at the level of successfully completing CSCI 1302
Elementary knowledge of HTML
If you meet these requirements but have not finished CSCI 2720, please see me for a prerequisite override.
JavaScript
VBscript
Dynamic HTML
Cross-browser compatibility techniques
Java servlets (JSP)
ASP
PHP
XML
-- and no whining about VBscript and ASP! Microsoft happens! :-)
Programming assignments | 50% | But, you don't pass if you cannot write programs on the final. | |
In-class tests | 20%
Final exam 30%
|
Internet Programming with VBscript and JavaScript by Kathleen Halata
Web documentation on ASP, XML, PHP, JSP, etc.
Anything else I come up with (suggestions welcome!)
All assignments are individual assignments. There will be
no group projects.
You may discuss ideas about page and program design with your fellow
students. You may not share code or help others with their code.
In particular, you must not look at the source code of other students'
pages, or look at their work while they are writing code in the lab.
It is normal practice to adapt code from the text or from informational
Web sites. However, you must always give proper attribution for
adapted code in the form of comments in your Web pages.
Penalties: any suspected cases of academic dishonesty will be
pursued through the University's academic honesty program.
For unintentionally allowing code to be copied, I will ask for a zero
on the assignment. For intentionally copying code, I will ask for an F
in the course and a transcript notation.
Day | Date | Topic | Readings | |
|---|---|---|---|---|
W | May 16 | Client-side and server side scripting; the Document Object Model | Halata, Ch. 1 and 2 | |
Th | May 17 | Javascript and VBscript | Halata, Ch. 3 and 4 | |
F | May 18 | More JavaScript and VBScript | Halata, Ch. 5 and 6 | |
M | May 21 | Server-side scripting with ASP; Forms and CGIs | Halata, Ch. 7 and 8 | |
T | May 22 | Cookies and state | Halata, Ch. 9 | |
W | May 23 | ASP components; Perl; Test 1 | Halata, Ch. 10 | |
Th | May 24 | Java Server pages (JSP) | JSP Tutorial from Sun Microsystems | |
F | May 25 | Extensible Markup Language (XML) | ||
M | May 28 | Memorial Day Holiday! Have fun! | ||
T | May 29 | Database-enabled applications with ASP; Introduction to PHP | Halata, Ch. 12, 13 | |
W | May 30 | PHP and databases Test 2 | TBA | |
Th | May 31 | PHP and XML | -- | |
F | June 1 | More PHP; document object models | -- | |
M | June 4 | Dynamic HTML | -- | |
T | June 5 | Dynamic HTML | -- | |
W | June 6 | Final exam and programming party! | ||
Please check this list frequently, as I will be adding more assignments
to the list. All assignments are due at 8:00 AM.
Late homework will
be accepted!
Do not submit assignments. All assignments should be displayed on the course Web server at the URLs
http://128.192.101.200/~your-name/Secret-Directory/Assnn.html.
See below for the explanation of "Secret-Directory".
For example, the files for Assigment 1 should be named
Assn1a.html
Assn1b.html
Assn1c.html
Assn1d.html
in your public_html directory.
Assn | Due | Assignment | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Thursday, May 17 |
a:Project 1-4, Halata pp. 35-36 | c:Project 2-1, Halata p. 66 | ||||||||||||||||||||||||||||||||
2 | Friday, May 18 |
a:Project 3-1, Halata pp. 120-121 |
c:Project 3-3, Halata pp. 121-122 | ||||||||||||||||||||||||||||||||
3 | Monday, May 21 |
a:Project 5-1, Halata pp. 201-202 |
c:Project 5-3, Halata pp. 203-205 | ||||||||||||||||||||||||||||||||
4 | Tuesday, May 22 |
a:Project 6-1, Halata pp. 240-241 |
c:Project 6-3, Halata pp. 242- 243 | ||||||||||||||||||||||||||||||||
5 | Wednesday, May 23 |
Construct a page using rollover image menus to control its content. The page should consist of a navigation frame and a content frame. The navigation frame should have three menus with two menu items each. You can use PaintShop Pro, available in room 307 GSRC, to create the menu images. Clicking on a menu item should alter the document displayed in the content frame. Work from scratch rather than adapting the code we have shown in class (or any other code). You will need the HTML tags IMG, FRAME, WINDOW, and A (and perhaps more). | |||||||||||||||||||||||||||||||||
-- | Thursday May 24 | No homework! Yippee!
6 Friday, May 25 a:Project 4-1, Halata pp. 162-163
c:Project 4-3, Halata p. 164 -- Tuesday May 30
Homework Amnesty -- turn in
any missing homework for full credit (please mail bill@billnet.org to notify)
-- Wednesday May 31
No homework! Yippee!
7 Thursday May 31
Write a calendar page which allows the user to select a month
from a drop-down list and type in a year. Upon submission, the page should
show a calendar of that month and year, in an attractive table format.
The table should be on the same page as the input form, so that the user can
select a new month and year. Catch any number-format or out-of-range errors
which occur when the user enters the year. (Dates after the year 2037 may
cause out-of-range errors because Unix stores the time as a long integer,
which is 32 bits on our system.)
Initially, the page should display the current month and year. The current date
should always be displayed at the top of the page.
Hint: Start by perusing the PHP date-related functions. Initially, have
your page just display the current month and year; then add the functionality
to let the user select a month and year.
8 Friday June 1
Create an interesting and fun page using DHTML elements such
as Cascading Style Sheets and absolute positioning. This page will be graded
using Netscape 4, so you may use layers.
9 Monday June 4
Write a simple bulletin board using PHP and mySQL.
Your bulletin board program should have the following basic functionality:
Present the user with a list of message headers, where a message header
contains the author, date posted, and subject;
Allow the user to select a message from the message header list, and view the
message contents;
Allow the user to post a new message;
Allow the user to post a reply to an existing message.
Later, you may add support for discussion threads and other cool features if
you like.
A suggested data model is shown in
How to create a MySQL database. Be sure to
familiarize yourself with the
MySQL manual,
especially chapter 7 (the language reference).
An example of using an anchor tag to fake a submit to a PHP server
script is showh
here. The text of the PHP script which
receives the query is shown here.
10 Monday June 4
(Due at the end of the day) Enhance your bulletin board
program with whatever extra features you find attractive and doable.
Include thread support if at all feasible. (A new message has
a new thread ID; a reply message has the same thread ID as the
message to which it is replying. Thread support should allow the users
to view messages organized by threads, or view all the messages in the
thread belonging to a particular message.) To be continued...
| |||||||||||||||||||||||||||||||||
Please get your login name and password from me. You are encouraged to change your password.
The IP address for the Mystery Host is 128.192.101.200. It can only be accessed through ssh (secure shell) and scp (secure copy), both of which are installed on gemini and Arches.
You are responsible for not allowing your work to be copied. Please let us know if you need help following these directions (or if the directions don't make sense, which is always a possiblity).
In theory, these precautions should ensure that no-one but you and we can see your Web page.
I do not have secret directories for the following students:
-- please send me your login id on "200" and your secret directory name write away. Send this info to dme@cs.uga.edu.
I will not ask Bill to grade any student submissions for homework assignments 1 through 8 which are not in place by this Friday, June 1.
NEW RECRUITS FOR THE INTERNET: GET 'EM WHILE THEY'RE YOUNG
In a pilot program described as "the wave of the future," a California hospital and the Namezero.com domain name provider are giving new parents a domain name for their baby. The chief executive of Namezero explains: "Individuals realize domain names are a way for people to stake out a permanent identity on the Web. We're starting at ground zero with newborns," and says that a personal Internet domain name is "the single worldwide standard for finding content, people and places on the Web." (San Jose Mercury News 24 May 2001)