Programming for METR

January 17, 2017
MWF 2:00-2:50
METR 1313.001


Fiedler, Brian
Professor Emeritus


National Weather Center, Room 5720, Norman, OK 73072   View map


Spring 2017

Syllabus (PDF)


Primary instructor: Professor Brian Fiedler,, NWC 5636
Teaching Assistants: to be announced

Class time

Section 1: 2:00 pm – 2:50 pm MWF National Weather Center 5720 Jan 17, 2017 – May 05, 2017
Section 2: 2:30 pm – 3:45 pm TR National Weather Center 5720 Jan 17, 2017 – May 05, 2017
Most of the class time is indistinguishable from a “help session”. Often class begins with mini-lecture (10 to 15 minutes), or a Q&A session: the instructor asks some questions and the students provide the answers. Hopefully class is fun. Programming should be enjoyable.


There is NO Final Exam

7 programming projects, 10 points maximum each. Some of the projects are graded by “shoulder surfing” of the instructor or TA. For the first two projects, there is an online “studio” to post your creative work, or, in the latter part of the course, you will construct a personal website to display the results of your programs.

The final grades might be more lenient than the following scheme, but you won’t do worse than this:
total>=90% : A
80% <= total <90%: B
70% <= total <80%: C
60% <= total <70%: D
total<60% : F
Note the percentage listed in the above is: (total points)/70*100%

Students need to make timely progress with the course. One reason is that an appropriate topic for mini-lectures is more obvious if the students are up to date. Secondly, students need to know if they are up to date. For the benefit of the students: the following draconian policy is enforced: Projects submitted late (past 11:59pm on the Due Date) will be eligible for at most 1/2 the maximum credit. Projects submitted past the Due Date for the subsequent project will not be eligible to receive any credit.

Due Dates:

1. Project #1 Friday February 3 Scratch
2. Project #2 Friday February 17 Trinket
3. Project #3 Friday March 3 SimpleData
4. Project #4 Friday March 24 SST
5. Project #5 Friday April 7 MesonetData
6. Project #6 Friday April 21 CRUTEM
7. Project #7 Friday May 5 GriddedData

Office hours

before and after class, or the class time of the alternative section Other time can be arranged: In the past we have done Thursday 9-10 pm, at the base of Adams Center (Tower), in or near the HLC. We can do something like this, as needed.

Textbook recommendations

There is no prescribed textbook. But if you want a Python book, you can read some of my opinions.

Hardware recommendations

At least 95% of past students have completed METR 1313 using their own Hardware. If you are not able to bring a laptop to class, you can often borrow one from the instructor. I have several for that purpose. Another option is to use the computers built into the desks of our classroon, NWC 5720. But you will need an account to use those. Go to Then in the upper right of that web page, click on the word FORMS and then the link SoM computing account. There is an online form to fill out. If granted an account, a password will be emailed to you.


In Spring 2017, we will start from the same place that Harvard University does: We learn to program Scratch. We do this in addition to the official course description.

  • Here is what was advertised, and approved by the Academic Programs Council:
  • Connecting to server, the linux command line, the linux file system, basic linux commands, the linux text editors, offering a file on the WWW.
  • A program as a script of sequential linux commands
  • Introduction to Python: numerical variables and values, arithmetic, loops, print statements, a simple Python program
  • Python data structures: strings, lists, tuples, sets, dictionaries
  • control flow, booleans
  • searching and sorting
  • functions
  • modules
  • python plotting: matplotlib
  • simple python cgi scripts
  • arrays and numpy
  • working with simple files of data: text files and netCDF files