This past year, I’ve been serving on a task force at my institution. Our charge is to investigate the intersection of technology and learning on campus, make recommendations regarding where we might focus our energy in the next five years, and (perhaps most importantly) recommend political structures that might then provide guidance and insight on an ongoing basis.

This post at CunchGear struck a chord. The author’s recommendations for new college students are (simplifying):

  1. Don’t buy a new laptop. Buy a used one.
  2. Install free software on it.
  3. If you want to play fancy games, use someone else’s fancy game machine.

Scott Merrill, the author, even addresses two major constituencies: engineering/computing-type students and liberal arts (literature, history, etc.) students:

  • [ COMPUTING ]
    No matter what you buy, you’ll probably have better facilities on campus. And networks are everywhere: remote into powerful machines.
  • [ LIBERAL ARTS ]
    You’re just typing papers and checking Facebook. You don’t need an expensive computer.

And do you know what? I think he’s right.

Sadly, institutions are slow to change. I would love to push for the following:

  • Install a free operating system on all public machines.
  • Offer a netbook/laptop programme that provides low-cost, robust laptops running open software. System76, for example, provides netbooks and laptops ready-to-go with Ubuntu. I’d love to have an EduBook to trial – my suspicion is that this little laptop would cut it for many students.
  • Establish a grassroots initiative to provide training and support for students. On my campus, we’re starting a learning/living community initiative, and I could see that new community structure playing a role in this way.

I might be able to go further in my recommendations, but that’s what comes to mind at the moment.

This re-statement/reflection on Scott’s piece was inspired by a post over at TeleRead. Chris at TeleRead closes with the following statement:

Perhaps the emphasis on college students having the latest and greatest technology should be reconsidered, at least from the perspective of giving them them the best ability to focus on the important thing—their education.

Now, making a bit of a 180º turn from what I was just saying, I’ll claim that this is a naive, sweeping statement that fails to take into account any of the realities or pressures I think many faculty feel in higher ed: students expect new media. Their world is made up of interaction and video, and we’re still giving them chalkboards. So when the sweeping claim is made that they should focus “on their education” (at the same time as you’re calling for new modes of interaction, collaboration, and problem solving), please consider what tools we’re currently working with, where the technology is headed, and how we might be leveraging that technology to improve our students’ learning experience. No one I know is considering technology for technology’s sake… but we’re pretty sure that there’s some really amazing learning we could be supporting… if we could just get the tools in the students’ hands.

The fact is, some of these devices do enable real-time, community-driven collaboration (many-to-many interactions) that simply were not possible a few years ago. Yes, I could photocopy a student’s paper and hand it out to everyone… but doing that with 20, 3-page papers means 60 x 60 pages (roughly 3600 pages). Using tools like iAnnotate allow students to comment on and mark up each-other’s papers instantly and digitally. And, perhaps more importantly, tools like that allow me to handle my digital workflow more easily. (I do not, at this time, own an iPad, but I’m reasonably confident that a lightweight tool designed for media creation, annotation, and consumption would be a boon on a day-to-day basis. Netbooks simply don’t cut it (for many reasons), and my 13″ MacBook is too big and has too short a battery to be practical.)

In my mind, we’re in a Catch-22 situation in higher ed: we can require our students buy tools that let them engage in distributed, real-time media creation and collaboration surrounding digital artifacts… but that implies that our pedagogic approach is going to change to support their purchase of those tools. Down that road lies a commitment to change when many think that we’re doing fine as it is. Or, we could adapt our pedagogy (which is fine as it is), but our students won’t have the tools to engage the way we want them to. How do you drive change in a system that is (at best) mildly elastic, but ultimately static and resistant to change?

I’m teaching a first-year seminar this year titled Creativity and Leadership. I’ll put the question to them. Perhaps they’ll come up with something.

I’ll have to write a longer post later, but I thought I’d just mention that OSCON is a great conference. Our presentation went well, and we’ve had a lot of great conversations with people about all kinds of things in the open source world.

More later… for now, it’s time to head out the door.

(Related, our parallel programming environment for the Arduino is now available on Ubuntu, Windows, and Mac. Hooray for packaging! And, I need someone to help me work through how to do proper source packages for some of the complexities I’m facing on the Fedora/Ubuntu side. Packaging compilers is not a lot of fun…)

