I will be teaching a two-day Software Carpentry instructor training course on March 10-11, 2015 at Lawrence Berkeley Lab, and a one-day course on web programming on March 13, 2015. Details are given below; the instructor training is open to LBL staff and to graduate students and staff associated with the Berkeley Institute for Data Science, while the web programming class is reserved for LBL staff alone.

Software Carpentry Instructor Training

This two-day intensive class will introduce basic ideas in educational psychology and instructional design, and show how to use them to teach researchers in science, engineering, and medicine how to use computers more effectively in their work. The course will be led by Dr. Greg Wilson, Executive Director of the Software Carpentry Foundation; no previous formal training in teaching is required, but participants should be comfortable writing medium-sized programs and using the command line. (Experience with version control tools such as Git is desirable as well.)

The class will be held in Room 15-253 at LBL. Registration is presently open to LBL staff; registration for staff and graduate students associated with the Berkeley Institute for Data Science will open shortly. To sign up, please go to http://go.lbl.gov/sc-instructor-train-mar10-11.

Introduction to Web Programming

This one-day course will be held in Room 54-130 at Lawrence Berkeley Lab on March 13, 2015. It will show participants how to write programs to get, share, and syndicate data over the web, and how to write simple dynamic web applications. Participants must have previous programming experience in Python; prior experience writing HTML is useful but not essential. The course is open to staff at LBL—space is limited, so please register early at http://go.lbl.gov/sc-web-prog-mar13.

Specific topics will include:

  • the HTTP protocol and the HTTP request/response cycle;

  • using web APIs to download data in common formats (and how that works behind the scenes);

  • how to make data available and findable for others using static page generators;

  • how a web server works; and

  • how to make data available and findable dynamically.

We will use the requests module for client programming, and the Flask framework for server programming.

This post originally appeared in the Software Carpentry blog.