I’ve been playing with the idea of teaching a 1-2 credit seminar course about scientific computing. The idea would be to give students an introduction to the basics of several important computing tools.
This post is a collection some preliminary topics/thoughts.
What computing resources to teach?
The following are obvious candidates for inclusion.
- LaTeX
- Basic document writing
- Inclusion of graphics and data from other software packages
- Presentations (Beamer)
- Mathematica
- Plotting and other visualizations
- Calculus computations: integration, differentiation, plotting of slope/gradient/curl fields
- Solving and analyzing differential equations (could be easily done with only a Calc 1 pre-req)
- R
- Basically follow Sam’s excellent notes
- Python
- Potential to do similar operations as Mathematica; can include/supplement R
- Basic coding, with plots of results
- Simple script operations?
How to structure the course?
My current idea is to structure the course around a series of short projects which require the various tools listed above. The key would be for the projects to be interesting (and open-ended?) enough for students to be engaged, but not so complicated that the difficulty of the project topic itself distracts from learning the computing skills.
What else?
There are a number of interesting ways the seminar could go…
- …become a “Sophomore Seminar” which also includes other department-specific activities (Putnam and/or modeling, reading a journal article, civic activity, etc.)
- …become part of a modeling course, aimed at attracting students from social sciences as well.
- …become a collaboration with physics, incorporating more of their tools & protocols, etc.