BioCS1 in MATLAB Course at U-Texas San Antonio
I would be happy to have it posted and to receive comments and suggestions. I have an application in for a NSF CCLI phase 1 grant, which may be funded this round. (At least the program director is talking with me.) My goal, however, is to go for a CCLI Phase 2 grant. I'm looking for input. Just one more comment. CS 1173 is a new course, which is being required for all biology majors starting in the Fall 2008 semester. We have put it in the degree plan for the first semester of their freshman year. We would like them to take this course before they take a newly required Biocalculus course and a newly required Biostatistics course. CS 1173 is not an actual prerequisite for those courses. Before this catalog change, biology majors only had to take college algebra. This is a groundbreaking change for us. If you are interested in receiving a sample quiz and sample exam, let me know. (Those can't be posted anywhere.)
From: firstname.lastname@example.org [mailto:email@example.com]
Sent: Saturday, October 18, 2008 8:09 AM
Subject: Re: Teaching computing to biologists through data visualization
Itís nice to hear from you! Weíre actually just starting an effort to develop a biology-oriented CS1 here at Georgia Tech: http://home.cc.gatech.edu/biocs1 May I post your URL on the resources page there? Iíd love to share it with the others.
We havenít chosen a language yet, but will at our next meeting. Your work makes a nice argument for MATLAB.
Thanks for the information ó I look forward to going through it!
On 10/16/08 6:04 PM, "Kay Robbins" wrote:
We met at the Microsoft Faculty Summit during the summer. I enjoyed your talk on computing at Georgia Tech. We spoke afterwards about a curriculum development effort that I have been doing to teach computing to biologists through data visualization using MATLAB. We are at the half-way point in the first offering of the course, and I think it is going well. A summary of the curriculum material we have so far can be found at:
There will be 5 more labs, 2 more projects, 4 more quizzes, one more exam, a final, and 12 to 15 more lessons. I've worked hard to make this a course that every undergraduate scientist (and maybe engineer) should take. I think it is very different approach to computing, but it does teach in a useful context. The programming skills asked for are not the traditional ones. The programming concepts used in the first half of the course are related to calling functions, passing parameters, generalizing existing functions, using variables, reading in data tables, reshaping arrays, printing results in a readable form, and manipulating the properties of graphics objects. These are not the concepts usually covered in the first 6 weeks of a beginning programming course. The last half of the course moves more into programming. The emphasis is not learning precedence rules or writing complicated conditionals. It is on adapting some basic coding patterns to solve problems. Examples include removing NaNs from a table in various ways, extracting data in one column based on a value in another, manipulating strings to extract meta-data, or sorting values in one column based on those in another. We won't be teaching the bubble sort or the selection sort. We'll be using the sort function with the MATLAB indexing function. It's a higher-level, more conceptual way of programming.
I know that you are one of the world's busiest people, but I would greatly appreciate your thoughts on this approach and any suggestions that you might have.
Kay A. Robbins
Department of Computer Science
University of Texas at San Antonio
One UTSA Circle
San Antonio, TX 78249