San Jose State University

CS 46A - Introduction to Programming

Kathleen O'Brien

Fall 2014

Class times and location: T Th 1330 - 1445 in WSQ 109
Office Hours: TTH 1445 - 1500 in WSQ 109 and on Piazza
Email: kathleen@laughton.com

Final: Dec 17 1215 - 1430 noon
Exam dates: ?? ??

Description

Basic skills and concepts of computer programming in an object-oriented approach using Java. Classes, methods and argument passing, control structures, iteration. Basic graphical user interface programming. Problem solving, class discovery and stepwise refinement. Programming and documentation style. Weekly hands-on activity.

For the official catalog description, please visit http://info.sjsu.edu/web-dbgen/catalog/courses/CS046A.html

Prerequisites

Eligibility for Math 30 or Math 30P or instructor consent.

Textbook/Material

Cay S. Horstmann, Big Java 5th Edition. ISBN: 9781118607718 (http://horstmann.com/bigjava.html) This is a custom version designed to save you money. It is only available in the bookstore.

Videos from Intro to Programming in Java on Udacity.com (www.udacity.com)

Student Learning Outcomes

Upon successful completion of this course, students should be able to:

Course Mechanics

Laptops
You will be required to bring a wireless laptop to all classes and exams.
Homework and exam submission
You will use Codecheck (URL provided in assignments) to help test assignments
You will submit your homework and exams in Canvas
Solutions will be posted in the Canvas Modules area (in menu on the left)
 

Course Requirements

Exams
Two in-class exams (15% per exam) and a final exam (30%). Exams cannot be made up, except for reasons of illness, as certified by a doctor, or documentable extreme emergency. Makeup exams may be oral.
Programming Assignments
Two assignments per week (25%). Schedule your time well to protect yourself against unexpected problems. I suggest you ignore the official deadlines and complete the assignments 24 hours earlier. Late work is not accepted, and there is no extra credit or makeup work. All homework is due at 10:59 pm, but I will give you an hour's grace period and accept assignments until 11:59 pm. Do not ask for an additional extension because your Internet went down at 11:58. The assignment was due a hour earlier
Participation
I expect each student to be present, punctual, and prepared at every scheduled class and lab session. You will be graded on class participation via online discussion in Piazza. You are expected to post regularly either asking or answering questions. You also are expected to answer the in-class questions that will be asked in Piazza. Your grade for participation is calculated on a curve(5%)
Quizzes
There is a quiz due every night before each class meeting on the assigned reading for the that class. No curve(5%)
Labs
You must enroll for a lab section and attend all labs. You will fail the course if you don't pass the lab section. You will fail the lab and the class if you miss more than 3 labs. Provided you get a passing grade in the labs, it counts as 5% of your total grade. Please do not use up your 3 allowed misses in the first few weeks of class on non-emergencies. Last semester I had to fail several students in CS46A who missed a fourth lab due to illness, but who had already frivolously used up the allowed misses. If you miss more than three labs you are not adequately prepared for CS46B.
Time Spent
As per University policy (http://www.sjsu.edu/senate/S12-3.htm) success in this course is based on the expectation that students will spend, for each unit of credit, a minimum of forty-five hours over the length of the course for instruction or preparation/studying or course related activities.

This is a 4-unit/15-week class, so you should expect to spend at least 180 hours per semester or 12 hours per week on this class. Many students need to spend much more time.

Additional Information

Quizzes

Piazza

Clicker Questions

CS46A/B Lab Rules

Lab rules are posted here (http://cs46labs.bitbucket.org/lab-rules.html)

Grading Policy

You will receive a grade for each of the exams, the finals, the total homework performance, labs, participation in online discussion, and quizzes. Grades are obtained by weighting the scores as defined above. When a curve is used, the cutoffs are guided by the university definitions for letter grades.

Classroom Protocol

I expect you to arrive promptly for every class meeting. If you do come in late, please take a seat quietly. Do not talk on a cell phone during class. If your phone rings, turn it off or leave the room.

This is a huge room with a lot of people. I would appreciate it if you would refrain from talking to your neighbors while I am talking or while a classmate is trying to talk to me. A lot of people making tiny noises makes it very hard for me to hear.

Individual Work

All homework and exams must be your own individual work. It is ok to have general discussions about homework assignments, or read other material for inspiration. You may never copy anything from anyone without attribution. This means if you find code on Stackoverflow or another web site, you need to give the URL where you found the code so that I can look at it if necessary. You may copy from the textbook, the labs, or anything we do in class without attribution. For homeworks and exams, you may not copy anything from any other student at all, and you may not collaboratively produce results in pairs or teams.

BSCS Program Outcomes supported by this course:

(a) An ability to apply knowledge of computing and mathematics to solve problems

(b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution

(c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs

(i) An ability to use current techniques, skills, and tools necessary for computing practice

(j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices

(k) An ability to apply design and development principles in the construction of software systems of varying complexity

Miscellaneous Policies

Add Policy: I will randomly choose among add requests that I receive in an email by 2000 the day of the first class, and in the order of receipt thereafter. If there is space, I will reply to your email with an add code. You must use your add code within 12 hours and email me to confirm that you added the class, or the add code will be reassigned to someone else. In

Publicly Viewable Work: Your class work (including homework, exam, and project work) may be viewable by other students of this course. Your grades will not be viewable by others.

Copyright of Materials: All materials created by the instructor for this course, including lectures, handouts, homeworks, exams, solutions, projects, and so on, are copyrighted property of the instructor. You may transcribe or record lectures or copy course materials for the use of yourself and other students registered in this course. You may not sell or give transcriptions or recordings of lectures or copies of course materials to others without the prior written consent of the instructor.

For further greensheet information please see http://www.cs.sjsu.edu/garnishments/endotoxic

Adapted from the groundsheet of Dr. Cay Horstmann