CSIS 116E - Python Programming Level 1

All course content is located online in the Canvas Modules for your class.


Course Description

Introductory course in object-oriented programming using the Python programming language



Goals and Objectives

  1. Design and create algorithms for solving simple problems.
  2. Consider the language translation phases of compiling, interpreting, linking and executing, and differentiate the error conditions associated with each phase.
  3. Compare and contrast the primitive datatypes of the Python programming language; describe how each is stored in memory; and identify the criteria for selection.
  4. Apply the program development process to problems that are solved using fundamental Python programming constructs and predefined data structures.
  5. Verify program correctness through the development of sound test plans and the implementation of comprehensive test cases.
  6. Analyze and trace the execution of Python computer programs.
  7. Decompose a program into subtasks and use parameter passing to exchange information between the subparts.
  8. Differentiate between object-oriented, structured and functional programming methodologies.
  9. Analyze technical information, as well as listen effectively to, communicate orally with, and prepare memos, reports and documentation for a wide range of audiences.
  10. Investigate and assess new sources of information and learning opportunities to stay abreast of emerging information and computing technologies.
  11. List career paths related to the program of study, as well as any qualifications and/or professional certifications that may be associated with those careers.

Course Learning Outcomes

  1. Prepare a program / algorithmic design for a simple input-process-output problem.
  2. Code and implement a While loop construct for a given problem.
  3. Code and implement a For loop construct for a given problem.
  4. Create a robust test suite in support of a python program design.
  5. Implement a test module as part of the program design that will exercise a test suite.

Recommended Text

Although the online content for this course provides enough information to successfully complete the class with an "A", if you are interested in a more in-depth, computer science oriented text the following book is our recommendation.

Name Publisher Author(s) ISBN
Python Programming:
An Introduction to Computer Science
Franklin Beedle & Associates John Zelle 9781590282410 Text.jpg


How well you do in this class depends, to a certain extent to how much time you are willing to spend outside of class. Like all college courses, you should plan on spending two hours per week working outside of class for every unit the class is worth. Since this is a 3 unit class you should plan on spending 6 hours of work outside of the classroom.

If you are a good student or you are satisfied with a lower grade, you may get by with less. If you have difficulty with material, or if you want to receive an A in the course, you will have to spend more time.

In this class it would be wise to budget your time. Rather than cramming all of your studies into a two day period you should try to spend 1 to 2 hours a day reading or working on problems.

Journal / Guided Practice

Each Learning Unit of this class will have from one to several guided practice videos that you are to do. The videos will be posted in Canvas as a journal.  Basically you are to follow along with the video, recreate the project given, and make any requested changes. You are then to post your code to the appropriate journal in Canvas and answer any questions that are posted there. If a journal has more than one video, you create a new entry for each program you create. If you are not told to do something specific in the video then you are to simply recreate the last program shown.

Submitting Journals

You are to post your code as readable text within a journal entry. This means that you are NOT allowed to attach files to your entries. I need to be able to open your journal and see the code displayed in the text window. Please note that pasting your code directly from Visual Studio or other Development environments may jumble the output. It is your responsibility to make sure the journal is readable.

When Journals Are Graded

Journals are due at the end of the week they are assigned in.  You are to do the journal and submit it before attempting the lab assignment. If you do this your journal will never be late.


There will be 4 Exams given at milestone points in the semester. The exams consist of small programming problems and are designed to show your understanding of the lecture material and Python terminology.  Exams will be timed and you will be allowed to take them one time only. Each exam is worth 150 points for a total of 600 points.

Journals and Assignments

There are 19 journals and programming assignments you will be completing in this class ranging in points from 8 to 10. The journals will not be graded other than to see that you made an attempt to solve the problem presented in the video. The assignments are geared towards getting you ready for the exams and will be scored accordingly. Working hard on them will certainly serve you well. 

Programming languages for some students can be extremely challenging. I strongly suggest that you participate in the discussion board, chat room, or contact a tutor using NetTutor (see link in Canvas course menu). I am one that truly wants you to learn to be a programmer and I don't mind leading you down the path to solving the homework problems. If you are struggling then PLEASE use the tools available to you or make an appointment to meet with me online using video conferencing to help get yourself back on track.

Submitting Assignments

All assignments will be submitted using the appropriate link found within Assignments content area within in the course management system. All source code is to be submitted individually as an attachment. No zip files will be accepted. Please DO NOT email homework assignments to me. They will not be accepted through email under any circumstance and you will not receive any reply back from me.

Late Assignments

I am one who believes in giving prompt feedback. I typically grade assignments and post solutions shortly after they have been submitted. For this reason, late work WILL NOT be accepted. 

