| Routing/Approval: (chair’s initials/date) |
Department |
Division |
APC |
Senate |
Date of proposal: 4/10/06
Title: Introduction to Programming
Department and Course Number: CSCI 121
Crosslisted? Yes No X If yes, crosslisting department and number:
Credit: 1/2 Hours/week: 6 in one module
One-time: or Permanent Offering: X
Instructor: Darrah Chavey or Steven Huss-Lederman
How will this course be taught, given present staffing, without creating a course overload?
This course proposal is part of a comprehensive change to the computer science curriculum. The course load under this proposal will not create an overload.
Are there any course fees? If so, specify what the course fees are intended to cover.
None
Prerequisite(s):
None
Catalog description (50-150 words, please):
If applicable, include the following language at the end: “May be repeated for credit if topic is different.”
Supplies an introduction to computer programming for students with no or limited experience in programming. All important areas are covered (loops, conditionals, recursion, etc.) including object-oriented programming. Students work in pairs on increasingly complex programs to create software solutions to interesting problems of interest to everyone.
Additional course content description (aims, purposes, etc.) beyond the catalog description:
This course is designed as a liberal arts introduction to computer programming. Rather than focus on specific techniques of a language, the course emphasizes programming concepts that permeate modern programming languages. To do this, the course uses a friendly and modern programming language that enables students to readily gain this knowledge while still having significant hands-on experience with programming. At the current time, we will be using the Alice programming environment. Students with previous programming experience (that includes the topics below) should consider taking 131 as their first course.
The lettered/numbered lines below come from CC2001. Underlined
items are considered essential to a basic curriculum in computer science.
Numbers in () indicate minimum number of hours to cover in a lecture style
according to CC2001.
Items with
a * indicate we plan to cover them in multiple courses.
Other lines include additional topics we plan to cover or clarification of
topics
we will cover within a CC2001 topic.
Course goals/objectives/outcomes:
At the end of this course students should be able to:
Course structure. Check all that apply:
Lecture/Discussion Studio X Lab/Workshop Other (Specify)
If current library or equipment holdings are inadequate, estimate the cost of additional holdings required.
adequate.
Please attach names of a proposed text and/or core readings.
Learning to Program with Alice by Wanda Dann, Stephen Cooper and Randy Pausch, © 2006.
All I Really Need to Know about Pair Programming I Learned In Kindergarten by Laurie Williams and Robert Kessler, Communications of the ACM, 1999.
Form revised 11/04