This past week, Radu and Drew worked through the details of setting up PWM-based servo control on the Arduino. This gives us robust control over servos from our occam-pi based programming environment without having to interrupt our execution every 20ms to update a servo.

Here, the Science Dinosaur demonstrates how things work.


Radu and Drew’s work is “foundational,” in that it lays foundations for other projects. (We’re excited about moving on to some more interesting explorations shortly.) The servo control is absolutely necessary for another summer project we have going: the <a href=”http://rockalypse.org/blogs/flyinggator/”>Flying Gator UAV</a>. This flying robot (an “unmanned aerial vehicle”) is being custom built by Ian, and Ian and Anthony are developing the control system in occam-pi on the ArduPilot Mega. This combination gives us a lot of real-time safety, which we hope translates to “no surprises” when we are actually executing our code on a functioning UAV.

The nice thing about the ArduPilot is that is has a built-in hardware override, so that even if your code goes wrong, you can take control over your aircraft with a radio.

Here, you can see Ian taking the fuselage (that means “body” in airplane-speak) out for a test spin. Our aircraft is incredibly overpowered, it turns out.


You can follow an aggregation of all the students’ work at planet.rockalypse.org.

Last night we had an episode of “Boardbook Hospital.” Honestly, I couldn’t come up with anything funny to say while working on a number of Matthew’s books. (I came up with a number of things that bombed, but really, book-repair is pretty spineless!)

Photo 56.jpg

We did have fun remembering the Muppet Show, though.


I’m eager to see anyone release a full-sized (US Letter / A4) ebook reader. The Sprint Skiff is promising, and may appear shortly. It looks like an 11.5″ diagonal with roughly 3GB of internal storage available, and expansion through SD cards.

201001041531.jpg

Along with the large screen, it looks far lighter and portable than any laptop I could purchase today. No doubt, it will either cost too much, or be tethered to a cellular service that I don’t want.

201001041537.jpg

I’m not sure where my upper bound is in terms of cost, but I desperately want to be able to carry around all of my documents, email, and calendars using a device with this form factor. If one comes out at CES, and I can afford it, then this will likely become my summer project:

201001041533.jpg

A DIY book scanner. Once I have a full-size ebook reader, I’m then going to be interested in having my entire library (not just every research article related to my ongoing research) available to me at all times.

The MDI AirCar prototype is a toy I want. (Full article at Edmunds.com.)

2010-aircar-f34-mdi-fd-500-7.jpg

It runs on compressed air. If you have a renewable source for compressing the air (eg. hydro or wind turbines), it is a truly zero-emission vehicle.

It has a 180cc, two-cylinder engine that runs on compressed air.

2010-aircar-eng-mdi-fd-500-3.jpg

You can see the air cylinders underneath the seat.

2010-aircar-eng-mdi-fd-500-1.jpg

How awesome would that be for in-town driving? All we have to do is get all the bullshit Hum-Vees off the road so I don’t get killed the first time someone talking on a cell phone while yelling at their kids in the backseat loses track of the red light they’re approaching…

Twenty years ago, CNC machining was a black art. CAD-driven solutions were expensive, and program-at-the-machine was just becoming available. My first experiences with this technology were with my father’s 1986 Hitachi Seiki CNC lathe with Fanuc 5T control. It had a punched tape reader, and editing (once a program was loaded into memory) was on a per-line basis using a 9-key numeric keypad.


What looks like a Hitachi Seiki 3NE CNC lathe

Today is a different world. It is possible to draw, using free/open-source software, a 2D part and have it sent out to be laser cut by companies like Ponoko. You can take 3D designs and have them printed, or you can have them produced (on-demand, one-off) by CNC. You can even have them turned into molds through the same process for short-run (10-1000) injection-molding. For that matter, you can build your own 3D printer from open-source designs, or buy a kit that gets you moving in the world of personal fabrication.

I am fascinated by this space, in part, because of my experiences in my father’s shop. It is also as a computer scientist, and in particular someone who is fascinated with languages and robotics, that I see a great deal of potential. As these tools become more affordable (for play and exploration), they become not just tools of manufacture, but of art and creativity. Likewise, I can begin to think about how I would create a mid-sized, affordable robotics platform for use in and out of the classroom—without being entirely constrained by what I can purchase off-the-shelf. That is, I can actually design, and have produced, low-cost bracketing specific to my needs, if necessary.

So many toys, so little time…