I understand that there are times when life gets in the way of your school work. If something happens to you where you are unable to participate in the class it is your responsibility to let the instructor know in a timely manner. You should treat this class like you would a job. If you disappeared from your job for two weeks without notifying someone chances are you will be fired. 


The college catalog states under student responsibilities that students are to "Diligently attend class and complete assigned course work". Therefore, you are expected to be an active participant in this class. Failure to turn in work for two consecutive weeks can lead to you being dismissed from the class.


You are expected to communicate to me in respectful courteous manner. This means that rude disrespectful emails will not be tolerated. If I receive inappropriate communications I will suspend communicating with you through the email media immediately. You will then be forced to come to my office hours for any personal communications.


You must use your MSJC email account to communicate with me. Email from accounts such as gmail tend to end up in my junk email folder and go unanswered. I pride myself in responding promptly to my students. If you do not get a response within 48 hours assume that I did not receive your email and send it again.

Academic Dishonesty

It may at times be possible for you to find a solution to your homework assignments on the web or in a book. You could probably even have someone else complete your assignments for you. please do not do this. You are only hurting yourself and the reputation of the school. I am here to help and if you are having problems then you should come and see me. I am sure that we can straighten out any difficulties that you are having.

I will be the first person to say that references are a great thing. Please use them as just that. Mt San Jacinto College does not tolerate cheating in any form. Anyone caught can expect disciplinary action including, but not limited to, a letter grade of 'F' in the course, a grade of 'F' for that particular assignment, removal, suspension, or expulsion.


The assignments in this class are written by Dr. Glenn Stevenson and are his intellectual property. Taking my assignments and posting them on anywhere on the web without my permission is a copyright violation and will be treated in as cheating in this class.

Academic Support

Academic Support is available for all students through the services provided in each campus Learning Resources Centers. Inquire at each center regarding hours of operations and specific subjects for which tutors are available. In addition, some subject area specialist tutors are available for courses through specific departments. Ask your instructor if specialized tutors are available for your individual course.

Class Schedule

All assignments are due by 11:59 P.M. on the last day of the assignment week (Sunday); except for the Final Exam which must be completed by 11:59 P.M. on Thursday, July 25, 2019. No assignments will be accepted after their due date has passed.

Week Topic Read Assignments
Week 1 Jun. 3 Getting Started Learning Unit 1 1
  Data Types Learning Unit 2 2,3
Week 2 Jun. 10 Decisions (Boolean type, if, conditional) Learning Unit3 (A,B,C,E) 4
  Decisions(ladder style if / elif ) Learning Unit3 (D,E) 5,6
      Exam 1 - Covers Data Types & Decisions
Week 3 Jun. 17 Repetition (for) Learning Uint 4(A,B,E) 7
  Repetition (while) Learning Unit 4 (C,D,E) 8,9
      Exam 2 (Covers up through iteration)
Week 4 Jun. 24 Functions Learning Unit 5 (A,B,C,E) 10
  Functions Learning Unit 5 (A-E) 11, 12
      Exam 3 - Covers Functions
Week 5 Jul. 1 Lists Learning Unit 6(A,B,C,E) 13
  Dictionaries Learning Unit 6(D,E) 14
Week 6 Jul. 8 GUI Applications Learning Unit 7 15
  Input and Events Learning Unit 8 16
Week 7 Jul. 15 More Events Learning Unit 8 17, 18
  Intro To OOP Learning Unit 9 19
Week 8 Jul. 22     Final Exam - Exam 4

How Work is Graded

  • 30% - All Directions Are Followed
  • 15% - If it compiles without error
  • 30% - If it runs to completion with proper input and output
  • 25% - Program Correctness
Grade Disputes

You have 48 hours after grades have been posted to dispute your score. After 48 hours your grade stands as it is. It is up to you to stay on top of your scores and report any errors that may have happened.

I will NOT discuss your grades with you through any electronics means. You may request a review of your score and ask for a written explanation of things you did wrong. If you want to discuss you grades further you will need to make an appointment to see me during my office hours. Please come prepared with all of the disputed material.

Course Grading

21 Coding Journals........................190 pts. 4 Exams.......600 pts. ea.
18 Coding Assignments.........................200 pts.  
Total Points Possible: 990 pts.
Your grade is determined by your final score divided by the total points possible.
Grades: A > 89%  B > 79%  C > 69%  D > 59%  F < 59%

Late Assignments

No Extensions

