I've been teaching two of these courses for the past 3-4 years at Utah State University. Both are full semester courses (3-4 credit hours). One assumes no programming background, covers programming and databases intensively and version control more lightly (no shell). The other assumes a basic programming background and then does intensive treatment of shell, version control, more advanced programming, testing, regexp, etc. Website: http://www.programmingforbiologists.org/ Github repo: https://github.com/ethanwhite/progbio.
I got these courses added to our curriculum by including them as broader impacts in a grant, which effectively forced the department to let me teach them. That said, my impression is that an increasing number of departments realize how important this stuff is and may therefore be amendable to having it taught. In fact I'm currently in the process of moving to the University of Florida and it was made clear to me that they wanted my teaching responsibilities to be teaching these same courses since their students desperately needed them. Bill is definitely right that there are hurdles. I encountered the backlash from CS directly. I don't have access to a computer lab to teach in (we teach in a classroom with laptops) and a number of not so kind words were exchanged between my department head and the CS head. That said, CS simply doesn't teach what we need in most cases, so I think explaining that clearly and then ignoring any silliness is the way to go. Staffing hasn't been an issue in my case since I'm a faculty member, but Bill's right that many universities have restrictions on who can be a instructor for a formal course. If you're not allowed to be a lead instructor as a grad student (which if I recall properly you are, apologies if I've got this mixed up) you can often team up with your advisor and have them as the instructor of record. With the growing popularity of SWC I think there are good arguments to be made against the "my way or the highway" types that Bill refers to, but departmental politics can certainly be an issue with anything in academia. Bill is also right that teaching this as a full course opens up lots of opportunities. My students do projects and work on lengthy real-world style problems in assignments. I provide detailed code review on assignments as well as projects. Most of the time in class is spent working on assignments and projects with me helping students work through things they don't understand. So, I think this is a very cool idea. I think it's definitely tenable a lot of places these days because *everyone* has too much data and doesn't know how to work with it. There will be hurdles along the way, but at least in my case they've been manageable. Ethan On Mon, Sep 29, 2014 at 10:47 AM, Bill Mills <[email protected]> wrote: > Hi Dan, > > I've been fighting this fight for years, glad to have someone else on > board! The two main things I have run into are: > > 1. Politics. The ire of CS departments can be raised when others go > offering their own coding courses, in a way I didn't anticipate. > 2 (a). Staffing. It's really tough to get someone to actually *deliver* > the course - and it's not always as simple as volunteering to do it > yourself; there are rules. > 2 (b). Curriculum control. When I have seen 'coding for scientists' style > courses, they were taught by faculty who had intensely held beliefs about > what the content should be (and it didn't even vaguely resemble SWC). So > it's not just a matter of getting a lecturer - but getting one that wants > to play ball with your curriculum. > > The other tangent I'll point out, is that in a classroom setting, there > are a lot of opportunities that open up that we just don't have in a > workshop (think projects, more formative & summative assessments). Just > slicing up a workshop and spreading it over a semester is a great start, > but if we can navigate the logistics above, we can do even more. > > Again, glad to see this getting talked about! Getting this material into > program curriculum is IMO a crucial goal, let me know how I can support. > > > On 2014-09-29 9:36 AM, Daniel Chen wrote: > > Hi everyone: > > I was wondering if anyone has had any success teaching the swc material > as a semester long lab course? Assuming 1 lab a week for 1.5 hours a lab, > if we mimic the swc workshop pace we have at least 6 weeks of material: > > Bash: 2 weeks > Git: 2 weeks > Python/R: 2 weeks > > Now, this could be 2 half-semester courses or it can be expanded to > include LaTeX, SQL, data carpentry material, for a semester long course. > Has anyone else thought of this or tried to pitch this to a department > chair? > > I've touched base on the idea of such a course with numerous faculty > members (from CUMC and the EE department at CU), and the response is all > positive. I'm mostly asking to see what logistical/administrative hurdles > I will encounter. > > > - Dan > > > _______________________________________________ > Discuss mailing > [email protected]http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org > > > -- > Bill Mills > Community Manager, Mozilla Science Lab > @billdoesphysics > > > _______________________________________________ > Discuss mailing list > [email protected] > > http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org >
_______________________________________________ Discuss mailing list [email protected] http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org
