Is CS 110A the right class for you?
- CS 110A is a broad introduction to fundamental concepts in computer science. Investigate how computers store and transmit information, how to solve problems with computers by designing and implementing algorithms using a programming language
(programming in Python), and how computing fits into larger social issues. It is a gentle introduction to computer science and programming for people who have never
programmed before. We will be using the Python programming language, but the concepts we cover are the same as in other programming languages.
- The only prerequisite knowledge I will assume is:
- Readiness for college-level English, or take ENGL 88 or ESL 188 before this course.
- Algebra: you need to be comfortable with order of operations, variables and functions from algebra. For example, you should know how to evaluate an expression like:
f(x) = 5 + 3 * x
when x=2, you should be able to calculate that f(2) = 11.
- Our main focus for about half of the course will be to write programs with if-statements, loops, and functions/methods. After students complete CS 110A, they should be able to do something like this:
Write a complete function/method that takes in a single numeric parameter. If the number is positive, use a loop to print a "Hello world!" message that number of times. Otherwise, print a message such as: "Error: number must be positive!"
If you already can write a program like that, then you can skip CS 110A and take CS 110B, 111B, or 131B, depending on your choice of language. If you don't know how to do something like that, then CS 110A is the right class for you.
- CS 110A is not required for most certificates or degrees, but it is
an important first step for those who have never programmed, before they take other programming courses.
- If you want to transfer and get a Bachelors Degree,
assist.org has official information about which courses transfer (articulate) between schools. For example, you can see there that SFSU wants CS majors to take CS 110A, and then learn Java (as covered in our CS 111B and 111C courses).
Class Information for Craig Persiko's CS 110A Sections:
- I will be teaching 3 sections of CS 110A for Spring 2025. All of them are face-to-face at the Ocean Campus, full-term (January 13 - May 21):
- CRN 35439 Section 003: Mondays and Wednesdays 10:10 AM - 12:00 noon in Batmale Hall room 453 (Apple MacOS Computers available in the classroom for students)
- CRN 35438 Section 002: Mondays and Wednesdays 12:10 PM - 2:00 PM in Batmale Hall room 453 (Apple MacOS Computers available in the classroom for students)
- CRN 35437 Section 001: Tuesdays and Thursdays 11:10 AM - 1:00 PM in Batmale Hall room 453 (Apple MacOS Computers available in the classroom for students)
- My classes will NOT meet on Zoom - I encourage all my students to come to class, where we will work together on practice exercises on computers in the classroom. All course material will be available online, for students to read, watch videos, and complete the activities anytime, by the due dates each week.
- You will need to use a computer so you can do homework for this class. Only a web browser is needed, so a simple computer or Chromebook is fine, but a phone is not enough - you need a full-size screen and keyboard. (A tablet with an external keyboard can work, but a Chromebook or simple computer is better.)
You may be able to borrow a chromebook and/or get wifi from CCSF. There will also be computer labs available to you on campus.
- The textbook for this class is required for your grade, and it costs $50. It is interactive, so must be used online. The link will be available after you register for the course, but it is from ZyBooks.
- Syllabus and Course Procedures are here.
- All of the course materials, assignments, etc. will be in Canvas (and in ZyBooks), so after you've registered for this course, you should see the course when you
login to Canvas between January 13 - May 21.
Miscellaneous Information: