CIS 15: Python Programming for Everyone#

Time:

Mondays 1:05pm to 5:10pm

Room:

Aptos Room 828 and Online

Lab:

Open Lab - 1 hour per week

Units:

4

Links:

Course Description#

Teaches Python programming for non-programmers, working professionals and the curious. No previous programming experience is required. Teaches the fundamental concepts and models of application development including the program design, data types, programming, problem solving, logic, and design techniques for event-driven programs. Provides hands-on experience with a modern development environment that is perfect for beginners. May be offered in distance-learning format.

Course Content#

1. Introduction to Python#

  • Login to Jupyterhub

  • Get familiar with Jupyter Notebook

2. Variables and Operations#

  • Understand how variables hold data

  • Use common operators

  • Use the debugger

3. Lists and Dictionaries#

  • Use a variable to hold multiple values

  • Write list and dictionary literals

  • Perform basic operations on lists and dictionaries

4. Strings and Printing#

  • Use format and the f-string

  • Write basic HTML

5. Functions#

  • Write a function

  • Understand function arguments and return values

6. Interactive Programs#

  • Define an event

  • Use a function to implement and event-driven program

7. Character Encoding#

  • Learn binary and hexadecimal

  • Convert binary data into readable words

8. Reading and Writing Files#

  • Read and write files with a program

  • Understand file handles

9. Logic and Decisions#

  • Understand conditional execution

  • Use if, elif and else

10. Loops and Loop Algorithms#

  • Write a for loop to iterate over a list

  • Use a while loop

  • Write looping algorithms

11. Data Science#

  • Identify data file formats

  • Load data using Pandas

  • Perform elementary data analysis tasks

12. Data Structures#

  • Mix lists, dictionaries and values into a data structure

  • Use a REST API

13. Classes and Objects#

  • Understand classes and instances

  • Make your own data type

Student Learner Outcomes#

  • Develop small programs that implement basic algorithmic designs.

  • Organize and document program code following the principles of software engineering.

Objectives#

  • Use primitive data types and data structures offered by the development environment.

  • Choose an appropriate data structure for modeling a simple problem.

  • Identify basic programming concepts.

  • Write simple applications that relate to a specific domain.

  • Design, implement, test, and debug a program that uses each of the following fundamental programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and the definition of functions.

  • Test applications with sample data.

  • Apply core program control structures.

Policies#

Grading Policy#

  • 60% Labs and Homework

  • 20% Midterm

  • 20% Final

Contact Me#

You are always welcome to contact me privately. Contact me privately if you’d like to discuss your grades, set up an appointment to meet outside of my usual office and lab hours, discuss an accommodation or anything else with one exception. Technical questions about class material must be asked on the class Q&A forum or in a public Pronto thread. If you ask me privately I will politely redirect you to one of those places. The three ways to contact me are:

  1. A DM in the Pronto app. I will respond ASAP. During the work week usually within a few minutes, on weekends the response will vary but will usually be the same day subject to me being awake and holding my phone.

  2. Send a message in Canvas. Canvas messages alert my phone and I will typically respond to your message on the same day or first thing the next morning.

  3. Send an email to michael.matera@cabrillo.edu. I’m the department chair so my email is quite impacted. I respond to emails within 5 days.

Assignments and Due Dates#

I believe that the best way to learn is by doing. Every week we will do an in-class lab that’s not for credit and a project that’s due the following week. The project will challenge you to apply what you learned from class and help you feel confident about the week’s material before we move on. There are just three rules to remember about assignments:

  1. You can turn in an assignment as many times as you like (even after the due date).

  2. An assignment that’s submitted after the due date is charged a 10% penalty regardless of how late or how many times it was submitted before.

  3. I will waive the late penalty if you make an arrangement with me before the due date.

What does this policy mean for you?

  • Never give up on an assignment. You will always get credit for what you have.

  • If you’re stuck, turn it in and I will give you feedback that’s meant to help you understand how to finish the assignment.

My goal is to never give up on you so that you have every chance to master the material.

Our Agreement#

We are a community of learners. In order to learn you have to be wrong some of the time. Being wrong is okay, but there are rules for how we engage with each other. In this community you are required to agree to these rules:

  1. Be present. Hear people out, feel your response and think about what you’re going to say before you reply.

  2. Listen respectfully. Showing respect commands respect. If you feel you need to challenge an idea or assumption you should understand it first.

  3. Assume positive intent. The nature of privilege is to be unaware of privilege. Do not assume that someone means harm even when they’re saying something that’s hurtful and wrong.

  4. Acknowledge impact. Take responsibility for your words and the impact they have on others. When the impact is negative do not retreat into defensiveness. It hurts to be called out. Overcoming hurt feelings shows inner strength.

There’s an epidemic of dishonest discourse in this world. I have zero tolerance for trolling, name calling, harassment or demagoguery. Don’t think I can’t spot it because I have gray hair. Any instances of disrespectful or dishonest debate will be reported to the college administration.

COVID-19 Policy#

Students must conduct an illness/health self-assessment each day they visit campus which includes the questions below. If you answer YES to any of these, you should not come to campus and should contact me for further guidance.

  • Are you currently experiencing a fever? Is your temperature 100 degrees Fahrenheit or higher?

  • Do you have a headache, chills, body aches, or fatigue? Are you experiencing any respiratory symptoms such as cough, shortness of breath, difficulty breathing, sore throat, congestion, or runny nose? Have you lost your sense of smell or taste?

  • Do you have nausea, vomiting, or diarrhea?

By attending this course, you acknowledge that you are aware of the Cabrillo College COVID-19 Prevention Plan and Safe Reopening Plan and agree to abide by the guidelines therein to preserve the safety of yourself and others. You further understand that you will be asked to leave campus if you fail to adhere to the guidelines provided.

TBA (To Be Arranged) Lab Hours#

This course meets weekly at the times shown in the Cabrillo Schedule of Classes and above. In addition each student is required to spend lab time every week in either the CIS Lab (room 830) or online using one of the online accounts issued to you. Students may choose the time and day for their TBA Lab Hours where they will work on lab assignments designed to give them practical hands-on experience and continue the learning process. These TBA lab hours are required and tracked. It is the student’s responsibility to complete the TBA lab hours, which start on Week 1 of the term. Tip: A great time to do TBA lab hours is in the CIS Lab during my STEM hours. If that is not possible, questions can always be posted on the class discussion group.

Academic Conduct#

Instructors at Cabrillo will not tolerate any forms of academic dishonesty. We do not accept remarkably similar assignments. Students who engage in violations of academic integrity (cheating, plagiarizing print or electronic sources, copying computer files, web site content) as outlined in Cabrillo’s Student Rights and Responsibilities document are subject to disciplinary action by the instructor including receiving an “F” for the assignment, being dropped from the course with a “W” or being issued an “F” for the course.

Missing Classes and Drops#

It is the student’s responsibility to officially withdraw from classes. If you miss more than two classes or two lab assignments, the instructor may drop you from the course enrollment unless prior arrangements have been made and agreed to.

Nondescrimination and Accessibility Notice#

The District is committed to equal opportunity in educational programs, employment, and all access to institutional programs and activities. The District, and each individual who represents the District, shall provide access to its services, classes, and programs without regard to national origin, religion, age, gender, gender identity, gender expression, race or ethnicity, color, medical condition, genetic information, ancestry, sexual orientation, marital status, physical or mental disability, pregnancy, or military and veteran status, or because he/she is perceived to have one or more of the foregoing characteristics, or based on association with a person or group with one or more of these actual or perceived characteristics.

Students needing accommodations should inform the instructor. As required by the Americans with Disabilities Act (ADA), accommodations are provided to insure equal access for students with verified disabilities. To determine if you qualify or if you need assistance with an accommodation, please contact the ACCESSIBILITY SUPPORT CENTER (Formerly DSPS), Room 1073 (upstairs in the Library), (831) 479-6379 or (831) 479-6370.

Student Rights and Responsibilities#

You are expected to contribute to a positive learning environment. Your responsibilities as a student include:

  • Respect for your fellow students, staff, and faculty

  • Actively participating in the learning environment

  • Taking responsibility for learning and progressing in your course

  • Requesting assistance from the instructor when needed

  • Adhere to all academic integrity principles

  • Reading and understanding the Cabrillo Student Rights and Responsibilities Handbook. (the student grievance procedure is outlined beginning on pg. 18 of the handbook).

  • Following all school policies and procedures (All policies and procedures can be found at Cabrillo’s Board Policies and Administrative Procedures page).

Safety#

