Description
CS165: Java (CS2) Data Structures and Algorithms
Object oriented concepts, assertions, inheritance, polymorphism, algorithms
and data structures using Java.
Personnel
- CS165 (Section 001)
- Lecture: 9:00am - 10:15am MTWR CSB130
- Instructor:
Benjamin Say
- Email: bsay
- Office Location: COMSC 256
- Office Hours: TW 11:30-12:30
- Coffee Hour: R 11:30-12:30
- Undergraduate Teaching Assistants
- UTA: Tess DeMuth
- Email: demuthtc
- UTA: Jared Crouse
- Email: jaredzap
|
Prerequisites
CS 163 or CS 164: CS1 Java Programming
MATH 160: Calculus 1 (corequisite)
Textbook
Java Programming (Required):
Introduction to Java Programming (Comprehensive Edition), Daniel Liang
(10th or 11th edition)
The course textbook is available through the CSU Bookstore’s
Inclusive Access Program in partnership with Unizin Engage.
You have immediate access to the online e-text by clicking on
the “Unizin Engage” link within the course menu in Canvas.
Please note, there is a cost for the e-text. The bookstore
will charge your student account for the cost of the e-text
after the Add/Drop date. You must “opt-out” of
the Unizin Engage e-text before the Add/Drop date to avoid
bookstore charges. However, this text is required for the
course and the cost savings of the e-text can be substantial.
Please look for emails from the bookstore about ‘opting out’ as
well as charges to your student account. Once you choose to
“opt-out,” you will no longer be allowed to access the e-text
in Canvas.
Zybooks:
We are using an online tutorial from Zyante to supplement the
Liang textbook. You must purchase the tutorial directly from
Zyante (not the bookstore). Instructions for
registering with Zyante are as follows:
- Sign up at zyBooks.com
- Enter zyBook code: COLOSTATECS165SaySummer2019
- Click Subscribe
- Use the subscription code the bookstore sent you through inclusive access.
- IMPORTANT: Only make ONE zyBooks account. You may find that you need to add an e-mail to your account, you can
do so in the zyBooks account preferences.
Once you have registered you can sign in to the book by browsing
to www.zybooks.com. Please
register in time to complete the first assignment.
Mimir
This summer, we are piloting Mimir Classroom for assignment turn-in and grading.
As this is an evaluation, it will be free for all students. You will sign up using
the course code 726dab7f84 which will give you access to the course.
During this evaluation, we appreciate your feedback. Please let the instructor ot any TA know your thoughts.
Piazza:
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
team@piazza.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:
- Java Programming
- Linux Operating System
- Eclipse Development Tools
- Programming Assignments
- Unizin Online Textbook
Students are responsible for announcements that come through Piazza
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:
- Please do not post any of your assignment code on Piazza.
- No profanity, sexism, racism, or anything in bad taste, of course!
CS165 Schedule
What |
Days |
Time |
Instructor |
Helper |
Where |
Lecture (Sec. 001) |
MTWR |
9:00am - 10:15am |
Benjamin Say |
|
CSB 130 |
Lab (L01) |
MTWR |
10:30am - 11:45am |
|
|
COMSC 215 |
Lab (L02) |
MTWR |
12:00pm - 1:15pm |
|
|
COMSC 215 |
Helpdesk this Summer will be available:
Mondays 4-6
Tuesdays 1-4
Wednesdays 4-6
Thursdays 3-5
Fridays 1-4
Grading
The course requires demonstration of a student’s grasp of the concepts on evaluations.
Here is the grading scheme:
Activity |
Weight |
Description |
Java Programming | 10% | Java Programs |
Programming Quizzes | 10% | In-lab Quizzes |
Labs | 10% | Lab Attendance and Completion |
Zybooks | 10% | zyBooks |
Exam 1 | 10% | First Midterm |
Exam 2 | 15% | Second Midterm |
Exam 3 | 15% | Third Midterm |
Exam 4 | 20% | Fourth Midterm |
The instructor grades assignments, labs, and quizzes. If you believe you
have been graded unfairly, talk with the instructor.
Grade complaints will be considered
only for one week 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!
-
Course Repeat: if you are re-taking the course, please re-do and submit
a new version of your programming assignments. Simply resubmitting past submissions
is not allowed. The instructor recommends that you set asside all of your old assignments
and forget they exist until you pass the class.
-
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.
-
Unizin is the online textbook to help you get hands-on practice
for the Java Programming topics being discussed in class and Lab.
The assignment of letter grades will be made as follows:
Letter Grade |
Points |
A | ≥90% |
B | ≥80% |
C | ≥70% |
D | ≥60% |
F | <60% |
In general, we will
not assign lower grades than shown; however, your
weighted average score on exams must
be ≥65% to receive a passing grade (C) in this course.
In-Class Participation
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.