Welcome to the summer 2012 instance of CS 151! The course is taught by Adam Shaw, Lecturer in the Computer Science department. For majors and non-majors alike, we hope you will find this course to be a stimulating, challenging and horizon-expanding experience.
In the summer quarter, lecture is in Ryerson 251, and meets Monday, Wednesday and Friday from 1:30–3:30pm. We will not meet on Wednesday, July 4. Two hours is a long time to sit in one place on a beautiful summer afternoon; I will try to make it bearable by delivering two distinct lectures with an intermediate break, during which I will more or less insist you get up and walk around.
Each student must attend weekly lab sessions from 4–6pm on Wednesday afternoons (with the exception of July 4). Labs are held in the Computer Science Instruction Lab, commonly known as the MacLab, on the A-level (downstairs) in the Regenstein Library. At our first meeting, we will arrange a make-up time for the lab that would be on the 4th of July.
The text for the course is How to Design Programs by Felleisen et al. The full text is available free online so it is not necessary to purchase a hard copy. If, however, you would like to read the text as an actual book, it is available on campus at the Seminary Co-op Bookstore and on the Internet, new and used, at the usual online bookstores.You may use the department's computers for your work, but in the likely event that you intend to work on your own machine, you will need to download and install Racket and subversion. (Installation instructions for subversion vary by platform; we will assist you with subversion when the time comes.)
As the course gets going, the flow of questions and answers becomes steady. We will use the piazza system to help manage the traffic. You will need a piazza account to participate.
If you have any remaining questions about the course, please send
email to the instructor at
Lecture Schedule
(subject to change)
Week | Monday | Wednesday | Friday |
---|---|---|---|
1 |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
Evaluation
Your grade in this course will be computed according to the following formula:
- 15% lab exercises
- 20% homework
- 30% midterm examination
- 35% final examination
Late work will not be accepted. Our time frame is compressed and you must keep up. Exceptions to this policy will be granted only in the case of extraordinary circumstances.
Devices Off
You must power down all laptops, phones, iPods, tablets, magic wands, etc. while you are in class. Better yet, leave them home. This policy is the result of years of competing for attention with email, text messages, cat videos and the rest. Enough. I hereby win this competition by banishing the opponent. Invest in a paper notebook and a writing utensil or two, bring them with you, and take notes.
One exception: students with documented handwriting issues may turn on a laptop and open a text editor for note taking while turning off their wireless antenna. Come speak to me if you are such a student.
Academic Honesty
As the world of computer programming becomes ever vaster and the Internet becomes ever more populated with ripe fruits to copy and paste, your personal ethics are absolutely essential in maintaining the worth and integrity of your education. Remember that an honest failure is of infinitely greater value than a dishonest success. I can't amplify this enough.
College-wide honesty guidelines are here. The college's policies are always the last word, if there is any uncertainty.
The following rules of thumb summarize honesty as it pertains to this course:
- Do not copy anyone's work.
- Do not allow your work to be copied by anyone.
- Do not submit work identical to another student's.
- Document all collaboration.
- Credit your sources.
To expand on the second rule, sharing completed or partially completed work in advance of its deadline in any way, including posting to the Internet, is expressly forbidden.
When it is time to do the actual coding, writing, etc., do your own work. Your work.
Dishonest behavior will result in serious consequences.