Programming is magic, a very practical kind of magic you can make use of in art, science, business or whatever other activity interests you. This course teaches you how to read and write the structured code and data languages that can machines understand. It also teaches you how to use these language skills to tell a computer what to do and to figure out what it actually did (these are rarely the same thing on the first try!). You'll be writing programs in the Java language by the end, but you'll see a broad family of useful little languages along the way.
Lecture: Attendance is optional outside of scheduled exams, but you won't want to miss exciting interactive demonstrations and guest speakers.
Lab: Attendance in your assigned lab section is required. You'll follow TA-guided hands-on activities. You can use the machines in the lab if needed, but it's best to use our own laptop.
Homework: The bulk of the raw material of this class will come from interacting with the CodeHS website. You'll also get exposure to computing culture and draw connections to current events through readings (often in the form of videos or webpages).
Textbook: None required! If you like learning from books, we can recommend this one: http://learningprocessing.com/
Course Staff & Office Hours
Adam Smith email@example.com (Please call me "Adam" or "Professor Smith")
Office hours: Wednesdays 4pm-5pm and Thursdays 11am-noon in E2-269.
Dhawal Joharapurkar firstname.lastname@example.org [Monday labs] [Office Hours: Wednesdays 10am-11am in Graduate Student Commons (entry door next to Cafe Ivéta in the Quarry Plazza) Room 206]
Kenneth Chang email@example.com [Tuesday labs] [Office Hours: Thurs. 1-2PM in Baskin Engineering 119]
Lee Taber firstname.lastname@example.org [Wednesday labs] [Office Hours: Monday 1:30-2:30 in Social Sciences 2 305]
Abdul Jawad email@example.com [Thurdsay labs] [Office Hours: Thursday 7:00-8:00 PM in BE, Room 119]
Tiffany Thang firstname.lastname@example.org [Friday labs] [Office Hours: Wednesday 11:00AM-12:00 PM in Engineering 2 309]
Batu Aytemiz email@example.com [TA Team Lead]
Mondays, Wednesdays, and Fridays, 2:40pm-3:45pm, Classroom Unit 2
- CodeHS Homework: 35%
- Reading Homework: 10%
- Lab Activities: 20%
- Midterm Exam: 15%
- Final Exam: 20%
The mapping from scores to letter grades will be determined by a discussion among the course staff at the end of the quarter, taking into account the overall distribution of scores for students in this experimental iteration of the course.
Late work policy: Reading and CodeHS homework may be submitted/completed late for full credit up until 8am on Monday of Finals week. No late work on CodeHS past this point will be considered. Missed labs may be made up in TA office hours or in another lab section with specific TA permission for half credit. Exams may not be retaken to improve your scores.
UC Santa Cruz is committed to creating an academic environment that supports its diverse student body. If you are a student with a disability who requires accommodations to achieve equal access in this course, please submit your Accommodation Authorization Letter from the Disability Resource Center (DRC) to me privately during my office hours or by appointment, preferably within the first two weeks of the quarter. At this time, I would also like us to discuss ways we can ensure your full participation in the course. I encourage all students who may benefit from learning more about DRC services to contact DRC by phone at 831-459-2089, or by email at firstname.lastname@example.org
The Baskin School of Engineering has a zero tolerance policy for any incident of academic dishonesty. If cheating occurs, consequences may range from getting zero on a particular assignment to failing the course. In addition every case of academic dishonesty is referred to the students’ college Provost, who sets in motion an official disciplinary process. Cheating in any part of the course may lead to failing the course, suspension or dismissal from the Baskin School of Engineering, or from UCSC.
For CodeHS and reading homework, you are encouraged to find classmates and work through the assignments in the same room. You are encouraged to talk through the problems and help one another understand the requirements. However, the free-form text you enter or multiple choice options selected should represent your own knowledge. During exams, you should work alone and not attempt to communicate with other students about the exam (even when stepping out of the classroom for a moment). The course staff present can clarify the requirements for you.
The course staff is intent on setting up the course with many opportunities for you to learn from your peers and to not create unnecessary situations that might trap you into academic dishonesty.
Webcast videos of each lecture will be available here: https://webcast.ucsc.edu/ (username: cmps-5j-1 password: programming). Adam's Google Slides for each lecture will be posted below (ideally) before the beginning of each day's meeting.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.