This post was written while sitting in the back of Steve Jacobs's class at RIT. The class is on Sugar Activity development, and I was both amazed at the kinds of things the students were making (which we should encourage!) - and how little we've heard about them to date (which we should fix).
First the cool part: what the students are working on. Here's one example: a group of students who have developed a dungeon-style game for teaching basic math.
"MPG (Math Playing Game - working title) is a single player educational adventure that teaches fourth grade curriculum mathematics. The player controls a protagonist that must progress through maze-like dungeons, solve puzzles/ problems, and defeat enemies in a two dimensional world. The protagonist is also a treasure hunter, after various riches found within the dungeon."
They have a working version running on an XO that's getting passed around the classroom that I type.
"One of the things I remember from high school was when we were learning Spanish is that we'd go to the computer lab. The teacher would give us questions that would pop up on all our screens, and we'd answer. Immediately the teacher would know who got what right, who got what wrong... I thought it would be really useful... for people using Sugar, who might not have an internet connection or networking capabilities, that they could use this activity for that. Later on I would really like it if we could have packs of premade questions that you could download from the school server."
It's a design discussion for a Sugar-based clicker system. The idea for this is to have the students's XO-people icons laid out in the physical layout of their desks in the room so you can visually look out over the classroom and map students in seats to how well students are performing on this Activity.
And then there was a paint game for learning fractions, with colors changing as you bounced a stream of paint from bucket to bucket around a virtual room.
This is all amazingly cool stuff. And we had no idea it existed. Students were doing a great job of communicating and collaborating within their project teams, within the classroom that they met in - but they hadn't yet started to branch out into working with the global Sugar development community. Whenever this happens, it's a missed opportunity. You have the chance to swap notes and ask questions and get feedback from people at actual deployments, trade tricks with other Activity writers (even at 3am, because the community's international and it's always daylight somewhere) - you get reminded that there are kids in Peru who could use your work if only you'd make it localizable, you get spontaneous pointers to designs and free icon sets, you get a world beyond your campus to tap into - the world, by the way, that you're going to be joining once you graduate.
How do we make sure students tap this more? How do we find about efforts like this and make sure that people who start out to contribute to Sugar are welcomed into the community and encouraged to do their work with us rather than in isolation?
My answer that October afternoon was to sit in the back and whip open my laptop while Greg, Karlie, Fred, Luke and Remy were listening to student presentations, and to start transcribing what I heard and saw into the #sugar IRC channel. Within several minutes, we had feedback from at least 3 countries, offers of help, ideas for partnerships, and (I'm willing to bet) some dropped jaws on several continents when they saw the work going on in Rochester. "See," we told the students, who were standing there in awe at the rapid attention they had gathered, "this is normal in the world of open source. This is what you can tap into - please use it! And please let us tap into you!"
Now we get to build some bridges. The RIT folks have done a lot of things to make this easy for us; Math4 is well-documented on the wiki, and every team has an excellent project page that they keep up-to-date. Prof. Jacobs has published the syllabus so we can see what's happening for the rest of the semester. And students have started to hang out on IRC; I've mostly seen them in #sugar, though Karlie Robinson keeps up a vigil at #fedora-olpc during every class period as well. I hope they continue, and I hope they join the mailing lists and start conversations about their Activities, and find ways to make their work live on beyond their class, because the semester's drawing to a close soon.
If you want to get in touch with these folks and nobody from RIT is on #sugar at the moment you're interested, you can ask them questions on the TOS mailing list, which Prof. Jacobs (and I think several of his students) are watching - if there turns out to be a better way to contact the group, I'll update this post.
We're still in the place where we're going one classroom at a time, with professors and students and open source communities alike figuring out how to - I was about to say "get brilliant student work beyond the classroom walls," but it's not that, because it's not about doing some work and then figuring out what stuff is good and then taking that over into "the community." It's about getting students themselves into the community so that all their work - the good stuff, the "I failed but I learned from it" stuff, the messy stuff, the good discussions and the fierce arguments - become part of that ecosystem, so that the students become part of our world. RIT is a great example of a campus making that journey, and there are others. And we need more.
So here's what you can do.
- Meet the RIT folks.
- Help us figure out how to teach open source.
- Continue to be excellent role models of what it means to teach and learn and live as a contributor within an open source community - especially if you're new to this world yourself. Show what it looks like to be openly unafraid of trying to learn something new, even if it means falling flat on your face the first couple of times (all part of the learning experience). Show what it looks like to ask good questions, what it means to be receptive to tough feedback, what it means to design not just for real users, but with them. Do this in public channels - IRC, mailing lists, wikis. Think out loud. You never know who's listening.