Syllabus for online CS111A Introduction to Programming with Java

Fall 2013 Schedule

Optional Orientation:         Wed August 14 5-6pm ACRC Batmale 301
Required In person final: Thu December 12 5-7pm ACRC Batmale Hall 301

Week

Dates

Topics

Due

1

8/14 - 8/19

Intro to Java Programming

Homework1 Algorithm

2

8/20 - 8/26

Enter, Compile and Run w/Output

Homework2 Haiku

3

8/27 - 9/2

Input and Variable Assignment

Homework3 Application

4

9/3 - 9/8

Mixed Expressions

Test #1

5

9/9 - 9/15

if

Homework4 if

6

9/16 - 9/22

for loop

Homework5 for loop

7

9/23 - 9/29

while loop

Homework6 while loop

8

9/30 - 10/6

Classes

Test #2

9

10/7 - 10/13

Using Java Methods

Homework7 built-in methods

10

10/14 - 10/20

Writing Java Methods

Homework8 writing methods

11

10/21 - 10/27

Strings

Homework9 Strings

12

10/28 - 11/3

Call by reference

Test #3

13

11/4 - 11/17

Planning

Homework10 planning

14

11/18 - 11/24

Arrays

Homework11 arrays

15

11/25 - 12/4

Searching

Homework12 Searching

16

12/5 - 12/12

Arrays in Memory

Final Exam

Instructor:    Charles Metzler
Office:             Batmale Hall Room 466
Phone:            (415) 239-3367
email:              cmetzler@ccsf.edu
Web page:     http://sol.ccsf.edu/~cmetzler/
Current Schedule

Advisories: Math 840

Prereqs: None

Required Text
Starting Out with Java from control structures to objects (First Custom ed for CCSF) by Gaddis  (this is preferred), OR
Starting Out with Java from control structures to objects (4th ed)
by Gaddis

Attendence / Drops / No Shows
If you do not login and submit the first assignment by the due date, you will be dropped from the class. You are required to read all discussion forum posings and submit assignments and tests. In accordance with City College rules, if you miss the equivalent of two weeks of classes and do not academically participate, you would be notified by email that you may be dropped.

Tests:
There are three online tests and they are all required to be taken by the deadline. There are NO MAKEUPS. The lowest test score will be dropped. Its is more difficult to pass this course if you miss an exam. Do not wait until the last minute to take an exam as you are responsible for unforeseen circumstances such as if a technical problem occurrs. The tests have a time limit and the timer does not stop for paues or delays. Except for the final exam, all the answers to the tests are automatically available online after the test closes, so a test cannot be taken after its closing time. Online classes are are asynchronous so students can take exams and submit homework anytime starting from the first day of the class, so please take advantage of this and take the tests before the weekend. The last test, the final exam, is in-person and must be taken on campus at CCSF 50 Phelan Avenue. Check the Syllabus and Calendar for the date and room. The final exam is required and must be taken in person.

Assignments:
There are common ways to lose points on homework that are listed in the information area of each assignment's discussion forum. Be sure to check these out before submitting homework assignments. Within a week, you should get an email notification after I grade your assignments. Students can improve their grade and resubmit an assignment only if they post a question in the discussion forum for that assignment. Resubmissions are subject to late points.

Participation is required.
Students and I will occassionally post questions which must be answered by at least one student within 48 hours or 2 school-days (M-F excluding holidays). All students who have not yet posted any responses at all to any question, will lose one point from their final average. The penalty point will be deducted for each occurrance of an unanswered question.

Where to get help?
Post all questions in the forums. There is a forum for each assignment and a Forum on Grading and Tests. You can come to my office hours if you want to talk with me face-to-face. I check the forums every Monday, Tuesday and Wednesday, and at least one of Thursday, Friday or Saturday. Remember: If you have a question about the course someone else probably has that same question and will benefit when you post it to the discussion forums. Use the class discussions for any questions that you would ask in class. You are also invited, encouraged and required to post answers to other students' questions. You could also post any resources that you want to share with the group. When you post to the class discussions, please use appropriate "Netiquette". If there are questions about how to approach an assignment use the discussion forums. Post questions about tests in the Forum on Grading and Tests. Online instructors are asked to wait a few days before responding to student questions, in order to give other students time enough to have a chance to answer and give their response the other student questions.
If I am absent for a period of more than three working days, expect an announcement with special instructions.

Grading
Tests and assignments that are not completed will be counted as zeros.
    Extra credit homework adds 1 point to the final average.
    Non-participation in discussion forums can result in a deduction of 1 point from the final average for each occurrance and deductions from assignments.
Late homework will be penalized:
    10% up to 1 week late
    20% up to 2 weeks late
    30% for 3 or more weeks
Final grades are determined as follows:
    50% The highest 2 test scores from tests #1 3
    25% Homework Average
    25% Final Exam
Standard Grading is used:
   
90-100 A
    80 - 89 B
    70 - 79 C
    60 - 69 D
    0  -  59 F 

Course Objectives:
A. Use a computer to enter, compile, and run a Java program.
B. Analyze and fix errors.
C. Write Java code using standard input and output.
D. Evaluate and accurately predict the results of numeric and Boolean expressions.
E. Write Java code with if statements and with loops.
F. Predict the results of nested control structures.
G. Design a program into modules using functions.
H. Write Java code using functions that have parameter and return values.
I. Predict the effects of using reference and value parameters.
J. Write Java code to pass and process arrays and Strings.