My OLPC interactions were interesting:
On Sunday, I gave a talk on automated testing and the OLPC GUI, Sugar.I'll post slides and a screencast later, but a brief summary goes like this: Sugar development is a bit of a disaster, with very little in the way of any software engineering principles being applied. In particular, there's my particular bugaboo: they have no automated tests, at all. My talk discussed the situation and talked a bit about using technology to remedy the situation; ultimately, though, the choice the OLPC people have to make is whether or not their software is going to suck. (This version of my argument is intentionally provocative, but I strongly believe that this is indeed the choice they face. See "jwz CADT" and also my future posts on this topic.) In particular, their testing plans consist of this: "really hope that other people step up and test our shit." In stark contrast to some of their other detractors, I'm trying to become one of those people that does test their shit, but it also seems to me that without a sea change in the focus of the software management layer at OLPC, I will be wasting my time.
Anyway, so that's a mildly obnoxious talk to give and I did my best to leaven it with humor and some rilly rilly cool testing tech. What was interesting to me, though, was the private advice from a number of people -- there appears to be a large undercurrent of dissatisfaction with the OLPC project in the Python community. In particular, one group of people basically said "burn the f$$!ckers to the ground". (I largely ignored this advice and tried to focus on the positive.) These are not normally mean-spirited people, so from this, if nothing else, I conclude that the OLPC has mismanaged its interactions with the Python community. I'm not sure exactly where things have gone awry, but I hope it's not too late to get back some community luuuuuurve: for all their software failings, the OLPC is an awesome awesome project that has changed, and hopefully will continue to change, this world we live in. Advice and thoughts on this issue welcome; I will post (or re-post) those that I think are especially worthy of attention.
One interesting idea: one person suggested that after having done so many impossible things already, the OLPC folk think that software is going to be one more example where they have to break the mold. Well, guys, if you think you can break out of the Software Death Spiral without building in any automated testing, I think you're batshit crazy...