Course Structure - Spring 2017


CS 195: Senior Seminar

"In this capstone class, students reflect on Computer Science as a discipline, the connections with other disciplines, the impacts of technology upon society, and ethical considerations introduced by computers. In the process of completing a major project, students consider marketing, design, implementation, testing, and maintenance. In this class, seniors complete and present their online portfolio. As the culmination of their program, students explore the transition to graduate school or the commercial sector."


Professor Don Patterson
Lecture: MWF 2:00PM - 3:05pm
Classroom: Winter Hall 311
Discussion Section: N/A
Telephone: 7028 (on campus) 805-565-7028 (off campus)
Email: dpatterson@westmont.edu
Office Hours:
  • Mondays 3:10pm to 4:10pm
  • Wednesdays 3:10pm to 4:10pm
  • Thursdays 10:00am to 11:00am

There are 146 available appointments, shared across all my classes and my advisees. Drop-in or reserve a 20 minutes appointment here (my email user name is "dpatterson")

Teaching Assistant: N/A
Email: N/A
Office Hours: N/A

The following book(s) are required for this class. You are welcome to get them from whichever store is most convenient.

Shaping Things

Shaping Things by Bruce Sterling

The following book(s) are optional for this class.

Computer Ethics

Computer Ethics (4th Edition) by Deborah Johnson


Class Attendance / Participation / Readings (3 dropped) ~40%
Professional Development ~20%
Capstone Project ~40%

As the class progresses I may find it necessary to alter the percentages.

This class is a lot of work. You will have to read a lot. You will have to manage many deadlines.

Here are some things you will be learning:

  • Ethical Issues arising from technology
  • How to transition to a post-college professional life
  • How to bring everything you've learned together into one capstone project

Letter grades will be calulated according to this table

Percent

Letter Grade

[94 - 100]

A

[90 - 94)

A-

[87 - 90)

B+

[83 - 87)

B

[80 - 83)

B-

[77 - 80)

C+

[73 - 77)

C

[70 - 73)

C-

[67 - 70)

D+

[63 - 67)

D

[60 - 63)

D-

< 60

F


I prefer to give many small assignments which build up a picture of overall student learning success and not just rely on large exams which students may bomb based on non-learning related complications. Nonetheless, exams are very motivating.

At the end of the day, learning requires the active initiative of the student. I consider myself someone who points students in the right direction and can/will explain the fundamentals of a subject matter. I can't actually do the work of learning for a student. That takes effort and self-motivation. I will help to provide structure and incentives for that learning, but you also need to learn how to expand on this subject yourself. In a technical field like this, you will be left behind the field in about six months, regardless of how well I present the subject matter, if you can't keep learning on your own.

I like to stop talking periodically, until students ask questions.


This class is going to be a small and intimate community. Participation is essential for it to be successful.

Participation will be assessed by attendance on days in which nothing tangible is due. On days in which responses are due, participation will be evaluated based on the response and the communication of it to the rest of the group.

3 Participation points will automatically be dropped. This is to accomodate sicknesses without a doctor's note, car problems, family issues, strategic time allocation etc.


A capstone project is a major part of this class. Several projects milestones will be assigned consisting of planning, presentation and development tasks for a capstone project. These tasks will almost certainly require additional technical and user research outside of class.

The goal of the capstone project will be to give you a chance to synthesize many different things that you have learned during your undergraduate career and to create an artifact that you can use in job interviews or post-graduate assessments or possibly just for your own sense of enjoyment and accomplishment.


Most of the readings will have responses required for them. They are, in general, expected to be 2-3 pages double-spaced. The responses are generally open-ended, but I'm looking for more serious engagement then I agree or I disagree, I like or I don't like. In particular connecting concepts across readings is something to strive for.

You should print out your response in hard-copy and bring it to class. Be prepared to read it to the rest of the class.


I do not currently plan on having quizzes in this class.


This class will not have exams

The final deliverable will be presented during the final exam slot


I strive to pick the best-of-class tools to use to administer this class and with which to teach. That requires using multiple websites. They are carefully chosen. Unfortunately, like most of the rest of online activities they are also highly fragmented (not one super-tool). We utilize several online tools in this class. Please familiarize yourself with their use and location. I expect you to check in and use all of them:

This semester our tools will consist of the following:

  1. This web page: in particular the calendar part, is the authoritative location for communicating assignments, materials from the class and due dates.
  2. Canvas for the gradebook
  3. Canvas for logistics
  4. Email if absolutely necessary

For this class I am going to ask you to put away your computer unless you are presenting. This will allow us to have conversations in which we are fully present and appropriately prioritizing our attention to the things that are happening in the classroom. This includes laptops, tablets, and smartphones.

We are still developing appropriate norms around technology use in classrooms and the nature of this class requires us to be fully present

It is hard to navigate appropriate norms. On the one hand my students are almost always adults. You should be able to choose to use electronics in class if you want. On the other hand there is a world of sophisticated software, marketing and designs that are doing everything they can to get your attention. They are so good at what they do that you don't have control over your own cognition. One thing that is clear - if you have your laptop open, if you are texting, tweeting, pinteresting, doing email, surfing the web, playing candy crush etc, you are not learning as much as people who put away their electronics and focus fully on the class. The truth is you are lousy at multi-tasking and it's hurting your grades because it's preventing you from thinking deeply about anything. Putting away the devices requires discipline that some of you need to learn, but won't unless you are forced.

There's an additional problem though. It turns out that if the person next to you is using a laptop, it hurts your GPA also. Using your laptop is like second-hand smoke. It's not just you hurting yourself, it's you hurting other people as well.

Clay Shirky has written a long article about these problems that is worth considering as we start off a new semester


Typically at the beginning of class I will take the opportunity to address issues of Christian faith and it's relationship to our course material, current events or personal reflections as it seems appropriate to me. This may include times of prayer, listening to music or speech, or directed discussion.

These moments are typically not planned far in advance or recorded, but are noted post-facto on the class calendar.

This class is different however in that issues of faith are inherently bound up in the discussions and so "faith and learning" will look different in this class and will be more interwoven into the fabric of our discussions.


We have many goals for students taking courses in the Computer Science Program. Some of them are specific to particular courses, but almost all are examples of our Program Learning Outcomes (PLOs).

This are the overarching Computer Science Program Learning Objectives

  1. Programming Students will know how to write high quality computer code.
  2. Analysis Students will be able to create and analyze algorithms using formal methods.
  3. Context Students will be able to do the above in the context of real-world problems requiring creativity and adapativity in the face of ambiguity and poorly formed problems
  4. Christian Connection Students will be able to reason in community/conversation about social impacts of computational artifacts on individuals and society in the context of general and specific Christian revelation. (Requires communication, analysis, background knowledge)