When: | MW 8-9am, August 25 to October 20, 2010 |
Where: | PAI 3.14 |
Instructor: | John Edwards |
Email: | edwardsj@cs.utexas.edu |
Office Hours: | Thursday 3-4pm in the ENS Intel lab Room 1, ENS basement |
Office: | North end of ACES 2.100 by the window |
Prerequisites: | CS307, CS313E, or EE322C with a grade of at least C |
Book (required): |
Accelerated C++ by Koenig and Moo |
i>clicker (required): |
i>clicker available at the CO-OP and online |
Date | Reading | Topic | Assignments |
---|---|---|---|
Aug 25 | --- | Hello world program program1.cpp test script | |
Aug 30 | 1.1 - 1.2, 2.1 - 2.5 | strings, control statements code orig | |
Sept 1 | NO CLASS | --- | |
Sept 6 | LABOR DAY | --- | |
Sept 8 | 3.2 | vector code orig | |
Sept 13 | 4.1 | functions, references code orig | assignment1 due 8:00am |
Sept 15 | 4.2 - 4.5 | struct, file structure code | |
Sept 20 | 5.1 - 5.3 | iterators code orig | assignment2 due 8:00am |
Sept 22 | 5.4 - 5.5 | list code orig | |
Sept 27 | 6.1, 6.4 | generic algorithms code | assignment3 due 8:00am * |
Sept 29 | 8.1 - 8.2 | generic functions code | |
Oct 4 | 9.2 - 9.3, 9.5 | classes code | assignment4 due 8:00am |
Oct 6 | 10.1 - 10.3 | pointers code | |
Oct 11 | 10.4 - 10.6 | file I/O, memory management code | assignment5 due 8:00am |
Oct 13 | 13.1 - 13.2 | Inheritance code | |
Oct 18 | see below ** | STL | assignment6 due 8:00am |
Oct 20 | FINAL |
* lidarviewer is a simple viewer for lidar data
** Reading for Oct 18 are two web pages:
Type | Number | Points |
---|---|---|
Quizzes | Best 10 | 10x4 = 40 |
Assignments | 6 | 6x20 = 120 |
Final | 1 | 1x40 = 40 |
Quizzes - We will have daily quizzes at the beginning of class (really). No quiz will be given the first or last day of class, making a total of 13 quizzes. The bottom 3 quiz scores will be dropped. The quizzes will be on the daily reading assignment. This doesn't mean that you must have a perfect understanding of everything you read. It just means that you need to have a grasp of what is being talked about, why it is important, etc. Quizzes cannot be made up.
Quizzes are given using the i>clicker, which allows you to electronically respond to the quiz questions. The clickers will also be used for in-class participation. You will need to get an i>clicker from the CO-OP or elsewhere by the second class day. You're welcome to buy a used i>clicker or even borrow one from a friend. You will register your clicker remote in class on the second class day. You are responsible for bringing your clicker remote to class every day.
Assignments - There will be one programming assignment per week, for a total of six. These assignments make up the majority (60%) of the grade. Correctness is only the first step in assignment evaluation. Just as important are clarity, brevity, style and comments. Always check your code against the coding guidelines before submitting.
Assignments are due on Mondays at 8:00am. No late assignments will be accepted. I strongly recommend getting the assignment done the Friday before it is due since I check e-mail very little on Saturdays and I don't check it at all on Sundays. Assignments are graded and returned on Wednesdays. If you choose, you can fix any problems and resubmit the assignment (using the same turnin command) by the following Monday. Bring your assignment printout to class on Monday and give it to me and I will regrade the assignment and you can earn back up to 1/2 credit for each point missed.
Due to the numerous issues regarding incompatibility between compilers, operating systems, file formats, etc., on different computer systems, students are strongly advised to do all of their program development on a Unix machine. It is the student's responsibility to ensure that their projects both compile and run on the standard CS Unix machines where they will be graded. Sign up for a CS Unix account if you don't have one already. Programming assignments will be turned in with the Unix-based turnin. The web-based turnin will not work. See the Resources section below for help if you're not familiar with Unix or turnin.
Final - A final will be given the last day of class and will be worth 20% of the final grade.
Blackboard - Scores will be maintained on Blackboard.
You are required to do your own work on the assigments. Don't copy code. It's okay to talk about general concepts and algorithms, but don't share pseudocode or code. You can talk about problems you are having on assignments, but do not show code to classmates to get debugging help. Either use debugging tools or ask me for more specific help. The best way to do this is to avoid talking to others about the program while you are at the computer. If you have questions on what constitutes cheating or questions about this policy, please talk to me.
Many of the resources were developed and compiled by Jennifer Sartor, Nate Kohl and Maria Jump.