Learning to write computer programs is a time consuming and sometimes
frustrating endeavor. I expect an
average student to spend about 8 hours per week outside of class
reading and working on programming
assignments and other class work. If you don't have the time or
dedication for such work, this class may not be for you.
There are tutors available in the ACRC in Batmale 301. They can help you with your homework, too.
CRN 73575, Tuesdays and Thursdays 10:10 - 12:00 in Batmale 453 (Ocean/Phelan campus)
Class will begin promptly at 10:10. There will be a ten-minute break at 11:00 if we're not doing an in-class exercise.
Course Prerequisite Advisories:
- Two years of high school algebra or Mathematics 60 (Intermediate Algebra) is advised.
You must be familiar with the concept of functions and variables and how to use them, as well as order of operations.
You'll find that computer programming requires a similar sort of problem solving discipline and reasoning as mathematics.
- Basic familiarity with a computer or CS 101 (Introduction to Information Systems) is
advised.
You must be familiar with the basics of how to use a computer for things like browsing the web or using
e-mail. We'll be using Linux in this class, so experience with it would be helpful, but you can
learn it as we go.
Grading Policy:
Your final score will be made up of the following components:
- 9% - Participation in exercises during class time
- 1%- Presenting a programming solution of yours to the class
- 40% - Homework assignments
- 10% - Test #1
- 10% - Test #2
- 10% - Test #3
- 20% - Final Examination
There will be three tests given in this class, in addition to the
final exam. The first two and the
assignments graded in time will be the basis for the midterm grade.
If you will not be able to take a
test when it's scheduled, you must notify me a few days before
the test to request a make-up time.
Midterm and final grades will be assigned on the following
percentage scale:
90% - 100% A
80% - 89% B
70% - 79% C
60% - 69% D
0 - 59% F
Students who do not take the final exam will be assigned a grade of "FW". An "FW" is an "F" grade that also indicates that the student did not complete the course.
Homework Assignments:
The best way to learn how to program is to do it! Homework will be
assigned about once a week.
Homework will usually be due on Thursday nights at midnight, but you should
try to complete them early, so you can ask questions and get
help. You will each
encounter problems that require more time than you anticipate to fix
-- that's the nature of programming. So think of the homeworks as due before class. Then you can ask
questions in class on the due date if necessary.
All homework submissions must include 2 major parts: the Java code
you wrote (the source file) and some sample input and output showing how your program works.
I will employ a student worker to grade homework assignments for this
class. If you have any questions or
concerns about this arrangement or a particular grading decision the
grader makes, please don't hesitate to tell me. I will be happy to review
grading decisions on request.
Homework Lateness policy:
Because of the importance of keeping up with the pace of class, late
homework will be penalized severely.
All homework assignments are due by midnight the night of the due date
specified. Late homework will be penalized 5% if it is turned in before I
go through the solution in class (the following class after it's due).
Starting the day I present the solution, late homework will be
penalized 50% You will get no credit for turning in my solution as your own. All
homework you turn in must be your own, even after we have gone through a solution in class.
- First day of class: Tuesday, August 22
- Last day to add a class: September 8
- Last day to drop a class without it appearing on transcript: September 13
- Test #1: Thursday, September 21 covering Chapters 1 (Introduction) and 2 (Fundamentals), and the
first part of Chapter 3 (If-Statements)
- Test #2: Thursday, October 19 covering Chapters 3 (Decisions) and 4 (Loops)
- Last day to drop a class: November 9
- Test #3: Thursday, November 16 covering Chapter 5 (Methods), String Manipulation (from Chapter 2), and the beginning of Chapter 6 (Arrays)
- Thanksgiving - school closed: Thursday, November 23 - Sunday, November 26
- Last regular class: Wednesday, December 14
- Final Exam: Tuesday, December 19 from 10:30-12:30 covering all of the above
- Final grades available on Web4 starting January 5, on Canvas December 21 and 22.
Cheating
Cheating of any kind will not be tolerated. It will result in a
grade of 0 on the assignment or test in
question and can be cause for a failed grade and disciplinary action,
including suspension or expulsion.
Cheating on homework assignments means copying code or answers from
someone else. Getting help from others is not cheating as long as
you're not copying their work or allowing them to copy yours. On the
exams, any collaboration or copying constitutes cheating.
Software and Computer Access
The easiest way to get started compiling and running Java programs is using
repl.it. But once you get comfortable with that, I encourage you to try one of the more professional, full-featured development environments below.
I encourage you to use Oracle's Standard Edition (SE) Java Development Kit: Java SE JDK 8. It
can be downloaded from Oracle
from here, free of charge. (Click on "Java" Download button.)
It is already installed on
the CCSF Linux and Windows systems. That means all your homework can be done on your
own computer or using the City College Linux server called "hills", or on the PC's in the ACRC computer lab in Batmale 301. By registering in this
class you will automatically be given an
account on hills, or if you already had an account, it will be
reactivated if necessary. You can access
hills from any computer that is connected to the internet.
For more information about how to use the CCSF computer systems for
your classwork, see my Computer Access
and Use Information handout
Some students prefer to use an Integrated Development Environment (IDE), such as
jGrasp or Eclipse. I
encourage you to try these out, and I'll demonstrate them in class. They are also installed in the ACRC
Computer Lab (Batmale 301).
I have put together a page of links to free
or low-cost software you might find useful (including these IDEs) at
http://fog.ccsf.edu/~cpersiko/links.html
Use of CCSF computers, including remote access, is regulated by the
CCSF Computer Usage Policy, which is found in the college catalogue
and on the web at
http://www.ccsf.edu/Policy/policy.shtml. Do not give
passwords and other sensitive information to unauthorized persons.
This means you shouldn't tell anyone
your personal passwords and you shouldn't give class account
passwords to people who aren't in this class.
Drop Procedures
Generally it is your responsibility to drop or withdraw from a class
by the final deadlines given in your
course schedule. Do not ask me to drop you; use the Web4 system, or
contact the Office of Admissions and Records to be
withdrawn from a class. If you have more than three unexplained
consecutive class absences, I may drop you
from the class. If your name is on the roll at the end of the
semester and you have stopped attending
class, you will be assigned a final grade of FW. I will not give a
late or retroactive drop or withdrawal.
Disability Accomodations
Students with disabilities who need accommodations are encouraged to contact the
instructor. Disabled Students Programs and Services (DSPS) is available to facilitate the reasonable accommodation process.
The DSPS office is located in the Rosenberg Library, Room 323 and can be reached at (415) 452-5481.
Equal Opportunity
Everyone is welcome here!
The San Francisco Community College District is committed to the principles of equal opportunity, and the prevention of discrimination and harassment in any program or activity of the District on the basis of race, color, ancestry, national origin, ethnic group identification, religion, age, gender, gender identity, marital status, domestic partner status, sexual orientation, disability or AIDS/HIV status, medical conditions, or status as Vietnam-era veteran, or on the basis of these perceived characteristics, or based on association with a person or group with one or more of these actual or perceived characteristics. If you believe you have been subject to discrimination, please contact Dr. Leilani Battiste, Title 5/EEO/ ADA/Title IX Compliance Officer at (415) 452-5053 or lbattiste@ccsf.edu.
Go to my CS 111A homepage