This course is an introduction to programming for the World Wide Web. You will learn about topics such as:
Stepp/Miller/Kirst. Web Programming Step by Step, Second Edition. ISBN 978-1-105-57878-6. Required.
Problems and assignments will not be assigned out of this book. But the book was written for this course by the instructor and makes a useful supplement to the lectures. It contains practice materials and sample programs you can use to help you on your homework. Also, exams in this course will be open-book. The first edition of the textbook will mostly suffice but is missing a few topics and changes that we will incorporate in the class this year.
http://www.cs.washington.edu/154/
You will participate in a weekly discussion section, held on various times on Tuesdays (see MyUW for details). The TA who runs your section will grade your homework assignments. In section we will answer questions, go over common errors in homework solutions, and discuss sample problems in more detail than we can in lecture.
Short "pre-section problems" will be assigned on the course web site and due in section. You must attend section to turn these in; they cannot be turned in late nor submitted online. Completing the problems teach week earns you 2 points for that week for up to 15 points total. This means you can miss a few sections without penalty.
Every Thursday you will attend a lab session where you will solve problems on a computer with TAs available for help. Participating in your weekly lab session earns you points toward your course grade. Your lowest two (2) lab session scores will be dropped, allowing you to miss two sessions without penalty. It will not be possible to make up missed lab sessions without severely extenuating circumstances and the instructor's advance permission.
The recommended software for the course is the Firefox web browser (with Firebug add-on), and the TextPad (Windows) or Smultron (Mac) text editor. The course web site has links to download this software.
Graded work will receive categorized point values, with the following categories and their respective weights. CSE majors in the "B" section will be graded on a separate curve/scale from non-CSE-major students in the "A" section. CSE majors will also be asked to complete additional work relative to non-majors.
For non-CSE-majors, your percentage in the class maps to the 4.0 scale roughly as follows. You will get at least the grade below for the percentage shown. For CSE majors, no minimum grade is promised, but overall grades will be curved to ensure a reasonable average and median course grade overall (likely in the 3.2 - 3.4 range).
90%: at least 3.5 | 85%: at least 3.0 | 80%: at least 2.5 |
75%: at least 2.0 | 70%: at least 1.5 | 60%: at least 0.7 |
The instructor reserves the right to fail (0.0) any student who does not show up for the final exam.
Homework consists of weekly individual programming assignments and submitted electronically from the course web site. Programs will be graded on "external correctness" (behavior) and "internal correctness" (style, design, and web standard compliance). Disputes must be made within 2 weeks of receiving the grade.
Programming assignments must be turned in using the online submission system on the course web site. Assignments will not be accepted by email, FTP, instant message, posting them to a web server, or other turn-in methods without permission from your instructor or TA. It is your responsibility to ensure that your turn-in is successful and on time. The turnin system emails and displays you a receipt upon submitting your assignment. We very strongly recommend that you save your receipt for all turnins. If you have no receipt and we do not have your assignment files, you may not receive credit for your work.
Each student receives 5 free "late days", each of which allows you to submit a program up to 24 hours late without penalty. Once a student has used up all late days, each successive day that an assignment is late will result in a loss of 1 point. Regardless of how many late days you have, you may not submit a program more than 3 days after it is due or after the last day of class.
Students will not be granted extensions without highly extenuating circumstances as decided by the instructor.
Exams in this course are open-book for the Web Programming Step by Step textbook, but are closed to all other books and notes. You may use your textbook, but not handouts, printed assignment solutions, other written materials, or computing devices.
Make-up exams will not be given except in case of a serious emergency. If you must miss an exam, even if you are sick or injured, you or someone must contact the instructor before the exam. You must show evidence that you are physically unable to take the exam, such as a clearly worded doctor's note, before the exam. No make-ups will be granted for personal reasons such as travel, hardship, to ease exam week schedules, or leisure. No student will be permitted to take an exam early.
Programming assignments must be completed individually. You may discuss an assignment in general terms with other students, including a general discussion of how to approach the problem, but all code you submit must be your own. Any help you receive from classmates should be limited and should never involve details of how to code a solution. You must abide by the following:
Under our policy, a student who gives inappropriate help is equally guilty with one who receives it. Instead of providing such help to a classmate, point them to other class resources such as lecture examples, the textbook, the IPL, or emailing a TA. Do not share your solution code and ideas with others. You must take reasonable steps to ensure that your work is not copied by others, such as by making sure to log out or lock shared computers, not leaving printouts of your code in public places, and not emailing code to other students or posting it on the web or public forums.
We enforce our policies by running detection software during the quarter over all programs, including ones from past quarters. Please contact us if you are unsure whether a particular behavior falls within our policy.