Short Syllabus Short Session SLO
Short Syllabus Short Session SLO
Welcome to CS 87A. I love programming and enjoy teaching it a lot. This will be reflected in my
dedication to your success. Speaking of success, I do care that you learn how to write code the right
way and not the hacker way. Therefore, I ask that you read the rest of this syllabus and know that I’m
here to help you succeed, and learn. Don’t go youtubing on me J
Course Description:
This course introduces the Python programming language. Students will learn how to write programs
in a wide range of application domains. Topics covered include the language syntax, control flow,
strings, I/O, classes and regular expressions. Students may use either a PC (Windows) or a Mac (Linux)
to complete their programming assignments.
Textbook:
We will use a free Open Education Resource (OER). We will not cover all the chapters so be selective
if you need a printed copy. In our course shell, I will tell you which chapter(s) to read each module.
Think Python: How to Think Like a Computer Scientist, 2nd Edition, Version 2.2.23
Allen Downey, Green Tea Press, Needham, Massachusetts
Free online: http://greenteapress.com/thinkpython2/html/index.html
From the link you can easily navigate through the book chapters as we cover them.
If you need a PDF so you don’t have to be online to read the book, the link is below. I suggest you
download it now.
http://greenteapress.com/thinkpython2/thinkpython2.pdf
Software:
See https://wiki.python.org/moin/BeginnersGuide/Download to get the installation software based
on your O.S. Note we will be using Python version 3 not 2.
Once you install Python, you will need an IDE (Integrated Development Environment), otherwise you
will have to open a text editor, type your code, save then open the command prompt and execute
from there. Get the version for your OS by clicking the Windows icon or the Apple icon.
Download, install, start Anaconda Navigator, then start the IDE called Spyder.
There are many IDE's, I like Anaconda: https://www.anaconda.com/download/
If you have Microsoft Visual Studio on a Windows machine, Visual Studio has python and an IDE for
it. Check it using, File, New Project and see if you have Python in the list of languages. If you do,
select Python Project and you’re good to go.
Late Policy
All assignments, quizzes, tests and required Discussion postings have due dates.
While we all wish life was perfect, its beauty lies in its imperfection.
Therefore, while there are due dates, and late work is accepted with restrictions, I am open to
discussing your circumstances, in case life happens.
Discussion postings are due as shown in the online course shell, and will not earn credit for late
submissions. Note that those postings are meant to create a class discussion and Q/A. Your answer
does not have to be 100% correct. I provide feedback on all posted Discussions messages. So don’t
miss a message just because you wanted to study the materials 100%. It’s ok if it’s not perfect. Start
watching the lecture videos early in the week and that will help you post your message.
Assignments are due as shown in the syllabus of our course shell. Students are allowed to submit up
to 24 hours late with a 20% penalty. Submissions of more than 24 hours past due will not earn
credit. Again, email me if there are extenuating circumstances that prevented you from completing
the programming assignment on time.
Quizzes: Each quiz will be open for the duration of the module it is in. for summer and winter, this
will be 4 days and is due by 11:59 pm PST of the 4th day. For Fall and Spring this will be on the 7th day
(Sunday). No late completions are allowed. I drop the lowest score so that should help you recover
in case you miss one.
Midterm and Final Exams: Those will be open for a period of 48 hours on Saturday – Sunday on
their scheduled date. It is not possible to do any of those tests outside the days/time allotted, as
shown in the online course shell syllabus.
Being Dropped
This course is in high demand. Students are required to check in the course site at online.smc.edu and
post a discussion message under each module as shown in the Discussion. The first message is due
by the first Tuesday in Module1 Discussion. Failure to post this message by its due date will cause
the student to be dropped to allow space for students on the wait list. Other messages due dates
are shown in each module.
• Students who do not successfully complete the first module’s assigned work may be dropped
without notice. If you want to stay in class but some serious event prevented you from completing
the entire module assigned work, email me and we may find some options.
• Students who miss any two consecutive modules’ assigned work may be dropped without notice.
I do this to help you avoid an F in case you are no longer interested in the class. This happened to
many students in the past, and my lesson was if I drop a student and they want to get back in,
they can email me and I will gladly give them a reinstate code.
• This is an online class, using the Canvas system. You may logon 24-hours a day, 7-days a
week.
• You will be using the online site to get and submit assignments, complete quizzes, and
tests. Everything has a due date.
• In the short sessions (Winter and Summer) we cover topics at double speed. Each module
we cover two chapters (or a little more). A module is approximately 3 days and contains
slides and assigned book pages, a Discussion posting, a quiz or an assignment.
• In the Fall and Spring, there are due dates every weekend. Check the online site for the
exact dates.
• It is a good idea to mark your calendar for all the due dates. The online site will show a
Syllabus menu. At the end of that syllabus, all the due dates will be shown.
• You will be required to read all messages and post at least one message in the Discussion
of each module. There are 11-12 modules.
• Never used Canvas before? View these student guide videos on Canvas:
https://resources.instructure.com/courses/32/pages/canvas-student-tour-videos
Topics Covered (subject to change – bold days indicate assigned work is due)
Each module below has a Discussion postings and either a quiz/assignment or test due).
Week# days Topics
1 (Mon -Thur) Module 1: Intro (Discussion due Tuesday)
1 (Thur - Sun) Module 2: Variables, Expressions and Statements
2 (Mon -Thur) Module 3: Conditionals
2 (Thur - Sun) Module 4: Functions - Part 1
3 (Mon -Thur) Module 5: Fruitful Functions
3 (Thur - Sun) Module 6: Loops: while
4 (Mon -Thur) Module 7: Loops: for
4 (Thur - Sun) Module 8: String processing
5 (Mon -Thur) Module 9: Lists and Tuples
5 (Thur - Sun) Module 10: File Access
6 (Mon -Thur) Module 11: Exception Handling
6 (Sat - Sun) Final Exam