We've had a busy nine months: 55 boot camps since we restarted boot camps last September, with 19 more in the next two months. We're taking a break then to catch our breath: we only have one event scheduled between mid-July and the end of August, which will give us time to reorganize our online materials and figure out what we're going to do in 2013-14. The list below outlines things that I'd like to see done during that break. I'm sure you have others; I'd be grateful if you'd add them as comments, along with your thoughts on things we shouldn't do, or should do differently.
In January 2012, John Cook posted this to his widely-read blog:
In a review of linear programming solvers from 1987 to 2002, Bob Bixby says that solvers benefited as much from algorithm improvements as from Moore's law: "Three orders of magnitude in machine speed and three orders of magnitude in algorithmic speed add up to six orders of magnitude in solving power. A model that might have taken a year to solve 10 years ago can now solve in less than 30 seconds."
A million-fold speedup is pretty impressive, but faster hardware and better algorithms are only two sides to the triangle. The third is development time, and while it has improved since 1987, the speedup is measured in small percentages, not orders of magnitude. For most scientists, getting the code to do the right thing is now a bigger bottleneck than its running time.
That's where Software Carpentry comes in. We teach scientists (usually grad students, since they have both the need and the time) what they ought to know before they start working on large programs, creating web services, or any other leading-edge work. Our hope is that if we give people basic skills, they'll be better able to take advantage of more sophisticated things.
Between January 2012 and July 2013, over 100 volunteers will have run 92 two-day workshops for over 3000 scientists. A typical two-day curriculum is:
As the comments above suggest, our real aim isn't to teach Python, Git, or any other specific tool: it's to teach computational competence. What we've found, though, is that we can't do this in the abstract: people won't show up, and if they do, they won't understand. We try hard to start with the particular, and to show them that yes, this stuff actually is useful, and then bring in more general stuff.
We nominally aim for 40 people per workshop, and are always grateful for local helpers to wander the room and answer questions during practicals. We find workshops go a lot better if people come in groups, e.g., 4-5 people from one lab, half a dozen from another department or institute, etc., so that they are less inhibited about asking questions, and can support each other afterward. (It also produces much higher turnout from groups that are usually under-represented in computing, such as women and minority students.) We use live coding rather than slides: it's more convincing, there's more lateral knowledge transfer (i.e., people learn more than we realized we were teaching them by watching us work), and it makes instruction a lot more responsive.
Our instructors are all volunteers, so the only cost to host sites is travel and accommodation. All but a handful of our instructors are working scientists themselves; that, plus live coding instead of slides, ensures that attendees get lots of "how" as well as "what".
We also run an online training course for would-be instructors. It takes 2-4 hours/week of their time for 12 weeks, and introduces them to the basics of educational psychology, instructional design, and how these things apply to teaching programming. It's necessarily very shallow, but it's still more than most university faculty ever get...
Results have been very good: we had two independent evaluations done last spring (one by Prof. Julie Libarkin at Michigan State University, the other by Dr. Jorge Aranda at the University of Victoria), and both found that people actually are learning useful things. What we're struggling with now is showing that this translates into them doing more and/or better science (the holy trinity of "novelty, efficiency, and trust").
Here's what else isn't working (or isn't working well):
We're pausing to catch our breath from mid-July to the end of August this year, during which time we'll clean up our GitHub repositories, finish the instructors' guide, and generally get ready for another round of boot camps in the fall. Before then, though, we will have some exciting news to announce, so please keep an eye on this blog—we think you'll like what you see.
Having helped at two previous boot camps (Oxford last year and UCL last month), a couple of weeks ago I had my first attempt at organising one at the University of Oxford, primarily aimed at students from the Doctoral Training Centres. Mario Antonioletti and Shoaib Sufi from the Software Sustainability Institute kindly did most of the instructing (I only ran two sessions), and Mario has already written a blog post with his perspective. Here I want to report the feedback we received from attendees and give some of my thoughts on the experience.
It took a while for registrations to get going - the vast majority signed up in the last week - but we had very few drop-outs before the event, with 30 attending the first day, and 24 still present at the end of the second. We did the traditional good point-bad point round-the-room feedback at that point, and got quite a few useful comments, shown below. I also sent round a more detailed questionnaire after the event which received 10 responses. All enjoyed the boot camp, and rated it overall good or very good. They also all felt they learned something useful, would recommend such events to others, and think universities should run them as standard.
| Good | Bad |
|---|---|
| Lectures good - not too fast | Issues getting pace correct for everyone |
| Covered basics well and included advanced topics | Some topics too easy |
| Selection of topics covered | Slightly too long on simple things in databases - more complex topics |
| Python good solid foundation | Intro Python too slow - too much basic programming |
| Documentation for the topics good, so could read the material to catch up | Version control too fast |
| Lots of topics, didn't get bored | Starting with version control - in at deep end - start simpler? |
| Sticky notes good idea | Version control not deep enough - need to explain concepts - what program actually does |
| Tech support from helpers great | Time management - wanted more Matlab |
| Examples very practical - could think how to apply them to my work | Include some theory behind Python - what important compared to other languages |
| Access to all the materials from the start and afterwards | Example used BitBucket but course materials on GitHub |
| Having sample code, e.g. seeing how other people implement tests | Databases needed more intro and context |
| Exercises good to learn from | Examples of big projects to explain the idea behind version control |
| Good balance of trying it yourself and lecturing | Using wrong programs on desktops - no cygwin |
| Everyone could see the screens | NumPy & SciPy not covered deeply enough |
| Number of demonstrators good - didn't have to wait for help | More comparison between Python and Matlab |
| Generally very helpful | |
| Awesome that this is free |
I think we did pitch things generally at slightly too easy a level for our audience. This was particularly the case for the introductory Python session, which started quite slowly. Several responses to the questionnaire requested fewer topics but in more depth, with less time spent on the very basics. It was interesting to me that the students wanted more background to the topics taught, for instance comparing Python with other programming languages and discussing the kinds of problems for which it is particularly suited, or explaining the mental model and behind-the-scenes behaviour of Git.
There were also some differences in what attendees wanted out of the boot camp. Some were particularly keen to learn Python, and they seemed to really appreciate what we covered. Others wanted more to improve their Matlab skills, and so were disappointed that the 'Software Carpentry in Matlab' session was squeezed by earlier sessions overrunning. I think they would probably have wanted a workshop devoted to covering the general principles entirely in Matlab without any Python, too.
The location in the Zoology Department worked very well for a boot camp. It was a newly equipped suite designed for teaching computer based courses. There were thus desks with plenty of space for helpers to move behind attendees, and desktop thin clients for those who couldn't bring their own laptops (or had issues with their setup). Best of all, the instructor's screen could be projected on three walls of the room, so everyone could see a screen in front and to the side.
Most setup issues were caused by Enthought releasing Canopy between the installation instructions being written and the boot camp occurring, so those attendees who didn't already have Python were faced with an installation that didn't match the instructions. The additional setup script for Windows users was also broken by paths changing. More annoying were some issues experienced with IPython on some machines, which we didn't get to the bottom of unfortunately. Pasting with %paste didn't work for some (%cpaste seemed to be an effective work-around), and tab completion was entirely absent on some systems.
We came across a few issues (and some good ideas) that might be helpful for future boot camps to consider.
There were a couple of other comments worth mentioning. One person wanted a topic on understanding pre-written code. Possibly going through a model solution to a longer exercise would be beneficial for this. Another person suggested splitting the workshop into half days on different topics, and letting attendees pick which they attend. I don't think this would work for normal boot camps, but with particular audiences, especially those with more background in some topics, this might be a helpful approach.
But my favourite comment of all, in one questionnaire response, was: "In my opinion the best aspect of the course was the explanations given about new concepts by the very competent computer scientists who ran the bootcamp. This was especially true for Jonathan and Aron." I think that's a good note on which to end!
On May 6th-7th, we hosted a bootcamp at Stanford University. Participants were students, post-docs and staff affiliated with the Center for Neurobiological and Cognitive Imaging and the Neuroscience Graduate Program and both units provided support for the workshop. Bob Dougherty, the research director at the CNI, helped raise a substantial portion of the funds to support the boot-camp (coffee!) and Prof. Miriam Goodman, from the Department of Molecular and Cellular Physiology, helped to get the neuroscience program on board and to secure additional funding from that program. Prof. Goodman was a participant in a SWC boot-camp at Berkeley last year and was eager to get SWC to Stanford. Instructors were Paul Ivanov, Bernhard Konrad and myself.
Considering that the students were a rather homegenous group in terms of their scientific interests (the brain!), there were a variety of backgrounds in terms of their knowledge about computers. Matching instruction to the level of knowledge (based on a pre-workshop questionnaire) was a challenge. As were installation issues that plagued the first day. A large majority of participants failed to follow the instructions provided by the Anaconda Python distribution to configure their bash shell environment. I guess that just goes to show that they needed the workshop.
The instruction followed the standard boot-camp plan for most of the two days: unix shell, version control with git, python programming, and so forth. In the last two-hour session of the work-shop we conducted a little experiment. Adapting a lesson plan from Justin Kitzes' recent UC Berkeley bootcamp, we taught a session aimed at teaching the students how to combine all the components of the previous parts (shell, git and programming) to create a reproducible research project. To make things more interesting, we used a publically available neuroscience data set. We demonstrated how one would load the data from the files comprising this data-set into an IPython notebook and performed a rather basic calculation on it, visualizing various quantities as we went along.
Demonstrating one possible work-flow, we started by working interactively in the notebook, exploring the data as we went along. We demonstrated how bits of an exploratory data analysis session can turn into function definitions. Then, we showed how you would write modules based on these function, tests for the modules, commit them as a git repo and start putting together a push-button analysis. We reached the end of all this a little bit out-of-breath and it is not obvious that everyone managed to follow through every step of the session, but I do believe that the most important point came across: reproducible research is important and, with the help of the tools we teach, eminently possible.
We used this etherpad to comminucate with students througout the workshop and to gather feedback at the end of each half-day. You can see a list of the participants at the top and the feedback strewn throughout. At the very end of the workshop, we asked them to write down their feedback for the entire workshop. Many took the time to write some thoughtful comments (for which we are grateful!). I have selected a couple of interesting points from the feedback we got. This one is quite encouraging:
great workshop. i appreciated the backround and theory as well as the more practical examples. i think you did a nice job presenting this information to students of various levels. might be helpful to make it clear what level this class is for - some people had no coding backround, others were quite experienced. maybe a quick survey in the beginning and maybe some work in groups to accodmidate the different levels. i really appreciated your humor and positive attitude:)
On the other hand, this one is a bit discouraging:
I'm very grateful that you all volunteer your time to do this. But, I think you can/should be paid for it. There's money around for such things, many of our PIs would be happy to fork up a few hundred bucks, and in general I think the culture of doing good work for free in academia is deleterious to our collective financial well-bring.+4
The '+4' at the end of that comment represents the fact that four additional people expressed their support to that point. I wonder whether this notion is due to the local hyper-capitalistic culture surrounding Stanford, and I am curious to hear what other instructors think about this. My personal response, also in line with some other aspects of the local culture, is that Software Carpentry is just one more way to create more value than we capture.
When the workshop was over, Paul, Bernhard and I took a long walk. Prof. Goodman had kindly invited us to her house in Menlo Park for post-workshop pizza and socializing. On the way over, we took the opportunity to go over the sessions one-by-one and reflect on them. For each session, each one of us in turn said what they think worked and what didn't work. It was very useuful to get feedback from the other instructors, to rehash the mistakes and the successes and to be able to imagine what we would do differently in future workshops. One of the main sentiments in the air was that we were not sure whether we had really managed to "seal the deal", to get students to actually start using the things we had shown them in their day-to-day life. Fortunately, I have the email addresses of participants. In a couple of months, I will circle back and ask them to fill another set of evaluations and (assuming anyone responds) see whether they have adopted any of it into their day-to-day research life.
Jenna Lang has posted a great wrap-up on the boot camp at UC Davis — with Python cookies!