All assignments must be completed by 11:59 P.M. on the due date listed for the assignment under the Due Date column in the Course Schedule section of the Syllabus. NO LATE ASSIGNMENTS WILL BE ACCEPTED without extenuating circumstances. “I had to work,” “I was sick,” or “I didn’t understand the instructions” are NOT extenuating circumstances. Hospitalization or death of an immediate family member are, but will require supporting evidence. This does not exempt you from completing any assignment which MUST be submitted by the last day of the class.

Note: Due Dates for all Assignments, Exams and/or Quizzes are listed in the Syllabus for this class.

Table of Contents

Student Drop Policy

Any student who fails to complete three or more assignments, exams or quizzes may be dropped from the course by the instructor.

Table of Contents

Getting Help

I am here to support you to the best of my ability in order to help ensure your success in this class. The best way for us to communicate is via email using the following address:

BBennett@msjc.edu -- be sure that “CSIS 116E” is the Subject of your email so that it won't get lost amongst my spam mail. Also, please include the section number of your class so that I can locate your student information quicker. The Email Subject line format is explained in the CIS Email Policy.

Table of Contents

Instructor's Regular Effective Contact Policy

For quickest response to questions or problems regarding this course, students should always send me an email using the format specified in the CIS EMAIL POLICY to the email address listed in the instructor box at the top of the Syllabus.

When emailing me during my stated online office hours, which can be found by clicking on the “Hours” link within the Instructor's box of this course, I will usually respond within the same day - depending on my student case load for that particular day. Students are always responded to on a first come first served basis.

When emailing me outside of my posted office hours, when posting to a discussion thread, or when submitting an assignment, students can expect that they will receive an appropriate response, when required, within 48 hours of the post or submission (Monday thru Thursday at 5:00 P.M.). Emails received after Thursday at 5:00 P.M. will be responded to on the following Monday.

To schedule a face-to-face meeting during the posted face-to-face office hours or to request synchronous contact via: virtual office, by telephone, or IM (Instant Messaging); please email your request so that we can schedule a mutually convenient meeting time.

From time to time, as it is deemed necessary, contact will be initiated with you, individually or jointly, via: email, Canvas Announcements, or Discussion Board posts to help keep you informed and up-to-date regarding your progress or status in this course. Be sure that you read all Announcements I post on Canvas and check your MSJC email on a daily basis. Please click "Reply" when responding to an email I send you so that my email message is included in your email response. That way I can easily keep track of what our discussion thread pertains to.

Table of Contents

Plagiarism, Cheating, and Stealing Policies (Academic Integrity)

  • Any student who plagiarizes the work of any other person will be given a zero on any and all assignments where plagiarism has been utilized.
  • Any student caught cheating on a quiz or final exam will receive a zero for quiz or final exam.
  • Any student caught removing items from the classroom including but not limited to: lab materials and tools, without authorization, will be dropped from the course and given an automatic "F".

For more details on plagiarism and cheating, please review the MSJC Student Conduct Web Resources page.

Table of Contents

Learning Environment

All students are entitled to an environment that encourages learning. If a student behaves in a manner that negatively affects other class members, he or she is guilty of disruptive behavior. Such behavior will be addressed in a manner consistent with school policy.

In a face-to-face class students should turn off cell phones and refrain from speaking when others are already talking.

In an online class students should follow the rules of netiquette when posting to discussion forums or communicating via Canvas Messaging.

Table of Contents

Need Tutoring?

Tutoring for some Business & CIS classes including Internet Authoring, Programming, Networking and Microsoft Office applications is available online.

  1. Lab/tutor schedules and access can be found by clicking on the Help button "?" in Canvas.
  2. Under the Other Resources heading click on the Get Tutor Help link.
  3. On the screen that appears click the link in the Pisces (MSJC Peer Tutoring) box. It reads: "There is # groups with faculty or staff available."
  4. On the next screen, click on the link for MSJC LRC Online Tutor.
  5. Read the instructions on the Welcome to MSJC's LRC Online Tutoring! screen.

For help getting tutoring, contact the MSJC Learning Resource Center.

Table of Contents

MSJC Learning Resource Centers

Check out the MSJC Learning Resource Centers! Academic Support is available for all students through the services provided in the Learning Resource Centers on each campus. Inquire at each center regarding hours of operations and specific subjects for which tutors are available. In addition, some subject area specialist tutors are available for courses through specific departments. Ask your instructor if specialized tutors are available for your individual course.

Table of Contents

Disability Statement

Mt. San Jacinto College abides by the American with Disabilities Act and Section 504 of the Rehabilitation Act of 1973 that prohibits federal and state agencies or programs from discriminating against qualified individuals with disabilities. Students in this course who have a documented disability, that limits a major life activity which may have some impact on your work in this class and for which you may require accommodations should meet with a Accommodation Service Center facilitator as soon as possible.

Table of Contents