Description

CS163: Java (CS1) No Prior Programming

Computer programming in Java for students without previous programming experience. Topics include variables, assignment, expressions, operators, booleans, conditionals, characters and strings, control loops, arrays, objects and classes, file input/output, interfaces, recursion, lists, and sorting.

CS164: Java (CS1) Prior Programming

Computer programming in Java for students with previous programming experience, not necessarily in Java. Topics include variables, assignment, expressions, operators, booleans, conditionals, characters and strings, control loops, arrays, objects and classes, file input/output, interfaces, recursion, lists, and sorting.

Personnel

CS163 (Section 001, 301)

Lecture: 10:00-10:50 pm, MWF, Johnson Hall 222

CS163 (Section 002, 102, 302)

Lecture: 2:00-2:50 pm, MWF, Natural Resources 140

Instructor

Instructor: Benjamin Say
Email: bsay@cs.colostate.edu

Office Location: COMSC 256

Office Hours:

See Office Hours Schedule

Other times by appointment

Graduate Teaching Assistants

TBA
Office Hours: Go to Help Desk
Email: _________@cs.colostate.edu

Lead Undergraduate Teaching Assistant

Ben Gillett
Email: bnjmng@cs.colostate.edu

Undergraduate Teaching Assistants


Prerequisites

MATH 124 (Logarithmic and Exponential Functions) with a C or better

Textbooks and Materials

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 (Required):

We are using zyBooks to supplement the Liang textbook. You will get zyBooks through Inclusive Access from the CSU bookstore. Then, proceed as follows:
  1. Go to the CS163 Canvas Page
  2. Click on the Assignments tab
  3. Click zyBooks1 and press the button to open it in a new window
  4. Enter the code that the bookstore sent you through Inclusive Access to subscribe.
  5. Click Subscribe
Once you have registered you can sign in to the book by browsing to www.zybooks.com. Your lab TA will guide you through this process during the first lab.

IMPORTANT: Students are required to submit their zyBooks points to Canvas. This process will be explained in lecture. Points can by moved to Canvas anytime during the semester, but MUST be done by Midnight on the Monday of Finals Week.

iClicker
iClickers will be used in class. We will be 100% using the virtual iClickers (no physical remotes). We are in a beta period with the University, so this is provided to you at no cost. Each student is required to bring a web enabled device to lecture in order to respond to iClicker questions.

Piazza (Required for announcements, but optional for posting questions):

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 the instructor. 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
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!

CS163 Lab Schedule

What Days Time Instructor Helper Where
Lab (L01)  T R  8:00am - 8:50am COMSC 215
Lab (L02)  T R  9:00am - 9:50am COMSC 215
Lab (L03)  T R  10:00am - 10:50am COMSC 215
Lab (L04)  T R  11:00am - 11:50am COMSC 215
Lab (L05)  T R  12:00pm - 12:50pm COMSC 215
Lab (L06)  T R  1:00pm - 1:50pm COMSC 215
Lab (L07)  T R  2:00pm - 2:50pm COMSC 215
Lab (L08)  T R 3:00pm - 3:50pm COMSC 215

Help Desk

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.

Help Desk Hours
Days Time Where
Times TBA

Grading

The course requires demonstration of a student’s grasp of the concepts on evaluations. Here is the grading scheme:

Activity Weight Description
Class Participation 5% iClicker
In Lab Quizzes 20% 8 quizzes worth 1%, 1%, 2%, 2%, 3%, 3%, 4%, 4%
zyBooks 20% Includes Reading, Lab Assignments, Programming Assignments
Midterm 1 10% First midterm
Midterm 2 15% Second midterm
Midterm 3 15% Third midterm
Final Exam 15%

Grading is automated for 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 is due in zyBooks!
  • 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.
  • Liang 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%

We will not assign lower grades than shown. However, your average score on exams must be ≥60% to receive a passing grade (C) in this course. Some, all, or none of the available plus/minus grades may be assigned for the course. If plus/minus grades are used, you will still not get a lower grade than shown in the table (A- is lower than A, for example, and would be awarded to students with a score in the high 80s). Assigning one type of plus/minus grade does not imply that others will be assigned. Note that CSU does not use C-, D+, or D- grades. No points will be awarded to "bump up" a grade at the end of the semester, even for students very close to the cutoff. The cutoff has to be somewhere. Please be sure to turn in all assignments on time to get as many points as possible.

Early Performance Feedback

This course participates in Early Performance Feedback. This gives students an opportunity to identify if they might need to make changes in how they are approaching the course before the drop date. Students with a course average less than 75% after the first exam will receive information from the campus Collaborative for Student Achievement office about resources to help them get a passing grade in the course. The instructor and TAs are also available to talk with any student concerned if they will get a passing grade in the course. Just ask!

Important Dates

Date Description Location
First day of lecture Jan 22 Normal Classroom
First day of Tues/Thurs Labs Jan 23 Normal Lab Room
First midterm Feb 14, 8 AM - 4 PM CSB 110
Second midterm March 13, 8 AM - 4 PM CSB 110
Third midterm April 17, 8 AM - 4 PM CSB 110
Early Final (Optional, take instead of during finals week!) May 8, 8 AM - 4 PM CSB 110
Final Exam As scheduled by the registrar. CSB 110

Midterms will be held in the CS110 lab. Timeslot (50 minute) sign up will be done through Canvas. Information on how to sign up for a time will be made available in class closer to exam time. There will be no class on the exam days.
Please see the registrar's master schedule for other important dates, such as Drop and W dates.
The final exam will be in the Computer Science Building in the 110 and 120 labs. Final exams are scheduled by the registrar. Please refer to the registrar's schedule for those dates/times.

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.

Course Workload Expectations

This is a 4 credit course (3 50-minute lectures per week plus two 50-minute labs per week). The University expects that students will spend 2-3 hours on coursework outside of class per credit hour plus 50-minutes prepping for courses with 100 minutes per week for labs. This means you can regularly expect to spend 8-12 hours per week on assignments for this course and 50 minutes for lab prep. The lab prep expectation is that students spend 25-minutes per lab to review the zyBooks assignments for the upcomming lab in advance and come with questions to the lab. Note that these are average times and academic needs vary per student.

Student Disability Center Accommodations

The instructor and course TAs are committed to assisting students with disabilities by providing accommodations prescribed by the Student Disability Center (SDC). The instructor coordinates all of the accommodations and will relay appropriate information to the TAs.

SDC is excellent in determining appropriate accommodations for students with disabilities. Some of these accommodations and notes about how we implement them are available below:

  • Exam and Quiz Accommodations such as extra time, environment, materials, transcription, and similar shall be scheduled with SDC and taken at the testing center
  • Posting of Powerpoint Slides slides in .pptx format are posted before all lectures on this course website.
  • Audio/Video recording of lectures is permitted when indicated on an SDC accomodation letter
  • Assignment Extensions are granted automatically according to the SDC letter. If you are using this accomodation, please email the instructor by the end of the extended deadline so that your zyBooks points may be synced properly. Assignment extensions will not be granted retroactively nor old assignments re-opened.
  • Note Takers assigned by SDC are most welcome (please introduce yourself, I'd love to meet you!) For assistance in finding a volunteer note taker, please post on Piazza.
  • Other Accomodations may be included on your letter, as SDC taylors accommodations for individual students. The instructor is happy to discuss your individual accomodations with you.
  • Your SDC Letter will indicate your appropriate accommodations. The instructor prefers a paper copy during the first few class meetings.