|
CSCI 134 - Digital Communication and Computation
An Introduction to Computer Science |
|
| Home | Lectures | Labs | Homework | Documents | CS Dept | Williams Home | |
Programming Laboratories
Room 217A in Thompson Chemistry (TCL) is the primary lab for CSCI 134. You can do all of the programming exercises on these computers. In addition, the software we will use for this course is freely available on the web if you wish to install it on your own computer. Click here for
instruction on how to download the course
software
Lab sessions will be held each week. These sessions provide a time during which your instructor can actively assist you in the development of programs. Unexcused absence from your laboratory section may result in a grade of zero for that week's lab. Lab descriptions will be handed out in advance, and you will be expected to have planned your approach to the assignment before the beginning of lab.
You will submit your laboratory programs electronically. Click here for the
lab submission instructions
Lab TAs
Here are schedule of TA hours, which includes hours for 134.
Lab Grading
Grading will typically be done by evaluating your lab submission based on three sets of criteria: how complete your code is, how well it works, and how clearly it is written. Completeness measures whether you have done a reasonable job of writing instructions to provide the desired functionality, even if the instructions you wrote do not fully work. Correctness measures whether all the desired functionality works as we expect it to. Good style is also an important quality for programs to have; it is essential to make programs readable and understandable. Over the course of the semester we will get pickier about style issues, but it is important for you to get into good habits from the very beginning.
Programming labs will be graded on the following scale:
| A+ | An absolutely fantastic submission of the sort that will only come along a few times during the semester. |
| A | A submission that exceeds our standard expectation for the assignment. The program must reflect additional work beyond the requirements or get the job done in a particularly elegant way. |
| A- | A submission that satisfies all the requirements for the assignment --- a job well done. |
| B+ | A submission that meets the requirements for the assignment, possibly with a few small problems. |
| B | A submission that has problems serious enough to fall short of the requirements for the assignment. |
| C | A submission that is significantly incomplete, but nonetheless shows some effort and understanding. |
| D | A submission that shows little effort. |
Lab Schedule
| Date | Title |
|---|---|
| [1] 2/4 | Exploring Email Protocols |
| [2] 2/11 | A Minimal Email Reader |
| [3] 2/18 | An Extended POP Client
|
| [4] 2/25 | Jabbering Aimlessly
|
| [5] 3/4 | Classy Chat
|
| [6] 3/11 | Recursive Revision
|
| [7] 4/1 | Digital Image Processing
|
| [8] 4/8 | You Can Make a Difference |
| [9] 4/15 | Huff(man)ing and Puffing
|
| [10] 4/15 | Steganography
|
| [--] 5/8-9 | Final Project --- Boggle
|