Donald J. Patterson

Design and Implementation of Solutions to Computational Problems


The Cover of Python for Everyone, 2e by Cay Horstmann and Rance Necaise used in the course Design and Implementation of Solutions to Computational Problems

CS-010: Design and Implementation of Solutions to Computational Problems

For Fall semester 2016 I am teaching an introductory course on Python Programming at Westmont College.  This is the first programming course that many students have ever encountered so it should be a great teaching opportunity and possibly a challenge for some of the students.  We have a large class this year, over 40 students at the start, although a few added and dropped for various reasons so we’ve settled in to 38 total.  This is a huge increase in the number of students from previous offerings.  This is partially reflective of broader trends in Computer Science, but also partially due to a decision to switch to teaching in Python.   Many other disciplines are using Python now, so if this is the only programming course they end up taking then they will leave with something useful for their field (e.g., physics, biology, etc.)

For what it’s worth, this course is very fast-paced.  We’ve got a homework set and programming assignment due every week and we end up covering 12 chapters over 15 weeks, plus exams.   For many students, who are new to college as well as programming, it can be a big step up from what they were doing in high school.  The point isn’t programming of course, it’s solving problems efficiently, but you have to learn to lay bricks before you can build cathedrals.

Good textbook

I’m very happy with our text book “Python for Everyone“. It has lots of great examples and is interspersed with side topics that are relevant to software engineering.  There are online interactive exercises and a wealth of options for students who want to dig into the concepts.

Innovate with TensorFlow

We are going to try and do a final project with TensorFlow which is Google’s machine learning framework, written in Python.  Understanding it fully will be beyond the scope of the course, but hopefully we will be able to do a simple lab exercise where we, yes you guessed it, solve some computational problems.

The course webpage can be found here:

Leave a Reply

Your email address will not be published. Required fields are marked *