I really believe that we should be putting programmable devices in the hands of students studying computing. Or, if you prefer “Why we’re still teaching programming for desktop-class devices?!?” The desktop is complex, uninteresting, and lacks relevance in a highly mobile and connected world.

I look at magazines like MAKE, or the Arduino project, or (especially) Bug Labs, and think that every undergraduate CS student should be doing projects on this kind of hardware. Ten years ago, there were no affordable and open options for doing cool stuff in computing. The Mindstorms RCX was the closest thing, and it certainly wasn’t “open”.

Today, $20 gets you a programmable, open-source embedded controller, a complete programming environment (and documentation), and an entire community of people to go with it. It is called the Arduino. The hardware is cheaper than a text book, and our students could be doing incredible things with it. Fortunately, to transform our students’ classroom experiences, all we have to do is overcome institutionalized resistance to change…

If you’re willing to spend a bit more money, the Bug Labs platform provides you with a $250, ARM-based, open-hardware Linux machine with a host of discrete, pluggable modules. This is really, really slick shiznit. This (CC licensed) video does a good job of explaining the base:


Modules that can be snapped into the base now include an LCD screen, a GPS unit, a 3G GSM module (yes, cellular connectivity!), WiFi/Bluetooth, and the von Hippel module, which provides connectivity and breakout over a wide variety of GPIO and serial protocols. While this is a more expensive way to get hardware into the classroom than an Arduino, it is open, looks robust, and is built on and using tools students will see for many years to come: Linux, Java, and Eclipse. (I wonder how hard it would be to integrate into BlueJ…)

It isn’t so much that I think students of computing should become “makers.” I do think that students of computing need to be engaging in authentic activities. I will claim that our students are most likely to encounter “interesting” problems in the realm of mobile embedded systems. Given the rapid proliferation of wireless devices (mobile phones, the iPod Touch, Android-powered devices, etc.), students of computing are almost certain to find themselves programming in these environments in the coming decade. (To this end, web services and distributed computing are also places where our students need exposure, given that the edge device is almost certainly going to interact with some kind of service.)

Perhaps I can get a BugBase and a student for a summer, and see what can be done with these toys. Finding a student who wanted to go exploring might be the harder part.

200901071727.jpg
The von Hippel module. I love the braille…

Last year, I worked on a project with some Olin students to explore building a “dummy GPS.” The idea was to have the simplest possible GPS unit—one where you simply said “I am here,” and then it points back to that location until a new waypoint is set.

Someone went and built one. And manufactured it. As a keyfob.

200812171435.jpg

Hammacher website

I think that’s funny.

UPDATE (20081229): This device is actually the Bushnell Backtrack. Above is just a link to a rebranded version that costs $30 more. If one were so inclined, Amazon has them for around $50. There were some comprehensive (fairly negative) reviews at Amazon that seemed to indicate that this is useless for mall parking lot navigation. However, I can still see this device as being useful to campers/hikers and the like. That, and there is more info at the Bushnell site.

I have no idea what I’m doing with my camera.

Robin points out that I should put the thing on P, ISO 100, and go outside and learn how to compose photos. I’ll get around to this. For the moment, I’ve had the camera for about two days, and I’ve had limited opportunity to use it. I did take it to dinner last night; a bunch (like, twenty) of Olin students gathered for dinner at Vinnie T’s, and I joined. It was tasty, and it was fun to see so many people I knew.

What amazed me about shooting at 8MP RAW was what could be done after the picture was taken. Vinnie T’s was very orange. Everything had a yellow/orange/red cast to it.

200807041747.jpg

Last night, I downloaded a beta of Adobe’s Lightroom 2.0. This is kinda like iPhoto on steroids. The above picture was taken by Nik while he was poking around with the camera; nothing he did on the shot could have compensated for the lighting in the restaurant. (At least, I don’t think you can easily compensate for that kind of lighting at the moment that you want to take the picture.)

After playing with the hue, saturation, and luminosity across the entire color space, I came up with something vaguely human looking:

200807041750.jpg

To me, this kind of technology is freaking magic. Of course, I have no idea what I’m actually doing. I mean, I have a rough understanding of color theory, and can make some sense of what the color curves in Lightroom mean, but mostly, I’m just looking at the photo, looking at the sliders, and moving them to reflect where I think I want that particular color to “go.” I assume someone who really knows what they’re doing could look at the “before” picture and see a path through the color space to a more natural coloration—but I don’t have that ability at this point.

Back to packing.