1 Syllabus


1.1 General syllabus

Note: click on this, and actually read it; it’s part of the syllabus:
../../SyllabusGeneral.html

1.2 Course description

This course will introduce you to programming tools that are useful for ../DataStructures , other classes, personal projects, and industry jobs.

1.2.1 Prerequisite

1.3 Textbook

Free as in freedom:
Content/tools-for-computer-scientists.pdf
The book will be updated as we progress through the semester, so make sure to re-download it regularly, i.e., the week of your current assignment.

1.4 Attendance

1.5 Lab Assignments (pre-lab and post-lab)

There will be ~14 labs. Each lab is worth a total of 100 points. Each lab assignment (except the first day) has an associated pre-lab which is part of the free lab book. The pre-lab MUST be typed. You must submit the pre-lab at the beginning of the associated lab (the minute class starts); otherwise your entire lab assignment will not be graded, and you will receive a 0 for the whole day, though it is recommended you still participate. Each lab assignment and pre-lab will be worth a combined 100 points 30 points for the pre-lab and 70 for the post-lab. Each week’s post-lab assignments are due 24 hours after the start of lab. The first day has no pre-lab assignment, so the post-lab assignment itself is worth 100 points (no pre-lab component). Pre-lab assignments are due the minute class starts, if they are not turned in complete by that time, then you get a 0 for the day.

1.6 Projects

Two 100 point projects will be assigned. One will be due about halfway through the semester and one will be due at the end of the semester. The purpose of these projects is to encourage you to study some topics in class in additional depth. I will give you a list of topics you can choose to do a project on, or you may choose a topic of your own with my approval. To encourage you to experiment on your own, these projects will be fairly open-ended, but I will do my best to be clear about what I expect from you for them.