Scientific Computing with Python
Austin, Texas • July 6-12
Registration - 100% Full

Sponsors

Wednesday 5:30 p.m.–6:30 p.m.

Teaching the SciPy Stack

Christopher Barker

Audience level:

Description

Many of us in the SciPy community teach scientific computing with Python. This BoF will be an opportunity for those of us involved in teaching SciPy to discuss best practices, common idioms, teaching techniques, and presentation tools. Hopefully this will lead to the start of a community-developed set of courseware for teaching the scipy stack.

Abstract

Many of us in the SciPy community teach scientific computing with Python. This is done in many formats: bootcamps, format courses, in-house workshops, online tutorials etc. While there are great number of open source course materials available, many of them derived from one another, there is no one source of nicely curated ind consistent materials.

There is also a a fair bit of variation of seemingly small stylistic details that can lead to confusion for newbies. Examples are how to import numpy, whether to teach the MPL pyplot interface or OO interface, etc.

This BoF will be an opportunity for those of us involved in teaching SciPy to discuss best practices, teaching techniques, presentation tools, etc. Hopefully this will lead to a community-developed set of courseware for teaching the SciPy stack.

Possible Topics to Discuss

Some possible topics of discussion:

  • How much plain python to teach before introducing numpy?
  • Do we use iPython notebooks for everything? They are a great teaching tool, but how do users learn to migrate to writing larger structured programs?
  • What to use for presentation materials? ipython notebooks? Sphinx+Hieroglyph? Other options?
  • Which way to import/use MPL?
  • Focus on interactive computing vs. developing structured systems.
  • Introduce unit testing from day one? Using what tools?
  • When, how, whether to intrdouce more advanced tools: numba, Cython, etc.

And the big question:

Does it even make sense to create a community curated set of teaching materials we can all draw from?

My Background, etc.

I've been using numpy/scipy since Numeric version (?) or so, around 1998. Since that time, I've done a lot of informal teaching and tutoring. More recently, I've been teaching Python for more general use for the Univ. of Washington continuing Eduction Program, CodeFellows, inc., and few in-house trainings as a private consultant.

When asked with introducing the scipy stack, I've found a lot of great open source materials out there to borrow from, but no one source of internally consistent, comprehensive materials to "just use". I'd love to work with the community to create such a set of materials, but even if that is not realistic, a chance to get together and share tips and techniques would be great.

You can see some of my stuff on GitHub here:

http://codefellows.github.io/sea-c15-python/ https://github.com/codefellows/sea-c15-python

https://github.com/UWPCE-PythonCert/IntroToPython

https://github.com/UWPCE-PythonCert/Python300-SystemDevelopmentWithPython-Spring-2014