NOTE: Before you email us a question, first read the entire page below. If you still have a question, check to see if your question hasn't already been answered on the Frequently Asked Questions (FAQ) page.
We break CS 11 into several "language tracks." Not every track is taught every term. To see a list of tracks being offered in a particular term, check below:
Prerequisite: CS 1
Instructor: Prof. Mike Vanier
Description:
In this track, all of the basics of C programming will be covered, including syntax, types, functions, arrays, pointers, structs, command-line arguments, and using C programs in a Unix system. Emphasis will be placed on a detailed understanding of pointers and manual memory management (topics that make C programming more difficult than other languages). Writing basic data structures (linked lists, arrays) will also be covered.
Prerequisite: None
Instructor: Prof. Adam Blank
Description:
In this track, we will play around with LaTeX as a programming language. We will expect basic familiarity with using LaTeX to typeset, but we'll go way beyond what
you might expect LaTeX is capable of.
If you are not registered in CS 11 but want to add the class before add day, please read this page.
If you are interested in being a TA for CS 11 for next term, contact the CS 11 instructors Mike Vanier, Adam Blank, and Melissa Hovik as soon as possible. The exact number of TAships and the exact number of hours per TA are not determined before a term starts; it depends on the enrollment figures. It is most likely that we will need TA support for the C, C++, and Interview Preparation tracks, so expertise in at least one of those languages is a major plus. You do not have to have taken CS 11 to apply, nor do you have to be a CS student. However, we would like some evidence of your coding abilities, preferably in the form of coding samples. Teaching experience is also a big plus.