Jim Mahoney's Fall 2010 courses ------------------------------------------------------------- title: Introduction to Programming with Python number: NSC552 area: computer science faculty: Jim Mahoney credits: 4 time: Tues/Thu 8:30am - 9:50am place: Sci 217 level: introductory repeat: no, cannot be repeated for credit prereq: none textbook: Python Programming: An Introduction to Computer Science by John Zelle; ISBN 1887902996 blurb: This is a first class in computer programming, and as such serves as a foundation any further work in computer science. Much as a competency with English grammar is required for writing, an understanding of programming is needed for most intermediate and advanced work in computer science. A similar course is offered every fall, though the language chosen varies from year to year. Python is a modern, elegant, high level scripting language, used for scientific programming, web servers, and all sorts of other things; it's been one of the most popular languages among students here at Marlboro lately. Topics will include program design, boolean logic, debugging, input/output, object oriented programming, as well as a variety of basic computer skills. (Yes, it's at 8:30 this time around. If I can get up that early, so can you. Come join the breakfast club, eh?) ------------------------------------------------------------- title: Computer Systems number: new course area: computer science faculty: Jim Mahoney credits: 4 time: Tues/Thu 11:20 - 12:50 place: Sci 217 level: intermediate repeat: no, cannot be repeated for credit prereq: previous programming experience textbook: Computer Systems: A Programmer's Perspective, 2nd ed by Bryant and O'Hallaron; ISBN 0136108040 blurb: A look at what goes on "under the hood" of a computer, in the implementation in machine code of a C program running on a linux computer. Sometimes called "Computer Organization", a course like this one is a required part of most computer science degree programs, typically taken by sophomores after a course or two in basic programming concepts. Topics include the C programming language, machine-level data representation and assembly langauge, processor organization, system performance, memory caching, code compilation and linking, and similar fun stuff. This course is likely to be offered every few years. ------------------------------------------------------------- title: Digital Multimedia number: NSC551 area: computer science see also: Visual Arts, Music, Film faculty: Jim Mahoney credits: 2 time: Thu 3:30 - 5pm place: Sci 217 level: introductory repeat: yes, may be repeated for credit prereq: none textbook: none required; we'll use online resources blurb: A workshop in manipulating images, music, animation, and video with a computer, including some background topics in optics, acoustics, and the internet. Where possible, we'll be primarily using open source software systems such as the Gimp (images), Audacity (sound), and Blender (animation). After an initial look at many technologies, each student will choose a single project to focus on for the last third of the term.