Archive

Archive for the ‘Software Carpentry’ Category

A Software Carpentry Boot Camp for Women in Science and Engineering

February 28th, 2013
Comments Off

Software Carpentry is pleased to announced a two-day software skills boot camp for women in science and engineering, to be held in Boston this June. We’re currently trying to raise the $6000 needed to give 120 grad students (and others) a chance to improve their research computing skills while networking with peers; donations would be very welcome.

Why a boot camp specifically aimed at women? Because a large body of research has shown that without initiatives like this, the cycle of low participation today leading to low participation tomorrow will continue unchecked. For example, WiT reports:

In the Bayer Facts of Science Education XIV survey, women and minorities raised a number of barriers in their path to STEM careers, including:

  1. Lack of mentors (50%)
  2. Lack of role models (49%)
  3. Stereotypes adversely affecting women and minorities (39%)
  4. Lack of communication from STEM industry (39%)
  5. Self doubt (35%)
  6. Cost of education (31%)
  7. “Sense of isolation” (29%)
  8. A lack of solid math and science education in poorer schools (24%)

Issues like the lack of role models, lack of mentors, stereotypes, and a sense of isolation are effectively addressed by getting a bunch of women together in one room. We’re not just presenting the Software Carpentry material, we are also creating a community of women who will support each other in tangible and intangible ways. If you would like to learn more, one of the most thorough and most readable pieces of research in this area remains Margolis and Fisher’s Unlocking the Clubhouse, which reports their work in the late 1990s and early 2000s at Carnegie-Mellon.

Equity, Software Carpentry

Converting PowerPoint to SVG: Help Needed

February 22nd, 2012

Software Carpentry has 110 PowerPoint files, each containing between 20 and 120 slides—call it 5000 slides in total. I’d like to convert them to HTML5 for use with Slide Drive, the deck.js+audio slideshow tool that David Seifried is building. Here’s the breakdown:

  • A few bugs in the slide decks need to be fixed—it’s a fairly small job.
  • I already have audio recordings narrating the slides. A few will need to be redone to sync with bug fixes in the slides, but that’s a fairly small job.
  • I also have transcripts of those recordings. They’ll need corresponding edits, and reformatting, but again, that’s fairly small.
  • I don’t have time-marks synchronizing the audio with the slides. I’m sure that information is embedded in the Camtasia project files I created when making the current videos, but I don’t know how to get it out (yet).
  • Exporting the main text in the slides (the bullet points) is straightforward, though a fair bit of manual touch-up will be needed to reformat it.
  • Ditto for the code samples (which don’t show up with the main text, since they’re in separate text objects).

And then there are the diagrams… Roughly a third of the slides have diagrams of some kind, which makes about 1500 in all. That’s too many to redraw, and anyway, I shouldn’t have to: they’re stored in PowerPoint in some kind of vector format, so I should be able to “export as SVG” or the moral equivalent thereof.

But “should” and “can” aren’t the same thing. I can save my PowerPoint in a lot of different raster image formats, but not in a vector format like SVG. However, I can select elements of a diagram, copy them, and then paste them into a vector drawing tool like Inkscape, which indicates that something in Windows understands how to do the required format conversion.

Doing that 1500 times would be very tedious, though. What I really want is a way to automate that process, i.e., save each slide in a deck as a separate SVG that I can later open and edit. Googling turns up a couple of possibilities, but:

  • The VeryDOC Powerpoint-to-SVG convert completely drops the embedded text (i.e., the captions).
  • Ditto OpenOffice.org Impress—slides must be saved one at a time, and only the graphical elements come out (not the captions).
  • Davisor Publishor doesn’t even export all the graphics.
  • docx4j‘s pptx4j sounds like it ought to do the job, but (a) it’s a library, not a tool, so some Java would have to be written to create an actual converter, and (b) it’s not clear that it does actually do the job.

Please tell me I missed something…

Later: in response to a suggestion, I downloaded a Windows clipboard viewer and copied a diagram out of PowerPoint. The display looked like this (click the image for full-sized):

It appears to be a reference into the source file, rather than an actual representation of my boxes, arrows, and text.

Learning, Software Carpentry

Watch Me: Help Wanted

February 16th, 2012

[reposted from the Software Carpentry blog]

Back in 2007, Jon Udell observed that screencasts facilitate accidental knowledge transfer in a way that more traditional media don’t. As I said yesterday, we’d therefore like to start recording short screencasts of programmers thinking aloud as they solve small problems using their preferred tools. The aim is to show learners how to program—what order to write things in, how to debug, when and how much to test, and so on. Everything will be covered by the same Creative Commons license as our other material, and made freely available for remixing and other use.

If you’d like to help, please:

  1. Volunteer to be recorded by mailing us. We’ll help you install a screen recorder (if you don’t have one already—you might be surprised to find that you do), give you a small problem, and edit the video you produce so that you don’t have to.
  2. Volunteer to edit video for us, so that we can put our energy into organizing people :-) .
  3. Volunteer to work the floor at PyCon in March. We can’t attend (workshops to run, etc.), but it would be great if we could get a dozen or more “here’s how I do it” recordings done during the conference.

Remember, as an open source project, Software Carpentry depends on your help to survive and thrive. If you have wanted to help, but have worried that creating and recording lectures would be too much work, this is a way for you to help that will take half an hour or less. We look forward to hearing from you.

