Software Carpentry

Helping scientists make better software since 1997

Archive for July 2009


Today (Thursday) was the second-to-last of the course. It’s been a long haul, but we hope a rewarding one. In the morning, the students had an hour-long overview of results from empirical studies of real-world software engineering; in the afternoon, we looked at how traditional and agile development processes are responses to those facts. Tomorrow morning, we’ll spend an hour talking about what’s gone right and what’s gone wrong, then head out for a farewell lunch.

And in late-breaking news, one of the students, Mark Tovey, has started a blog on open source cognitive science. Thinking about it now, we should have required all of the students to start and maintain blogs during the course; here’s hoping some will do it now of their own accord (hint, hint).


Written by Greg Wilson

2009/07/31 at 00:23

Posted in Alberta, Toronto, Version 3

A Good Afternoon

Yesterday afternoon, the students and ninety other guests were treated to six engaging talks about Science 2.0 from Titus Brown, Cameron Neylon, Victoria Stodden, David Rich, Michael Nielsen, and Jon Udell. We’ll post slides and video here as soon as we get them; until then, you can catch up on what happened in the FriendFeed room or by reading Steve Easterbrook’s real-time blog of the event.

Our thanks once again to everyone who made the day possible:


Written by Greg Wilson

2009/07/31 at 00:20

Every Day Is a Big Day…

…but today is bigger than most: after lectures yesterday on server-side web programming and building GUIs, students will spend this morning exploring ways to apply what they’ve learned in the course to their own research problems.  This afternoon, we have a stellar line up of speakers from 1:00 to 6:00 pm at the MaRS Centre to talk about how the web is changing the way science is done. We’ll post video of the talks as soon as we can, but if you’d like to follow along in real time, we are:

Written by Greg Wilson

2009/07/29 at 09:45

Posted in Alberta, Toronto, Version 3

Day 11 and Day 12

Yesterday (Monday) morning we covered the basics of handling binary data, including bit twiddling and the use of Python’s struct module to pack and unpack binary representations of objects.  The afternoon was a lightning introduction to how the web works: a simple socket example (just to show students the plumbing) was followed by a description of HTTP’s requests and responses, then a look at urllib.  Today is going to be devoted to the absolute bare bones of server-side programming, with GUI programming using Tkinter as a follow-up.  “Fast paced” doesn’t even touch it, but I hope students will come away with an idea of what’s possible, and where to look for more information.

Written by Greg Wilson

2009/07/28 at 09:59

Posted in Alberta, Toronto, Version 3

Where This Course Came From

I have created an Listmania list for the books that most directly influenced this course.  Some topics aren’t directly represented—there’s nothing devoted to handling XML or binary data, for example, or on big-Oh complexity or web programming—but I hope what’s there will be of use.

Written by Greg Wilson

2009/07/27 at 16:27

Posted in Content

Martin Fenner on SciBarCamp

Nature‘s Martin Fenner has blogged a summary of what he heard and saw at SciBarCamp’09 in Palo Alto a couple of weeks ago.  Cameron Neylon was there too—in fact, I’d be willing to bet that a healthy number of attendees posted their experiences in some form or another.  Maybe the next challenge for scientific publishing is something that will aggregate and summarize disparate reports of such events?

What I’m most interested in, though, is figuring out what’s needed to make that kind of reporting happen. Mark Tovey has been reporting on the Software Carpentry course in near-real time at FriendFeed, but there have been very few comments or contributions from other students.  Is his record complete enough that no one can think of anything to add?  As quickly as he types, that still seems unlikely, and even if it was true, I’d expect people to have questions or to want to add more detail. Is it the classroom setting, and all the behavioral baggage that brings with it?  I had the students in my software engineering class last term write up lectures as wiki pages to earn 10% of their course grade; perhaps that kind of stick has to accompany the carrot of social good?

Written by Greg Wilson

2009/07/26 at 15:54

Posted in Community, Noticed

Day 10 Done — and With It, Week 2

XML in the morning, regular expressions in the afternoon—it’s been a long week, but a productive one (I hope).  We’re going to shuffle some of the material around so that we can do binary data processing, web client and server programming, and GUI programming next week.  The highlight, of course, will be the guest speakers on Wednesday afternoon.  I hope the students have a restful weekend; I’m looking forward to the last lap.

Written by Greg Wilson

2009/07/24 at 21:45

Posted in Alberta, Toronto, Version 3