Mario Antonioletti has posted his experiences on being a first-time instructor at our boot camp for the Oxford doctoral training centres, our second in Oxford, last week.
Hack4ac is a one-day hackathon in London, England, on July 6. Its goals are:
It looks like fun—if you're in the area and interested in getting involved, they'd be happy to have you there.
Vijee Venkatraman has written a good article for Science Careers titled "When All Science Becomes Data Science", which mentions Software Carpentry.
Software Carpentry's mission is to help scientists teach other scientists how to be better programmers. If we want to do that successfully, we need to be scientists ourselves. In particular, we need to base what we teach on evidence, not anecdotes or personal preferences.
For example: we taught Git at the Toronto boot camp last week, and once again I think our learners would have absorbed more if we'd taught Subversion. Why? Well, take a look at this diagram by Oliver Steele (which I found on this page written by Nick Quaranto):
Four locations are in play, and eight different commands are used to move information around or compare what's in one place to another. Now look at the corresponding diagram for Subversion:

There are only three locations for people to keep track of, and the basic workflow involves only four commands. If you believe complexity is partially multiplicative (because people have to keep track of the interactions between things, as well as the things themselves), Git is at least twice as complex for people to understand. Slicing it another way, there are more opportunities for people to do the wrong thing with Git, and more they have to understand to undo it. And that's before we introduce branches...
But that's just my point of view, and the fact that I can wrap a plausible story around it doesn't make it true. Matt Davis and others believe they've been successful with Git in front of the same kinds of people. We need to find out who's right, so our major goal for the next three months is to poll and interview boot camp attendees to find out who was taught what, who tried what, who's still using what, and why. Caitlyn Pickens will be leading this effort, and many of you will get email from her in the next few weeks. When it arrives, please take a few minutes to tell us what you're actually doing, even if it's not what we told you to do—especially if it's not, because that'll tell us what we need to fix.
The hosts of our February boot camp at the AMOS conference in Melbourne have collected some more detailed feedback from participants. I'm pleased that two thirds thought the content was just right, and even more pleased that 83% thought version control "must be taught".
How useful did you find the online software installation instructions?
| 76% | Very useful: I required no assistance with installing the software |
| 24% | Somewhat useful: I required minimal assistance with installing the software |
| 0% | Not very useful: I required significant assistance with installing the software I was unable to get most of the software installed |
How did you feel about the schedule?
| Too early | Fine | Too late | |
| 9:00am start | 3% | 93% | 3% |
| 4:30pm finish | 0% | 97% | 3% |
The lunch and tea breaks were:
| 3% | Too short |
| 93% | A good length |
| 3% | Too long |
What do you think is the ideal length of time for a boot camp?
| 3% | 1 day |
| 33% | 2 days |
| 50% | 3 days |
| 13% | 1 week |
Rate the following topics in terms of how important you think they are for a weather/climate science audience.
| Must be taught | Take it or leave it | Take it out | |
| Intro to Python | 86% | 7% | 7% |
| Program design and testing | 97% | 3% | 0% |
| Version control | 83% | 14% | 3% |
| Regular expressions | 43% | 50% | 7% |
| Databases | 31% | 48% | 21% |
| Numpy | 57% | 32% | 11% |
In general, you found the content:
| 0% | Much too hard: I was struggling to keep up! |
| 14% | Slightly too hard |
| 66% | Just right |
| 17% | Slightly too easy |
| 3% | Much too easy: I was struggling to stay awake! |
"Online office hours" is a service provided by Software Carpentry where you can get online assistance over a 2 hour period once a week. Which item best describes your current engagement with that service?
| 0% | I've attended in the past but probably won't again |
| 7% | I've attended in the past and will do so again |
| 55% | I've never attended but probably will in future |
| 38% | I've never attended and probably never will |
If a boot camp (of similar content) was held in conjunction with the AMOS conference in Hobart next February, do you think you would attend (i.e. as a refresher)?
| 18% | Yes |
| 32% | No |
| 50% | Maybe |
| Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| 2005 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 3 | 0 | 1 | 6 |
| 2006 | 10 | 11 | 4 | 5 | 2 | 1 | 3 | 4 | 0 | 2 | 2 | 1 |
| 2007 | 1 | 1 | 3 | 1 | 1 | 6 | 4 | 2 | 2 | 2 | 0 | 1 |
| 2008 | 0 | 4 | 4 | 4 | 7 | 3 | 6 | 4 | 2 | 2 | 7 | 6 |
| 2009 | 4 | 9 | 5 | 8 | 6 | 13 | 20 | 16 | 9 | 8 | 9 | 5 |
| 2010 | 7 | 4 | 10 | 11 | 24 | 41 | 32 | 12 | 17 | 24 | 15 | 23 |
| 2011 | 24 | 19 | 24 | 5 | 6 | 11 | 9 | 3 | 8 | 8 | 12 | 10 |
| 2012 | 15 | 37 | 28 | 26 | 31 | 21 | 9 | 13 | 18 | 30 | 25 | 22 |
| 2013 | 14 | 18 | 12 | 16 | 13 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 2013-05-24: | Planning for the Break |
| 2013-05-24: | Where We Are (More or Less) |
| 2013-05-24: | Feedback from the Oxford DTCs |
| 2013-05-16: | Stanford Bootcamp Recap |
| 2013-05-17: | Wrapping Up at UC Davis |
| 2013-05-17: | Experiences with the Oxford DTCs |
| 2013-05-16: | Announcing Hack4ac |
| 2013-05-14: | A Mention in Science Careers |
| 2013-05-10: | Git vs. Subversion and Feedback in General |
| 2013-05-03: | More Detailed Feeback from Melbourne |
| 2013-05-03: | Make It Easier to (Re)use Your Data |
| 2013-05-02: | Translucent Badges |
| 2013-05-02: | A Rational Computing Process: How and Why to Fake It |
| 2013-04-30: | Pre-Assessment Results |
| 2013-04-29: | An Update on Cumulative Enrolment |
| 2013-04-27: | Sound Software Competition |
| 2013-04-24: | Bootcamp Recap: Middle East and South Africa |
| 2013-04-24: | Manchester Once Again |
| 2013-04-23: | Software Carpentry at SciPy 2013 |
| 2013-04-19: | Spreadsheets, Retractions, and Bias |
| 2013-04-19: | Feedback from Arizona |
| 2013-04-16: | Feedback from UC Berkeley |
| 2013-04-16: | Feedback from the EGI Forum |
| 2013-04-08: | A Bootcamp in Toronto May 9-10, 2013 |
| 2013-04-07: | Announcing a Bootcamp for Women in Science and Engineering |
| 2013-04-08: | Evaluation Revisited |
| 2013-04-08: | Installation Revisited |
| 2013-04-05: | An Image Analysis Success Story |
| 2013-04-03: | Connecting Boot Camp Content to Motivation and Best Practices |
| 2013-03-24: | Using the IPython Notebook as a Teaching Tool |
| 2013-03-17: | Cumulative Enrollment |
| 2013-03-17: | Testing Image Processing |
| 2013-03-15: | Snowstorms and Blackouts in Virginia |
| 2013-03-14: | New Camps Coming Up |
| 2013-03-13: | Second Round at Lawrence Berkeley |
| 2013-03-12: | A New Testing Framework for MATLAB |
| 2013-03-05: | First Round at Lawrence Berkeley |
| 2013-03-02: | Teaching with ipythonblocks at UW |
| 2013-03-01: | Feedback from UW Room B |
| 2013-03-01: | Washington Went Well |
| 2013-03-01: | Alternative Teaching Models |
| 2013-02-27: | Workshop for High-Energy Physics at UCL, Part 2 |
| 2013-02-15: | Expanding Our Boot Camp Types |
| 2013-02-27: | A Bootcamp for Women in Science and Engineering |
| 2013-02-15: | Wrapping Up in Melbourne |
| 2013-02-14: | Registration for Amsterdam Boot Camp is Open |
| 2013-02-14: | More News from the UK |
| 2013-02-13: | Second Dry-Run of DiRAC Driver's License Exam |
| 2013-02-12: | Partnering with the SSI |
| 2013-02-11: | Correctness Isn't Compelling |
| 2013-02-11: | UBC Went Well |
| 2013-02-08: | Macquarie Went Well |
| 2013-02-06: | We Have a Facebook Page |
| 2013-02-03: | Features and Scope in Open Courseware |
| 2013-02-03: | The Missing Side of the Triangle |
| 2013-02-03: | A Short Report from Tuebingen |
| 2013-02-02: | A Short Report from Utah State |
| 2013-02-01: | Next-Generation Sequencing Course 2013 |
| 2013-02-01: | A Bunch of Bootcamps |
| 2013-01-30: | Teaching R at UBC |
| 2013-01-30: | A Boot Camp at Mozilla |
| 2013-01-28: | Novelty, Efficiency, and Trust |
| 2013-01-24: | Visualizing Nuclear Fuel Inventories |
| 2013-01-23: | How to Become an Instructor |
| 2013-01-22: | Record and Playback in the IPython Notebook |
| 2013-01-21: | Online Office Hours |
| 2013-01-16: | University of Chicago in January |
| 2013-01-14: | Montreal in January |
| 2013-01-11: | Teaching Commercially |
| 2013-01-10: | PLoS Ad for Software Carpentry |
| 2013-01-05: | The Art of Cold Calling |
| 2013-01-04: | Advice From a Newbie No More |
| 2013-01-04: | Why We Teach |
| 2012-12-23: | Computer Science Curricula 2013 |
| 2012-12-21: | Code of Conduct |
| 2012-12-21: | Sample Data Management Plans |
| 2012-12-19: | Minutes from 2012-12-19 All-Hands Meeting |
| 2012-12-16: | You've Shown Me the C, Now Where's the Python? |
| 2012-12-15: | Lorena Barba's Reproducibility PI Manifesto |
| 2012-12-15: | Three Non-trivial Use Cases for Git |
| 2012-12-13: | Two R Workshops at UBC in 2013 |
| 2012-12-12: | Feedback from Edinburgh |
| 2012-12-12: | IPython Funding: Hurray! |
| 2012-12-11: | Some of the Things We've Learned About Teaching Git |
| 2012-12-10: | Things Are Going Well in Texas on Ada Lovelace's Birthday |
| 2012-12-09: | What To Work On In 2013 |
| 2012-12-08: | Creating a Task List |
| 2012-12-05: | Sustainability |
| 2012-12-05: | Our First Hackathon |
| 2012-12-05: | Who Can Run a Software Carpentry Workshop? |
| 2012-12-05: | Moving Up and Moving Down |
| 2012-12-05: | Why Be an Instructor |
| 2012-12-05: | Six Years Later |
| 2012-12-04: | See You at PyCon 2013 |
| 2012-12-01: | European Grid Infrastructure is Organizing a Software Carpentry Workshop |
| 2012-09-30: | Oslo and Columbia |
| 2012-09-30: | The Real Hard Work |
| 2012-09-29: | Workshop at the University of Newcastle in October |
| 2012-09-27: | How to Run a Bootcamp (new and improved) |
| 2012-09-26: | Computational Thinking and Ice Floating in Bathtubs |
| 2012-09-20: | Why This Stuff Is Hard To Teach |
| 2012-09-20: | Feedback and wrap-up from York |
| 2012-09-18: | What's In Your Stack? |
| 2012-09-18: | Post-Mortem on the NGS Course |
| 2012-09-16: | Systematic Curriculum Design |
| 2012-09-13: | Number Crunching with Python: DC Python Workshop |
| 2012-09-12: | The Software Is Open (even if the interviews aren't) |
| 2012-09-12: | Patterns Wanted |
| 2012-09-06: | How Quickly Do Workshops Fill Up? |
| 2012-09-04: | Free As In Pretty Much Whatever You Want |
| 2012-09-04: | Not Really Disjoint |
| 2012-09-04: | Final Results of Demographic Survey |
| 2012-09-02: | Lifted by the Audience |
| 2012-08-29: | Linking Forward From a Bibliography? |
| 2012-08-29: | A Problem With Badges |
| 2012-08-29: | Please Help the Hunter Family |
| 2012-08-27: | An Interview with Titus Brown |
| 2012-08-21: | An Updated List of Upcoming Workshops |
| 2012-08-20: | What We Talk About When We Talk About Software Carpentry |
| 2012-08-17: | Who Are You? |
| 2012-08-16: | Alpha Test of Driver's License Exam |
| 2012-08-14: | A Question and Answer Matrix for Software Carpentry |
| 2012-08-14: | Interview about Software Carpentry (and Education) |
| 2012-08-14: | Applying Pedagogical Principles in This Course |
| 2012-08-01: | We're Going to Be Busy |
| 2012-08-01: | That Was Quick |
| 2012-07-30: | Record and Playback |
| 2012-07-28: | Software Carpentry Needs You! |
| 2012-07-22: | IPython Notebook + Towtruck + Etherpad + Slide Drive = Win |
| 2012-07-21: | How Robust Is Your Programming Language? |
| 2012-07-21: | Software Carpentry in Paris ! |
| 2012-07-19: | Workshop wrap up from the Rutherford Appleton Laboratory |
| 2012-07-17: | Wrapping Up in Halifax |
| 2012-07-10: | Wrapping Up in Boston |
| 2012-07-05: | Independent Assessment of the Past Six Months |
| 2012-06-27: | Where We Are (June 2012 edition) |
| 2012-06-27: | A Supercomputing Driver's License |
| 2012-06-27: | Fortran Format Statements and Regular Expressions |
| 2012-06-26: | Pessimism and Doom |
| 2012-06-26: | Two Posts on Scientific Workflows |
| 2012-06-26: | Handling Variant Configuration Files |
| 2012-06-25: | If You Want to Teach, Isn't It Only Fair to Learn a Few Things First? |
| 2012-06-20: | Feedback from Johns Hopkins |
| 2012-06-18: | A Busy Week (And Schwag!) |
| 2012-06-15: | This Week's Tutorials |
| 2012-06-15: | Pretty Well Sums It Up |
| 2012-06-14: | All Entries for the Executable Paper Grand Challenge |
| 2012-06-10: | First Workshop on Maintainable Software Practices in e-Science |
| 2012-06-08: | But the Greatest of These Is... |
| 2012-06-08: | We Get Mail |
| 2012-06-07: | Tutorial: NumPy, SciPy, and matplotlib |
| 2012-06-07: | Ten Simple Rules |
| 2012-06-04: | What Skills Are Required to Implement Open Access? |
| 2012-06-04: | Software Carpentry: The E-Book Version? |
| 2012-06-03: | Git tutorial links |
| 2012-06-01: | Introduction to NumPy Tutorial |
| 2012-01-31: | Reorganizing This Web Site |
| 2012-01-29: | Learners and Their Needs |
| 2012-01-29: | Terminology |
| 2012-01-26: | Our Long Tail |
| 2012-01-26: | Never Mind the Content, What About the Format? |
| 2012-01-25: | The Big Picture |
| 2012-01-24: | Take Out Agile, and Add...What? |
| 2012-01-24: | Test-Driven Public Speaking |
| 2012-01-24: | Badging |
| 2012-01-23: | Revising the Curriculum |
| 2012-01-20: | The First Boot Camp of 2012 |
| 2012-01-15: | Why Is This Hard? |
| 2012-01-13: | The What, Why, and How of Boot Camps |
| 2012-01-11: | Sloan Foundation Grant to Software Carpentry and Mozilla |
| 2012-01-04: | Settings Our Sights a Little Bit Lower |
| 2011-12-31: | The Fire Last Time |
| 2011-12-31: | Some Responses to Some Comments |
| 2011-12-30: | Fork, Merge, and Share |
| 2011-12-29: | Yet Another Survey |
| 2011-12-24: | What Success Looks Like Five Years Out |
| 2011-12-24: | Organizing Instruction and Study to Improve Student Learning |
| 2011-12-20: | It Just Keeps On Hurting |
| 2011-12-20: | What I've Learned So Far |
| 2011-12-13: | New Features in Excel for Scientists |
| 2011-12-07: | How to Teach Webcraft and Programming to Free-Range Students |
| 2011-11-29: | Three Short Thoughts |
| 2011-11-25: | Building a Bibliography |
| 2011-11-19: | Knowledge of the Second Kind |
| 2011-11-18: | Accessible to All? |
| 2011-11-18: | Quantifying Installation Costs |
| 2011-11-18: | Show Me the Data |
| 2011-11-14: | Clearing Up Code |
| 2011-11-14: | Surviving the Tsunami |
| 2011-11-11: | Successful Bootcamp |
| 2011-11-08: | The Best vs. the Good |
| 2011-11-08: | The Ladder of Abstraction and the Future of Online Teaching |
| 2011-11-06: | Nirvana on Monday Night |
| 2011-10-22: | Research Without Walls |
| 2011-10-21: | Slides from Hans-Martin |
| 2011-10-19: | American Scientist Article on Empirical Studies of Software Engineering |
| 2011-10-14: | Updating to HTML 5 |
| 2011-10-14: | The Science Code Manifesto's Five C's |
| 2011-10-07: | Four New Episodes on Databases Using Microsoft Access |
| 2011-10-05: | Revamping This Site |
| 2011-10-04: | 2011 Software Carpentry Bootcamp Sold Out! |
| 2011-09-22: | Plus Ca Change... |
| 2011-09-20: | I'm Not Normally Lost for Words |
| 2011-09-17: | The Simplest Web That Could Possibly Work |
| 2011-09-13: | Progress Of A Sort |
| 2011-09-08: | What Happens When You Install Something? |
| 2011-09-05: | Where is the Puck Going to Be? |
| 2011-09-02: | Teaching Security to Scientists |
| 2011-09-01: | Renting Cycles Has Never Been Easier (For Some Definition of 'Easier') |
| 2011-08-17: | Demos Reinforce Errors, and Confusion is Good |
| 2011-08-08: | Introducing Programming a Different Way |
| 2011-08-04: | Computing in Physics 101: What We're Doing Wrong |
| 2011-07-22: | Software Carpentry in HPCWire |
| 2011-07-20: | And Speaking of Titus Brown... |
| 2011-07-20: | How Much Do You Need? |
| 2011-07-20: | Material from Newcastle Workshop Now Available |
| 2011-07-20: | The Case of Abinit |
| 2011-07-11: | Architecture of Open Source Applications Webinars Tuesday July 13 and 20 |
| 2011-07-10: | Stanford Course Went Well |
| 2011-07-06: | Reproducible Computational Geophysics |
| 2011-07-01: | Mentioned in Nature Methods |
| 2011-06-29: | It Will Never Work in Theory |
| 2011-06-22: | Michael Nielsen Talks About Open Science in San Francisco on June 29 |
| 2011-06-20: | Doing the Math |
| 2011-06-18: | Health Informatics Resources |
| 2011-06-15: | New Episode: MATLAB Structs and Cell Arrays |
| 2011-06-14: | A New Look |
| 2011-06-10: | Audio Processing in Python |
| 2011-06-07: | Practical Computing for Everyone (not just biologists) |
| 2011-06-04: | Programming for Scientists at Newcastle University: June 20, 2011 |
| 2011-06-02: | Five on Systems Programming |
| 2011-06-01: | Workshop at CEF'11 |
| 2011-05-23: | 'The Architecture of Open Source Applications' is Now Available |
| 2011-05-14: | More Interested in the Asides |
| 2011-05-13: | Damn the Torpedoes (but I could use some help navigating) |
| 2011-05-06: | The Architecture of Open Source Applications |
| 2011-05-03: | The Hacker Within at MSU in June |
| 2011-05-02: | Managing Data |
| 2011-04-23: | Chapters |
| 2011-04-22: | In Praise of Street Fighting |
| 2011-04-18: | Holding Up a Mirror |
| 2011-04-11: | Prototyping |
| 2011-04-09: | By The Numbers |
| 2011-03-31: | Harder Than It Should Be |
| 2011-03-31: | Using Bein |
| 2011-03-30: | Practical Computing for Scientists at Stanford |
| 2011-03-30: | Spring 2011 Course Over |
| 2011-03-26: | And I'm on a Horse |
| 2011-03-24: | A Better Way to Teach Programming to Scientists |
| 2011-03-23: | Our First Episode on Microsoft Access |
| 2011-03-22: | I'd Settle for 0.1% |
| 2011-03-22: | You'll Need a Large Screen |
| 2011-03-21: | Using a Debugger |
| 2011-03-21: | Videos of Autumn School Lectures |
| 2011-03-18: | On a Personal Note... |
| 2011-03-17: | Questions and Answers |
| 2011-03-16: | Graph Layout, Models vs. Views, and Computational Thinking |
| 2011-03-16: | Next-Generation Sequencing Course at MSU |
| 2011-03-15: | Twenty Questions (Minus Two) |
| 2011-03-15: | Call for Participation |
| 2011-03-12: | What To Demand |
| 2011-03-11: | Science Illustrated |
| 2011-03-11: | Musing About Reorganization |
| 2011-03-09: | High Tech That Looks Low Tech |
| 2011-03-09: | Advanced Scientific Programming in Python |
| 2011-03-07: | Literate Programming |
| 2011-03-01: | Tuple Spaces (or, Good Ideas Don't Always Win) |
| 2011-02-25: | We Got a Mention in Comm. ACM |
| 2011-02-24: | An Easy Place to Start: Systems Programming |
| 2011-02-23: | Ask, And Ye Shall Receive |
| 2011-02-22: | What Better Looks Like |
| 2011-02-19: | Three More Episodes on MATLAB |
| 2011-02-18: | Scientific Computing Podcast |
| 2011-02-18: | Mirroring Software Carpentry |
| 2011-02-17: | Reddit on Scientific Programming |
| 2011-02-16: | I Want Their Software |
| 2011-02-16: | How to Contribute |
| 2011-02-15: | Top Ten Why Nots |
| 2011-02-15: | First Four MATLAB Episodes |
| 2011-02-14: | Audio for Three Software Engineering Episodes |
| 2011-02-14: | Two More Episodes on Spreadsheets |
| 2011-02-11: | Updates to Spreadsheet Lecture |
| 2011-02-08: | What Computational Science Means to Me |
| 2011-02-03: | Scripts for Two More Software Engineering Episodes |
| 2011-02-02: | Three Months, Two Spikes, One Conclusion |
| 2011-02-01: | First Episode on Software Engineering |
| 2010-12-31: | Software Carpentry Boot Camp Jan 12-14 in Madison |
| 2010-12-30: | More Detailed Outline for HPC Lecture |
| 2010-12-27: | Open Research Computation |
| 2010-12-27: | Elimination |
| 2010-12-26: | Local Subversion Repositories |
| 2010-12-23: | Extended Examples |
| 2010-12-21: | Compute Canada's 'Strategic' Plan Isn't |
| 2010-12-20: | Executable Papers |
| 2010-12-15: | Building a Recommendation Engine with NumPy |
| 2010-12-14: | Presents for the Holidays |
| 2010-12-13: | Slides for First Five OO Episodes Online |
| 2010-12-10: | Winter 2011 Signup vs. Spam Filters |
| 2010-12-10: | Performance and Parallelism |
| 2010-12-09: | Where Are My Keys? |
| 2010-12-08: | How Do You Manage a Terabyte? |
| 2010-12-07: | Approaching Objects from a New Direction |
| 2010-12-06: | Pins, Balls, and Arbitrary Decisions |
| 2010-12-02: | Peer to Peer |
| 2010-12-02: | Programmer Competency Matrix |
| 2010-12-02: | Prerequisites (or, When to Say No) |
| 2010-12-02: | Red-R |
| 2010-12-02: | Cast Your Votes |
| 2010-12-02: | Fall 2010: What Went Right, What Went Wrong |
| 2010-11-30: | First Four Episodes on Multimedia |
| 2010-11-29: | Winter 2011 Online Course Now Full |
| 2010-11-26: | Next Part of Persistence Essay Online |
| 2010-11-25: | Hours So Far |
| 2010-11-23: | Phylogenetic Trees |
| 2010-11-23: | Four Episodes on Matrix Programming |
| 2010-11-21: | Repository URL Change |
| 2010-11-20: | Mid-term Quiz Results |
| 2010-11-19: | Now Annotated |
| 2010-11-18: | Summary of student check-ins |
| 2010-11-17: | New Section for Essays |
| 2010-11-17: | 'Making Software' Screencast |
| 2010-11-16: | Ratios and Rework |
| 2010-11-07: | Counting Things (Part 2) |
| 2010-11-05: | Done In London |
| 2010-10-31: | Counting Things (Part 1) |
| 2010-10-30: | Would You Prefer... |
| 2010-10-30: | Need Something to Debug |
| 2010-10-30: | Dubois on Maintaining Correctness |
| 2010-10-29: | Provenance (Or, What We Didn't Quite Get to at the Met Office) |
| 2010-10-28: | Feedback at UKMO |
| 2010-10-28: | How We've Helped |
| 2010-10-27: | ComputerWorld Canada Educator of the Year |
| 2010-10-24: | Configuration Files |
| 2010-10-21: | Slides Available as PDF and PPT |
| 2010-10-18: | Final Four Episodes of Python Lecture |
| 2010-10-18: | How Did You Find Us? |
| 2010-10-17: | Ratings Revised |
| 2010-10-15: | Six More Python Episodes |
| 2010-10-14: | Three Python Screencasts Up |
| 2010-10-14: | Nature Article on Scientific Programming |
| 2010-10-14: | Dexy |
| 2010-10-13: | Three More Episodes on Spreadsheets |
| 2010-10-12: | Python Lecture Coming Online |
| 2010-10-05: | Using Subversion from the Command Line |
| 2010-10-14: | Five Rules for Computational Scientists |
| 2010-10-04: | Aaaand We're Off! |
| 2010-10-03: | What Questions Do You (Frequently) Ask? |
| 2010-10-03: | Do You Use Software Carpentry? |
| 2010-09-30: | Ten Short Papers Every Computational Scientist Should Read |
| 2010-09-30: | Tracking Utility and Impact |
| 2010-09-28: | A New Site Design |
| 2010-09-23: | Software Carpentry at UCSF |
| 2010-09-22: | Response Has Been Overwhelming |
| 2010-09-21: | I'm No Graphic Artist... |
| 2010-09-20: | Your Favorite Running Examples? |
| 2010-09-16: | Survey: Help Needed |
| 2010-09-15: | Five Episodes on Make |
| 2010-09-15: | Testing Scientific Software |
| 2010-09-14: | Software Carpentry Offered Online in Fall 2010 (for Ontario students) |
| 2010-09-13: | Will America's Universities Go The Way Of Its Car Companies? |
| 2010-09-09: | And For My Next Trick... |
| 2010-09-08: | Slides for the First Four Episodes on Make |
| 2010-09-06: | Getting the Source |
| 2010-09-03: | Eight Episodes on the Unix Shell |
| 2010-09-01: | Three More Sets of Slides |
| 2010-08-31: | Five Episodes on the Shell (and Three to Come) |
| 2010-08-27: | Four More Screencasts on Testing |
| 2010-08-26: | Another Update on What You Want |
| 2010-08-23: | What Don't You Understand That You'd Like To? |
| 2010-08-19: | Slides and Scripts for the Next Two Episodes |
| 2010-08-16: | 43% Independent |
| 2010-08-12: | Interview with Cameron Neylon |
| 2010-08-05: | Software Carpentry for Audio and Music Researchers |
| 2010-08-05: | An Answer That Most Students Won't Understand |
| 2010-08-03: | A Question About Nose |
| 2010-08-03: | Open Source, Open Science in 1999 |
| 2010-08-02: | Interview with Sergey Fomel |
| 2010-04-19: | Apologies for the Flurry of Re-Posts |
| 2010-04-16: | File Sharing for Scientists |
| 2010-04-15: | Scimatic Sponsorship |
| 2010-04-12: | More on Instructional Design |
| 2010-04-12: | Teaching Open Source |
| 2010-04-11: | Measuring Science |
| 2010-04-08: | Software Carpentry for Economists in Mannheim This Autumn |
| 2010-04-08: | Platforms |
| 2010-04-04: | Feedback and Boundaries |
| 2010-04-01: | Simon Singh Wins (and So Does Science) |
| 2010-04-01: | Models To Imitate |
| 2010-03-31: | Periodic Table of Science Bloggers |
| 2010-03-30: | Formats |
| 2010-03-29: | What's Not on the Reading List |
| 2010-03-28: | Recommended Reading |
| 2010-03-26: | Instructional Design |
| 2010-03-26: | Online Delivery |
| 2010-03-25: | Software Carpentry Version 4 is a Go! |
| 2010-03-25: | Summer Course: Analyzing Next-Generation Sequencing Data |
| 2010-03-23: | Now on Twitter |
| 2010-03-11: | How Much Of This Should Scientists Understand? |
| 2010-02-28: | Panton Principles |
| 2010-02-25: | Eighty Per Cent! |
| 2010-02-22: | BEACON Funded! |
| 2010-02-12: | Two Views |
| 2010-01-24: | It Seems That Everyone Cares |
| 2010-01-20: | Big Science == Big Skills Gap |
| 2010-01-18: | Was Designed To, But Didn't |
| 2010-01-13: | Whatcha Gonna Do When They Come For You? |
| 2010-01-13: | Podcast with Jon Udell |
| 2010-01-10: | How We Got Here, and Where We Are |
| 2010-01-07: | New Challenges |
| 2009-12-30: | Osmosis is Just a Fancy Name for Failure |
| 2009-12-27: | Dudley and Butte on Software Skills |
| 2009-12-19: | NSF Programs |
| 2009-12-18: | Double Standards |
| 2009-12-11: | Why Opening Up (Probably) Wouldn't Help |
| 2009-11-28: | Thanks, Jamie |
| 2009-11-26: | Caesar's Wife |
| 2009-11-24: | Tutorials Start This Week |
| 2009-11-22: | Serendipitous and Unexpected |
| 2009-11-18: | Special Issue of Computing in Science and Engineering |
| 2009-11-15: | Cloud Computing for Beginners |
| 2009-11-13: | Packaging |
| 2009-11-06: | Python in Science |
| 2009-11-01: | Our Target Audience |
| 2009-10-30: | By Popular Request... |
| 2009-10-23: | Cryptography Isn't Security |
| 2009-10-21: | Should Modeling Be Part of This Course? |
| 2009-10-21: | Creating New Niches |
| 2009-10-16: | Revised Plan |
| 2009-10-08: | Videos from Symposium Are Now Online |
| 2009-10-06: | Comments on Course Reorganization |
| 2009-10-05: | The Hacker Within |
| 2009-09-29: | A Strange Obsession |
| 2009-09-24: | Presentation, Presentation, Presentation |
| 2009-09-22: | Grant Proposal |
| 2009-09-21: | Another Reason to Care About Provenance |
| 2009-09-18: | Updated Outline for Revised Course |
| 2009-09-15: | Partial Outline of New Version of Course |
| 2009-09-11: | Job Opening: MITACS Scientific Coordinator |
| 2009-09-11: | Two Links |
| 2009-09-05: | R for Programmers? |
| 2009-08-30: | Is The Future Waving At You? |
| 2009-08-26: | How Important is Geospatial Data to You? |
| 2009-08-24: | Science and JoVE |
| 2009-08-24: | Bad News and Good News |
| 2009-08-24: | Playing Safe |
| 2009-08-24: | Who Owns Your Data? |
| 2009-08-23: | The Delight Is In The Details, Too |
| 2009-08-21: | The Big Picture |
| 2009-08-15: | It's Like Not Wearing Your Cleats in the House |
| 2009-08-15: | You Can Do a Lot Without Programming |
| 2009-08-06: | American Scientist Article on How Scientists Use Computers |
| 2009-08-04: | The Ice Cream Test |
| 2009-08-03: | What *Is* Open Science? |
| 2009-08-03: | Guest Speakers' Slides Now Available |
| 2009-08-02: | Next Steps |
| 2009-08-01: | Post-Mortem |
| 2009-07-31: | Day[-2] |
| 2009-07-31: | A Good Afternoon |
| 2009-07-29: | Every Day Is a Big Day... |
| 2009-07-28: | Day 11 and Day 12 |
| 2009-07-27: | Where This Course Came From |
| 2009-07-26: | Martin Fenner on SciBarCamp |
| 2009-07-24: | Day 10 Done - and With It, Week 2 |
| 2009-07-24: | Day 9 |
| 2009-07-22: | Day 8: Getting It Right |
| 2009-07-22: | Day 7: Lots More Objects |
| 2009-07-21: | Elsevier's Future, Version 0.1 |
| 2009-07-21: | Day 6: Theory and Practice |
| 2009-07-19: | Quantum to Cosmos: October 15-25 in Waterloo |
| 2009-07-19: | Day 5 |
| 2009-07-17: | Day 4 |
| 2009-07-16: | Day 3 |
| 2009-07-15: | Day 2 |
| 2009-07-13: | Aaaand They're Off! |
| 2009-07-10: | See You Monday! |
| 2009-07-04: | Registration for July 29 Talks is Now Open |
| 2009-06-29: | Quality Control and Traceability |
| 2009-06-29: | The Environmental e-Science Revolution |
| 2009-06-29: | Ready for Proofreading |
| 2009-06-25: | Updating the License |
| 2009-06-24: | Topics and Schedule |
| 2009-06-23: | Another New Version of the Slides |
| 2009-06-15: | And Speaking of Sightings... |
| 2009-06-15: | Sightings |
| 2009-06-15: | Neylon's Head in the Clouds |
| 2009-06-02: | Software Carpentry in Edmonton July 13-31 |
| 2009-06-02: | Two Spots Left in Toronto |
| 2009-06-01: | Big Code vs. Science 2.0 |
| 2009-06-01: | SECSE Workshop |
| 2009-05-12: | Error Handling |
| 2009-05-11: | Links for Summer Interns |
| 2009-05-09: | How Scientists Use Computers: Survey Part 2 |
| 2009-05-06: | Topics and Schedule Posted |
| 2009-05-04: | Entrance Requirements |
| 2009-05-01: | What If Scientists Didn't Compete? |
| 2009-04-28: | Empirical Software Engineering and Scientific Computing |
| 2009-04-27: | Madagascar Course in Delft June 12-13 |
| 2009-04-27: | Firming Up Course Goals |
| 2009-04-23: | What Supervisors Need To Know |
| 2009-04-08: | We've Started a FAQ |
| 2009-04-08: | Software Carpentry in Alberta |
| 2009-04-03: | Cameron Neylon on the Three Opens |
| 2009-04-01: | Software Carpentry in Toronto July 13-31 2009 |
| 2009-03-30: | User Stories |
| 2009-03-25: | Inference for R |
| 2009-03-25: | Open Notebook Science Badges |
| 2009-03-17: | Legal Frameworks for Reproducible Research |
| 2009-03-02: | Open Science and Autism's False Prophets |
| 2009-02-23: | Das Kapital, Computational Thinking, and Productivity |
| 2009-02-18: | Computer Supported Collaborative Science |
| 2009-02-18: | Open Science Panel at Columbia |
| 2009-02-16: | Enough Players to Hand Out Medals |
| 2009-02-11: | MTEST |
| 2009-02-11: | Carl Zimmer's Readers' Reading List |
| 2009-02-11: | Python Textbooks for Biotech |
| 2009-02-06: | Sharing Data Isn't That Easy |
| 2009-02-04: | Cameron Neylon Says Interesting Things |
| 2009-01-30: | 'Communicate First, Standardize Second' |
| 2009-01-27: | Web Native Lab Notebooks |
| 2009-01-23: | A New Kind of Big Science |
| 2009-01-10: | I *Want* To Be A Number |
| 2008-12-31: | Time to Freshen It Up |
| 2008-12-26: | Things I'd Like To Finish In the Next 489 Days |
| 2008-12-24: | A Healthy Dose of Scepticism |
| 2008-12-19: | The National Academy Would Like to Hear From You |
| 2008-12-19: | Google Pulls the Plug on Scientific Data Sharing Project |
| 2008-12-10: | Three Reasons to Distrust Microarray Results |
| 2008-11-30: | Igor, Connect the Electrodes! |
| 2008-11-21: | SECSE'09 Call for Papers |
| 2008-11-20: | Getting the Science Right---Or At Least, Less Wrong |
| 2008-11-17: | Science Lessons for MPs |
| 2008-11-16: | What Sciences Are There? |
| 2008-11-04: | One Good Survey Deserves Another |
| 2008-11-02: | 1731 People |
| 2008-10-27: | Finding and Re-using Open Scientific Resources |
| 2008-10-15: | Surveying Scientists' Use of Computers |
| 2008-09-11: | Science in the 21st Century |
| 2008-09-04: | Science 2.0: the Future of Online Tools for Scientists |
| 2008-08-22: | Bil Lewis Works With Biologists... |
| 2008-08-13: | Data Provenance Challenge |
| 2008-08-11: | SciFoo, eGY, and Splitting |
| 2008-08-01: | They're Breeding Like Rabbits |
| 2008-07-28: | Next Lecture? |
| 2008-07-23: | Badge of Reproducibility |
| 2008-07-23: | Quick Quiz to Measure What Scientists Know |
| 2008-07-22: | Reviving the Software Carpentry Mailing List |
| 2008-07-19: | Badge of Honor? |
| 2008-07-01: | Kevin's Been Busy |
| 2008-06-13: | What a Proposal Looks Like |
| 2008-06-06: | Faking Results |
| 2008-06-03: | Three Weeks and Change |
| 2008-05-30: | Programming and Scientific Education on Slashdot |
| 2008-05-27: | Reminded of the Difference Once Again |
| 2008-05-25: | Interviewed by Jon Udell |
| 2008-05-21: | Why Don't We Do This? |
| 2008-05-16: | But I Was Gone Less than 48 Hours! |
| 2008-05-15: | SE-CSE Workshop |
| 2008-05-05: | Those Who Will Not Learn From History... |
| 2008-04-14: | SPOC |
| 2008-04-10: | Three Studies (Maybe Four) |
| 2008-04-02: | Summer Plans for Software Carpentry |
| 2008-04-02: | The Retractions Just Keep Coming In |
| 2008-03-31: | Meet the New Flaw |
| 2008-03-26: | Nice Quote |
| 2008-03-07: | Survey: Silent Errors in Scientific Code |
| 2008-03-06: | LearnHub Launches with Software Carpentry Front and Center |
| 2008-02-26: | Scientific Groupware Revisited |
| 2008-02-20: | O'Reilly Creating a Web Version of Mathematica |
| 2008-02-14: | Grumpy Minds Think Alike |
| 2008-02-02: | SciBarCamp in Toronto March 15-16 |
| 2007-12-09: | Python Supercomputing Statistics |
| 2007-10-26: | The Burning Man of HPC |
| 2007-10-02: | Doomed to Repeat It |
| 2007-09-25: | Another Sighting of Software Carpentry |
| 2007-09-05: | Openness and (the promise of) XML |
| 2007-08-31: | Random Survey about HPC |
| 2007-08-07: | How I'm Doing |
| 2007-07-31: | How Not to Collaborate |
| 2007-07-18: | Computational Education for Scientists |
| 2007-07-05: | Win a Trip to Reno! |
| 2007-07-04: | Another Sighting of Software Carpentry |
| 2007-06-27: | Two Studies of ASCI (and no, that's not a typo) |
| 2007-06-26: | Software Carpentry at LLNL |
| 2007-06-20: | Software Carpentry Screencasts by Chris Lasher |
| 2007-06-20: | Inspirational Videos |
| 2007-06-18: | Nature Precedings |
| 2007-06-11: | Praising the Good |
| 2007-05-05: | Computational Scientists Still Don't Get It |
| 2007-04-02: | Titus Brown Teaching Software Carpentry |
| 2007-03-19: | Sign Error: Five Papers Retracted |
| 2007-03-11: | SciPy'07 Dates Announced |
| 2007-03-10: | Reproducibility of Computational Results |
| 2007-02-07: | Software Carpentry Screencasts |
| 2007-01-18: | Software Carpentry Usage in December |
| 2006-12-05: | YouTube for Data |
| 2006-11-28: | Software Carpentry article in CiSE |
| 2006-11-02: | Software Carpentry continues to grow |
| 2006-10-31: | Computational Result Retracted |
| 2006-10-26: | German Version of 'Bottleneck' |
| 2006-08-17: | Oh My God It's Django! |
| 2006-08-17: | SciPy'06: First Morning |
| 2006-08-16: | SciPy and Software Carpentry |
| 2006-08-04: | HPCWire Interview on Software Carpentry |
| 2006-07-30: | Design Patterns in Scientific Software |
| 2006-07-20: | The Parallel Tools Platform |
| 2006-07-14: | Software Carpentry 3.0 |
| 2006-06-25: | Software Carpentry's new home |
| 2006-05-05: | Revised Lecture on Teamware |
| 2006-05-03: | Software Carpentry 1111 |
| 2006-04-28: | Corrections Done |
| 2006-04-17: | Zipf's Law of Feedback |
| 2006-04-09: | 341 Words |
| 2006-04-05: | New Security Lecture Up |
| 2006-04-04: | Integration and XML Lectures |
| 2006-03-26: | 2020 Hype |
| 2006-03-06: | Web Server Programming Lecture Is Up |
| 2006-03-03: | Client-Side Web Programming Lecture |
| 2006-03-02: | Last Two Lectures Are Up |
| 2006-02-23: | Database Lecture is Up |
| 2006-02-22: | Second Lecture on Testing Now Online |
| 2006-02-21: | What Else for Software Carpentry? |
| 2006-02-21: | Second Lecture on Object-Oriented Programming |
| 2006-02-20: | AAAS Annual Meeting 2006 |
| 2006-02-14: | Data Lineage |
| 2006-02-14: | Lecture on Binary Data |
| 2006-02-12: | Regular Expressions Lecture is Up |
| 2006-02-10: | Software Carpentry Design Lecture |
| 2006-02-06: | First Lecture on Object-Oriented Programming Is Up |
| 2006-02-02: | Debugging Lecture |
| 2006-01-29: | Fourth Python Lecture for Software Carpentry |
| 2006-01-24: | Quality Assurance Lecture Now Available |
| 2006-01-23: | Programming Style Lecture Has Been Revised |
| 2006-01-23: | Third Software Carpentry Python Lecture on the Web |
| 2006-01-18: | Second Python Lecture Now on the Web |
| 2006-01-15: | Intro Python Lecture Available |
| 2006-01-11: | Build Lecture Is Up |
| 2006-01-09: | Two More Revised Software Carpentry Lectures |
| 2006-01-04: | First Shell Lecture for Software Carpentry is Up |
| 2006-01-02: | Software Carpentry Introduction revised and on the web |
| 2005-12-28: | $67 million a year |
| 2005-12-27: | New Year's Schedule for Software Carpentry |
| 2005-12-23: | Procrastination: One of the Few Things in Life Nicer Than Toast |
| 2005-12-11: | Maintaining Correctness |
| 2005-12-09: | American Scientist article on Software Carpentry |
| 2005-12-08: | Executive Version of Software Carpentry Course |
| 2005-11-04: | Workshop at AAAS '06 |
| 2005-09-21: | Software Carpentry at the AAAS |
| 2005-09-20: | Day 9 |
| 2005-09-14: | Software Carpentry: First Meeting |
| 2005-08-22: | Software Carpentry at Indiana University |
| 2005-07-29: | Software Carpentry course in Nature |
| 2005-07-08: | Software Carpentry notes are up |
| 2004-12-30: | Python Software Foundation Grant |