Upcoming courses
This list is by necessity tentative, and will most likely change
depending on the current student's skills and interests.
Additional courses are likely; typically I teach an intro course,
an intermediate course, and a distribution course each term.
Also, since tutorials and group tutorials aren't listed here, juniors
and seniors on plan should expect additional upper level topics.
I welcome questions, comments, and requests - come talk to me.
Jim Mahoney (mahoney@marlboro.edu), March 2010
- Fall 2011
- Intro Programming
- Artificial Intelligence
- Spring 2012
- Programming Workshop
- Internet Technologies
- Fall 2012
- Intro Programming
- Web Programming
- Spring 2013
Here's a bit more detail on how these courses
(and a few other possibilities) fit together.
- foundation courses:
- intro programming
- planned schedule: every fall term
- prereq: none
- language varies; python regularly, others occasionally
- programming workshop
- planned schedule: alternate spring terms
- prereq: intro programming or equivalent
- may be repeated for credit
- internet courses:
- internet technologies
- planned schedule: alternate spring terms
- prereq: none
- topics: networking/packets, protocols, HTML, CSS, security
- web programming
- planned schedule: alternate fall terms
- prereq: internet technologies or equivalent; intro programming or equivalent
- computer science courses:
- algorithms
- planned schedule: alternate spring terms
- prereq: intro programming or equivalent
- typical topics: O(n) execution time, data structures, classic problems (sorting, traveling salesman, etc)
- artificial intelligence
- planned schedule: alternate fall terms
- prereq: intro programming or equivalent
- typical topics: games, search trees, knowledge representation
- computer systems
- planned schedule: every few years
- prereq: intro programming or equivalent
- typical topics: C programming langauge, assembly language, code compiling and linking, memory caches, system performance
- formal languages and the theory of computation
- planned schedule: occasionally
- prereq: algorithms or equivalent; discrete math or equivalent
- information theory
- planned schedule: rarely
- prereq: algorithms or equivalent; discrete math or equivalent
- computational arts courses:
- digital multimedia
- planned schedule: occasionally
- prereq: none
- topics: creating and editing images, audio, and video/animation
- digital music
- planned schedule: rarely
- prereq: digital multimedia or equivalent;
intro programming or equivalent recommended
- animation
- planned schedule: rarely
- prereq: digital multimedia or equivalent;
intro programming or equivalent recommended
- other (occasionally):
- bioinformatics
- numerical methods
- interactive electronics
- tutorials and other advanced work:
(These are examples only; topics here are entirely negotiable.)
- operating systems
- programming language design
- internet security
- web development
- signal processing
- scientific computing
- dance technology
- algorithmic music computation