Cabrillo College is committed to providing a safe and secure campus environment. The college will not tolerate acts of harassment or violence. For campus safety and security information, go to the Sheriff’s page. To report an incident or complaint, please go to the Just Report It page on the website: Just Report It.

Support#

Getting Help#

If you have questions about an assignment or any class topic please contact me using one of the two methods below:

The class Q&A forum. I check the forum twice a day on weekdays and most weekends. This is the best place to get a comprehensive answer to your question because you have me and the rest of the class as support. When you post remember to:

  1. Show us the code that you’re struggling with.

  2. Show us the error message you receive if any.

The Pronto chat app. I receive alerts on my mobile so I can answer a quick question any time of day or night (assuming I’m awake and in a condition to reply). During the workday I’ll usually answer within minutes. You might get an answer from classmates too. This is a great way to get an answer fast and, like the forum, has the benefit that the answer helps others.

Support Services#

Learning is not a solitary experience — it’s social! It’s important to know when and where to reach out to others to get help. Fortunately, Cabrillo has many resources to assist you in being successful. Review these resources below, and also look for the “Student Success Center” link on the left-menu of your Canvas courses, for additional info and links.

Cabrillo College has many programs and services designed to help you during your academic journey. You can visit the website at www.cabrillo.edu for a complete listing of support services (under the Student Services tab). Please take advantage of the services provided to you by the college.

The STEM Center#

cabrillo_robotics_2016.jpg
The Cabrillo Robotics Club

The Cabrillo Robotics Club ~ 2016

The STEM Center was created to foster the study of Science, Technology, Engineering, and Math (STEM). The STEM Center is also home to MESA, the Physics Learning Center (PLC), and the CIS/Networking Labs. During COVID, they are offering live remote tutoring via Zoom.

Computer Technology Center (CTC)#

../_images/ctc.avif
The Computer Technology Center

If you haven’t already, you should visit the Computer Technology Center (CTC) lab and get to know the place! It’s full of your classmates and tutors and other helpful staff people who can help trouble-shoot those strange computer or application oddities that are bound to happen. During COVID, the CTC is available online Monday-Saturday, and even offers evening support.

The Hub#

../_images/the_hub.png
Card image cap

The HUB is currently offering live Zoom tutoring, and provides access to a fantastic array of services, including:

Learning Differences#

I believe that Cabrillo College is for everyone and everyone has a place in college. I’m your instructor because I love technology and I want to help you love it too. We took different paths to be together in this class and I promise to honor and respect your path by listening to your individual needs and recognizing my own implicit biases.

Cabrillo is committed to equal opportunity in educational programs, employment, and all access to institutional programs and activities. Cabrillo, and each individual who represents Cabrillo, shall provide access to its services, classes, and programs without regard to national origin, religion, age, gender, gender identity, gender expression, race or ethnicity, color, medical condition, genetic information, ancestry, sexual orientation, marital status, physical or mental disability, pregnancy, or military and veteran status, or because he/she is perceived to have one or more of the foregoing characteristics, or based on association with a person or group with one or more of these actual or perceived characteristics.

Students needing academic support/accommodations should contact the instructor as soon as possible. As required by the Americans with Disabilities Act (ADA), accommodations are provided to ensure equal opportunity for students with verified disabilities. If you need assistance with an accommodation, please contact the Accessibility Support Center (ASC) at (831) 479-6379 or (831) 479-6370, located in the HUB/2nd floor of the library, room 1073.

Library#

The Library

The Cabrillo College Library offers many services, including access to textbooks and help researching assignments. The library also maintains a great Cabrillo student FAQ with many answers to common technical questions, including how to access the WiFi and your student email account.

Use the Library website to access online articles, eBooks, and streaming video 24/7, find selected free textbooks, and chat with a librarian. Please watch the 1-minute overview below:

Student Equity#

Student equity at Cabrillo College is the commitment to cultivate a culture of inclusive excellence in teaching and learning for students from minoritized communities by examining how current institutional policies, procedures, and practices can be changed to better serve and support students from minoritized communities.

The 2014-2017 Student Equity Plan established the Office of Student Equity as a hub of resources for students, faculty, and staff to practice educational justice. The 2019-2022 Student Equity Plan is an ongoing institutional effort at Cabrillo College to improve the academic, social, and psychological success of students from minoritized communities.

Financial Aid#

Cabrillo College provides several financial aid opportunities for students. For tuition and/or book assistance information, go to Cabrillo’s Financial Aid page.