CS165: Java (CS2) Data Structures and Algorithms
Object oriented concepts, assertions, inheritance, polymorphism, algorithms
and data structures using Java.
- CS165 (Section 001)
- Lecture: 9:30-10:45pm, TR,**NOTICE CHANGE OF LOCATION** Physiology 243
- Email: bohm
- Office Location: COMSC 470
- Office Hours: Wed 1pm-2pm
- CS165 (Section 002)
- Lecture: 10:00-10:50am, MWF, ENGR 120
- Email: waker
- Office Location: COMSC 240
- Office Hours: 8-9A M-F
- Graduate Teaching Assistants
- GTA: Gareth Halladay
- Email: gareth
- Office Location: COMSC 120A
- Office Hours: Fri. 2-4
- GTA: Ryan Becwar
- Email: rbecwar
- Office Location: COMSC 120A
- Office Hours: Fri. 10-12
- Undergraduate Teaching Assistants
- UTA: Miles Blaisus
- Email: mblaisus
- Office Hours: Wed. 1-3
CS 163 or CS 164: CS1 Java Programming
MATH 160: Calculus 1 (corequisite)
Java Programming (Required):
Introduction to Java Programming (Comprehensive Edition), Daniel Liang (10th edition)
This course uses a Pearson digital product named Revel which contains important
assignments and resources, see the instructions below:
- If you already bought a Revel license for the Liang textbook for
cs163 or cs164, it should still be valid through this semester!
- If you have not bought the Revel license, the CSU bookstore is
making it available for less than the price on the Pearson website.
- If you really just want to purchase the license directly from Pearson, use this
- After purchasing the textbook, the website to access the course is
- Before making a post on Piazza about any issues with REVEL, click
here to access the FAQs and sign up instructions.
Please use your @rams.colostate.edu email when you signup with Pearson!
You are required to purchase an iClicker remote for in-class participation.
iClicker is a response system that allows you to respond to questions we pose during class, and you
will be graded on that feedback and participation. In order to receive this credit, you will need
to register your iClicker remote on Canvas by noon, August 24, 2017. See the instructions
for registering your iClicker on the resources tab.
This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and
efficiently from classmates, teaching assistants, and myself. Rather than emailing questions to the teaching staff,
I encourage you to post your questions on Piazza. If you have any problems or feedback for the developers, email
email@example.com. Piazza will be accessed via the Module tab on Canvas.
Piazza does not cost anything to students or the department. It allows students to
post questions and get answers about the following topics:
We expect to post clarifications about assignments as well as answering questions relating
to assignments. Also, we plan on handling regrade requests, look for an announcement on rules
for posting these to Piazza. Please use the existing topics we have created, do not create new ones.
There are a number of things that we prohibit on Piazza, as follows:
- Java Programming
- Linux Operating System
- Eclipse Development Tools
- Programming Assignments
- Revel Online Textbook
- Please do not post any of your assignment code on Piazza.
- No profanity, sexism, racism, or anything in bad taste, of course!
| Lecture (Sect. 001) || TR || 9:30am - 10:45am || Wim Bohm || || Phys 243 |
| Lecture (Sect. 002) || MWF || 10:00am - 10:50am || Russ Wakefield || || ENGR 120 |
| Lab (L01) || WF || 8:00am - 8:50am || Ryan Becwar || Joseph Galfand || COMSC 325 |
| Lab (L02) || WF || 9:00am - 9:50am || Ryan Becwar ||Alex Shellum || COMSC 325 |
| Lab (L03) || TR || 3:00pm -3:50pm || Gareth Halladay || Hayley Gomoll || COMSC 325 |
| Lab (L04) || MW || 11:00am - 11:50am || Miles Blaisus || Alex Shellum || COMSC 325 |
| Lab (L05) || MW || 12:00pm - 12:50pm || Miles Blaisus || Alexander Garrett || COMSC 325 |
| Lab (L06) || TR || 2:00pm - 2:50pm || Gareth Halladay || Alexander Garrett || COMSC 325 |
| Lab (L07) || MW || 3:00pm - 3:50pm || Ryan Becwar || Caleb Carlson || COMSC 325 |
The help desk is a breakout room on the north side of the COMSC 120 lab. Throughout
the day there are lab operators in COMSC 120 that can provide limited help, but during
the hours posted below a teaching assistant from this class is available to help students.
The COMSC 120 lab is open 24/7.
| Tue. || 10:00am-3:00pm || COMSC 120 |
| Tue. || 4:00pm-6:00pm || COMSC 120 |
| Wed. || 10:00am-6:00pm || COMSC 120 |
| Thu. || 10:00pm-2:00pm || COMSC 120 |
| Thu. || 3:00pm-6:00pm || COMSC 120 |
| Fri. || 10:00am- 4:00pm || COMSC 120 |
The course requires demonstration of a student’s grasp of the concepts on evaluations.
Here is the grading scheme:
| Assignments || 20% || Java Assignments |
| Quizzes || 10% || In-class and Canvas Quizzes |
| Labs || 10% || Lab Attendance and Completion |
| Programming Quizzes || 10% || In-Lab Programming Quizzes |
| Midterm 1 || 15% || First Midterm |
| Midterm 2 || 15% || Second Midterm |
| Final Exam || 20% || Comprehensive Exam |
Teaching assistants grade assignments, labs, and quizzes. If you believe you
have been graded unfairly, talk with the help desk (assignments) or your
teaching assistant (labs) first. If you cannot visit help desk, please post
to the grade complaints topic on Piazza. Grade complaints will be considered
only for two weeks immediately following when the assignment grade appears on Canvas!
Assignments will be done individually. As required by the department, we
will check for collaboration using a software tool, so do your own work!
Lab participation is strongly encouraged. A portion of the class
grade comes from successfully finishing the assigned lab work, and our previous
students have indicated that labs are the best part of this class.
Programming Quizzes will be taken during lab hours with no additional
aids. They are used to test your understanding of Java topics.
Revel is the online textbook to help you get hands-on practice
for the Java Programming topics being discussed in class and Lab.
Peer Instruction sessions are held during lectures and require you to bring
an iClicker. You should plan to bring your IClicker every day. There will not be any paper quizzes during lectures.
The assignment of letter grades will be made as follows:
| A || ≥90% |
| B || ≥80% |
| C || ≥70% |
| D || ≥60% |
| F || <60% |
In general, we will not
assign lower grades than shown; however, your average score on exams must
be ≥65% to receive a passing grade (C) in this course.
|First day of classes ||Aug. 21 |
|Last day of classes ||Dec. 8 |
|Deadline to add without override ||Aug. 27 |
|Deadline to add with override ||Sep. 6 |
|Deadline to drop without record entry ||Sep. 6 |
|Last day to withdraw ||Oct. 16 |
|Fall Break begins ||Nov. 18 |
|First midterm ||Week 6 |
|Second midterm ||Week 11 |
|Early Access Final Exam ||Dec. 8, 8am-3pm |
|Final Exam (Section 001) ||Dec. 11, 9:40am-11:40am |
|Final Exam (Section 002) ||Dec. 14, 4:10pm-6:10pm |
Midterms and the Final exam in the CS110 lab. The final exam is comprehensive.
All students taking this course are expected to participate actively. This includes asking and
responding to questions. Students are also expected to scan the announcements on the home page
and the progress page every day for updates. If an assignment changes significantly, we are
responsible for sending out an email.