Learning, Software Carpentry

Slide Drive

February 15th, 2012
Comments Off

I just posted a note on the Software Carpentry site about Slide Drive, a new HTML5+audio slideshow tool from David Seifreid. Please check it out and let us know what you think.

Learning, Software Carpentry

Software Carpentry in Ninety-Five Seconds

February 3rd, 2012

I posted a ninety-five second explanation of Software Carpentry on YouTube today. Feedback would be very welcome.

Software Carpentry

I Hope Someone Has Already Built This

January 31st, 2012

Over the next few months, I want to experiment with at least four new learning formats for Software Carpentry. The baseline is what we have now: each topic is covered in 6-10 lessons, each of which has its own page. Most of those pages have a voice-over-slideshow video lasting 5 to 10 minutes and the slides themselves as PNG images in parallel with a transcript of the voiceover; the exceptions are the lessons on spreadsheets, databases, and debugging, which are actual screencasts of the appropriate tools in action. Only a handful of topics have exercises, and the only way to give feedback is to comment on the page.

Here’s what I want instead:

Superficially, it isn’t much different from what we have The “Slideshow” area shows the current diagram, code snippet, or whatever. The “Continuous Controls” (the usual forward, pause, and rewind) control the synchronized slideshow and audio track, while the “Stepping Controls” allow users to move forward and back a slide at a time, and the “Pointmarks” show where slide transitions take place. Finally, the “Transcript” is, as its name suggests, a transcript of the audio that accompanies the current slide.

The big difference doesn’t show up in this diagram. In this version, the slides are not PNG images, an MP4 video, or any other paint-by-pixel format. Instead, they are SVGs stored right in the body of the web page, so that their content is visible to search engines, and can be copied and pasted in sensible ways. This means that if the current “slide” is showing some code, the user can pause the show, select that text, and paste it into her own editor. She can do similar things with the diagrams, i.e., select a cloud, shift-select the caption, and paste them both into her favorite image tool, rather than having to select a rectangular block of anti-aliased pixels that happen to look like lines and letters to a human eye.

I haven’t built this yet, but I think it should be fairly straightforward: each “slide” is a div with a unique ID containing an image and a block of text. The audio is linked from the page; a data-* attribute in each slide div has its start time, and a bit of Javascript shows the right slide at the right time. Marking start times will be a bit tedious—I think it’ll have to be done by hand, at least for now—but it should be easy to allow people to add and view comments and questions in place, instead of tacking them all onto the bottom of the page. And displaying an all-in-one view of the slides with appropriate bits of transcript for printing (or for people who just want to browse) will be easy.

This is just a start, of course. I haven’t said anything about (self-)assessment, which is crucial to real learning, or about accessibility (although I think that having all the code and captions in the page as first-class text will help a lot). I also haven’t thought yet about whether I can build this in just one week, which is about as much time as I have, because there’s one question I should ask first:

Has someone built this already?

If so, I’d be very grateful for a pointer.

Learning, Software Carpentry

Sloan Foundation Grant for Software Carpentry

January 12th, 2012

I’m very pleased to announce that the Sloan Foundation has generously agreed to fund six months of work by Software Carpentry and the Mozilla Foundation. You can read more on the Software Carpentry blog; it’s going to be a lot of work, but I’m looking forward to it.

Announcements, Software Carpentry

Rethinking Software Carpentry

December 30th, 2011
Comments Off

I’ve spent some time in the last two weeks thinking about what I’ve learned from Software Carpentry, and how to move it forward. I think a lot of the ideas apply to online learning in general; I hope you find them useful.

  1. What I’ve Learned So Far
  2. Organizing Instruction and Study to Improve Student Learning
  3. What Success Looks Like Five Years Out
  4. Fork, Merge, and Share
  5. Some Responses to Some Comments
  6. The Fire Last Time
  7. Settings Our Sights a Little Bit Lower

Learning, Software Carpentry

We Are the Frogs

January 5th, 2011

We all know it’s not true, but it’s still a useful story: if you put a frog in hot water, it will jump out, but if you put it in cool water and slowly boil it, it’ll just sit there, because there’s never a moment when it says, “Wow, this is hot!”

As with frogs, so with computing education. This post on “The Collapse of Computing Education in English Schools” could just as well have been written about Canada, the US, or almost anywhere else. It’s been a crisis now for so long that many of us have stopped really noticing how much trouble we’re in—certainly, I see no sign that the people with the power to change things have this on their “must fix” list.

Which makes this post by Mark Guzdial all the more poignant. iPads in the classroom? It’s the kind of thing that gets someone headlines, but if teaching methods don’t change—radically—it will have just as much (i.e., just as little) impact as all the other tech-in-the-classroom wizardry that has failed us over the past century.

We’re about to start another online run of the Software Carpentry course with almost 100 participants from half a dozen countries. A lot of things didn’t work in last fall’s run; we’re hoping to fix some of those this time around, or at least make different mistakes, so that we can learn a little more about how teaching and the web can be adapted to one another. It may not give school trustees a pile of boxes to stand beside at a photo op, but changing practices is a lot more important than any number of shiny new toys—and a lot harder.

Learning, Software Carpentry

I Could Use Your Help With Javascript

July 30th, 2010
Comments Off

Details on the Software Carpentry blog, but basically I need a simple folding display for code to do faded examples.

Software Carpentry