CMPS 12A/L - Fall 2017
Introduction to Programming (Accelerated)

Web Resources
Canvas
Piazza
Programming Assignments
Lab Assignments
Examples
Slides
Webcasts

Midterm 1 - Practice Problems

Midterm 2 - Practice Problems

Final - Practice Problems

Instructions for installing Eclipse, creating projects, and creating java files.

Webcasts - user: cmps-12a, password: fall17

12A Description: Accelerated introduction to programming. Students write medium-sized programs. Topics include: functions; conditionals and loops; classes; event-driven programming and graphic user interfaces (GUIs); recursion; and arrays. Students who have no or very limited programming experience should consider courses 5J and 11 which cover the same material in two quarters. Students may not receive credit for both this course and course 11. Some prior programming experience in a language such as C, C++, Java, or C# strongly recommended.

Prerequisites: Mathematics 3 or 11A or 19A or Applied Mathematics and Statistics 3 or Applied Mathematics and Statistics/Economics 11A, or a score of 400 or higher on the mathematics placement examination (MPE). Concurrent enrollment in 12L required.

12L Description Laboratory sequence complementing topics taught in course 12A by providing training and exposure to several software development tools and practices not covered in course 12A. In addition, the lab provides an initial exposure to a second programming language to reinforce concepts from course 12A. Prerequisite(s): Concurrent enrollment in course 12A is required.

Meeting time
MWF 2:40PM – 3:45 Media Theater M110 (Directions: Map)
Instructor: Dustin Adams (homepage)
Office: E2 249B
Office Hours: Tu 2-4pm, Th 3-5pm
Email: duwadams@ucsc.edu
Phone: 831-459-1339

Teaching Assistants
Chandranil Chakraborttii (cchakrab@ucsc.edu)
Aaron Springer (alspring@ucsc.edu)
Yi Yin (yyin15@ucsc.edu)
Devashish Purandare (dpuranda@ucsc.edu)

TA Office Hours 
Chandranil - Thursday 2pm-3 (Engineering 2 room 392)
Aaron - Friday 11am-noon (Engineering 2 room 375)
Yi - Wednesday 1:30pm-2:30 (Engineering 2 2nd floor (sunny corridor) - outside room 298)
Devashish - Wednesday 5:30pm-6:30 (Baskin Engineering room 121)

Lab Sections: (Ming Ong Computer Lab - map)
A: M 12:00PM-01:00PM (Yi)
B: Tu 12:00PM-01:00PM (Yi, Dylan)
C: Tu 01:00PM-02:00PM (Aaron, Dylan)
D: W 12:00PM-01:00PM (Yi, Devashish)
E: Th 11:00AM-12:00PM (Aaron, Devashish)
F: Th 12:00PM-01:00PM (Chandranil, Dylan)
G: W 07:00PM-08:00PM (Devashish)
H: Th 09:00AM-10:00AM (Chandranil, Devashish)
I: Th 07:00PM-08:00PM (Chandranil)

MSI Tutors

Gabriel Hartman (ghartman@ucsc.edu)
Pragun Sharma (psharma5@ucsc.edu)

Monday 10:40 – 11:40 Oakes Learning Center

Monday 7:20PM-8:20 ARCENTER 202

Tuesday 9:50-10:50 Crown 104

Wednesday 4:00-5:00 Oakes Learning Center

Wednesday 12:00-1:00 ARCENTER 221

Thursday 12:00-1:00 Physical Sciences 136

Required Text: Programming in Java (Online Textbook) Lysecky, Lizarraga, Vahid
Only Available online:
1. Sign in or create an account at learn.zybooks.com
2. Enter zyBook code:
UCSCCMPS12AAdamsFall2017
3. Subscribe

 

Coursework and Evaluation for CMPS 12A:

  • Programming Assignments (5) due roughly every 2 weeks (except 1 assignment).
  • Midterm Exam 1 will be held Wednesday, October 25.
  • Midterm Exam 2 will be held Monday, November 20.
  • Final Exam will be held Wednesday, December 13 12:00–3:00pm.

 

***Latework Policy: Late assignments (even by 1 minute) will be accepted up to 3 days after the assignment due date for 80% credit; assignments will not be accepted after 3 day grace period.

 

Coursework for 12A will be weighted as follows:

  • Programming Assignments: 40%
  • Midterm Exam 1: 20%
  • Midterm Exam 2: 20%
  • Final Exam: 20%

 

Coursework and Evaluation for CMPS 12L:

  • Lab Assignments (9) due at 7 day intervals.
  • 12A Final Exam (Wednesday, December 13 12:00–3:00pm) will also count in your 12L grade.

 

Coursework for 12L will be weighted as follows:

  • Lab Assignments: 80%
  • Final Exam: 20%

 

Grading scale for both 12A and 12L

A+ 97%-100%
A 93%-96%
A- 90%-92%
B+ 87%-89%
B 83%-86%
B- 80%-82%
C+ 76%-79%
C 70%-75%
C- 67%-69%
D+ 64%-66%
D 61%-63%
D- 58%-60%
F 0%-57%

Letter grade boundaries may be lowered at my discretion in order to eliminate some borderline cases.

 

Accommodations for Students with Disabilities

If you qualify for classroom accommodations because of a disability, please get an Accommodation Authorization from the Disability Resource Center (DRC) and submit it to me in person outside of class (i.e. during office hours) within the first two weeks of the quarter. Contact DRC at 459-2089 (voice), 459- 4806 (TTY), or http://drc.ucsc.edu for more information.

 

Academic Honesty

The Baskin School of Engineering has a zero tolerance policy for any incident of academic dishonesty. If cheating occurs, consequences may range from getting zero on a particular assignment to failing the course. In addition every case of academic dishonesty is referred to the students’ college Provost, who sets in motion an official disciplinary process. Cheating in any part of the course may lead to failing the course, suspension or dismissal from the Baskin School of Engineering, or from UCSC.

 

What is cheating? In short, it is presenting someone else’s work as your own. Examples would include copying another students’ lab or programming assignment, or allowing your own work to be copied. You may discuss programs with fellow students, but your collaboration must be at the level of ideas only. You may freely give and receive help with the computer facilities, editors, the UNIX operating system, and the proper use and syntax of the Java programming language; but you may not copy, paste, email, transfer or in any way share source code. If you do collaborate (legitimately) or receive help from anyone,  you must credit them by placing their name(s) at the top of your program. Please go to https://www.ue.ucsc.edu/academic_misconduct to see the University's policy on Academic Misconduct.