Jan 19 - intro class
what
An intermediate level core CS course
which looks at how to think about the recipes
behind computational math.
The material we'll look at is part of the core of
all CS curricula.
textbook
As listed on the
resources page, we'll start
with
an interactive online (or hardcopy) text.
We will likely use other sources as well, mostly online,
to cover additional topics.
software tools
Primarily we'll be coding in python.
There are several approaches to running programs.
- Some code can be run in your browser, in the interactive textbook.
- Or you can create *.py files and run from the command line, "python file.py", as we did in the intro programming class last term.
- Or you can work in the IPython environment, which has the advantage of supporting graphs, plots, and analysis in html and latex.
Again, see the
resources page for links to these options.
I'll do examples of each as we go along. Depending on the assignment,
one approach may well be more appropriate.
goals
- improve your coding and numerical chops
- understand fundamental data structures, both how they work and when they're used
- see a number of famous tasks from areas such as graphs and combinatorics
- study the algorithms that can solve them
- understand how to analyze algorithms
- learn several strategies behind developing new algorithms
skills
- coding
- language will primarily be python this term
- practice with programming concepts: objects, APIs, docs, recursion, etc
- numerical data manipulation (graphing, curve fitting, changing format)
- some discrete math (elements of induction, recursion, combinatorics, statistics, graph theory)
grading
The semester grade will be on the number
of weekly assignments done, a midterm project,
and a final project.
The first assignment is posted and due next Thursday - jump in.
Questions? Find me or email me (mahoney@marlboro.edu).
See you Tuesday.