Archive for May, 2008

Apply for the OLPC grassroots bootcamp!


As those of you on the OLPC grassroots mailing list may have heard, we’re having several grassroots events in the New England area during the month of June. Check out the announcement here.

The events in question:

  • Grassroots Unconference (Cambridge, MA, USA – Saturday to Sunday, June 7-8 2008) – In the tradition of Barcamp, we will be holding a grassroots unconference the weekend of June 7, dedicated towards community-organization, and initiatives, events, structures, and best practices. This is not just an OLPC event — anyone with interest in grassroots organizing is invited to attend – so forward this out to your friends in LUGs, meetups, co-ops, clubs, and the like.
  • Grassroots Bootcamp (Cambridge, MA, USA – Monday to Thursday, June 9-12 2008) – The objective of the bootcamp is to help community members become grassroots advisors, who can serve as resources to others who want to start local initiatives. There will be sessions for hacking (and learning how to hack) on different areas of the XO’s software and hardware, organizing local materials and creators, connecting with satellite communities around volunteering, mentoring, learning, and sugar; and more. Several slots are still open, and we invite all community members to apply.
  • Grassroots Jam (New York, NY, USA – Saturday to Sunday, June 14-15 2008 – prep on Friday June 13)

Now. I know the bootcamp prerequisites may look daunting to some people, but I would personally love to have enthusiastic newcomers attend. Oftentimes the people who don’t think they can do something end up being the best teachers of that something once they *do* learn how to do it and realize it’s not as hard as they though it was.

If you’re willing to put in the time and energy to learn some new and difficult things rapidly, I and others would love to work with you to get your application prerequisites ready so you can fully participate. Heck, I’ll be learning some of these things myself (I haven’t really used pootle before, for example). Even if you can’t physically attend the bootcamp but still want to learn these things, THAT’S GREAT! Join us in the learning!

The point of the bootcamp is to get people to be comfortable teaching themselves more and to be comfortable teaching other people more – including teaching them how to teach themselves more. (How’s that for many layers of meta?) Wiki usage isn’t that hard to learn. Neither is programming. I used to think so on both counts – it isn’t, though – really!

So if you’re willing to dive into the deep end, we’d love to have you apply. Let me know and we can get you started – post your name in the study groups section on the wiki. If you don’t know how to use a wiki but still want to play, leave a comment here and I’ll get back to you via email (the email you leave only gets seen by me, once).


Bugmastering – a first pass


Yes, this is a poorly written post. I am on the verge of unconsciousness.

Right before going to bed (now), I tried my hand at going through the Sugar bugs tonight as a “bugmastering trial.” Here are my notes, noting that the location is unstable and this link probably won’t lead you to those notes after a few days.

I didn’t actually touch things in Trac because many scattered changes may be hard to undo, and I want to run this by people for a sanity check first. There are plenty of questions on that page, and what I’ve done is almost certainly suboptimal bugmastering-fu; I am throwing this out there for feedback on how I can improve the usefulness of what I just did (it took about an hour to read all the existing bug reports and write those notes).

In general, I was trying to piece together a rough idea of the problems the Sugar team is trying to solve. Some have been neglected (standing untouched for months). Some are confusingly written or overly terse such that only a handful of very-involved developers would be able to understand what it meant. Most were unverified. Some were probably duplicates (though I didn’t look too hard for those). Much cleanup is almost certainly needed; I need to talk with the Sugar folks about what they’re trying to do first.

I am not sure if this is helpful or if I’m the best person to do it even if it is helpful, but I told Bernie I’d try it out for two weeks and see if I could figure out how to be useful.


My first shell script: bundlemaker


Technical Thing For The Day: Achieved!

Today I learned how to write shell scripts – or that is, I wrote my first shell script that didn’t involve a straight cut-and-paste from my .history file. (for my parents: a “.history file” is something that contains the last bunch of commands you’ve typed into your computer, and is useful for going back and figuring out what you’ve just done… sort of like an instant replay.)

I spent way too long tracking down Boston-area housing for the ILXO
people who will be in the Chicago office with me this summer (they’re
going to be at 1cc for a while for training), so going to count this script because it’s the only tech thing I’ve got to show for today. (So far.) The script itself was written in little bits and pieces during a meeting when I couldn’t hear the people who were talking; it’s a quick hack.

It’s a content bundle making script that I whipped up for Chris, who was working on creating health content bundles from MedLinePlus. Basically, if you point the script at an “index.html-like” page on the web that has links to articles and files that you’d like to include in a bundle, the script will download that page and all the files it points to, generate library metadata for the XO to interpret, then pack it all up in an .xol library bundle file.

Writing shell scripts is surprisingly easy. I was psyching myself up for it to be hard and all sorts of elaborate arcana. I should not do that. It is not hard. Really, you just type in the commands you’d type into the shell, use $variables in appropriate places, and look up the proper syntax for simple logic loops (one nitpick: I wish they’d use mathematical notation for boolean logic instead of making me remember that “-ne” means “not equals” instead of the “!=” I’m used to. This is entirely my fault, as I am a creature of habit).

The script could use improvement – more to the point, my script-writing-fu could use improvement as there are kludges in there I’m not satisfied with (for instance, the section that creates a library.info is incredibly brittle; it just concatenates the appropriate lines into a text file), so comments and changes and pointers to cool examples of good script-writing practice are super-welcome.

Perhaps I should go back to visit NYC and get my copy of Beautiful Code back from Ethan someday. That has some gorgeous code to read.


Can it be studied? If you chase it, it slips away.


I found this randomly through a book on the Unix philosophy (of all things). It struck me as – well… it struck me. Particularly the last bit of the comment by Mumon.

Joshu asked Nansen, “What is the Way?”
Nansen answered, “The everyday mind.”
Joshu asked, “Can it be studied?”
Nansen answered, “If you chase it, it slips away.”
Joshu asked, “How can I find the Way unless I know what to look for?”
Nansen answered, “The Way is not knowledge nor
non-knowledge. Knowledge is delusion. Non-knowledge has no
discrimination. When you are the Way you will have no doubt as you are
free in the vast space of void. How can it be “right” and “wrong”?
At these words, Joshu was awakened.

Mumon’s comment: Joshu’s question dissolved Nansen’s answer. Even though Joshu had a realization, it must have taken thirty years to congeal.


Whoa. Pika has a fire alarm!


And a big metal door that goes whoosh! to block off the kitchen when the fire alarm goes off! And rapid fire-department response time. And blinking lights to stun even hyperfocused Mels into realizing that hey, there’s a fire alarm.

Yes, I have just discovered this the interesting way. Yes, it was a false alarm.


It will get worse and it will get better. Keep working.


This is – with very minor edits in the first paragraph to remove names – the email I sent to the ILXO summer group in response (finally) to all the “what’s going on? what’s going on?” questions we (and I) have been getting regarding OLPC lately. It’s a pure braindump. I did not go back and edit before I sent the email. (As mentioned above, I did go back and take out names before I posted here.) What you’re seeing isn’t the most elegantly written thing ever, but it’s what’s on my mind.

Okay.

This is excellent practice, because there will be swarms of FUD swirling around us all summer, and we’re going to have to learn how to deal with them well and fast, and not let them distract us from what we’re trying to do.

The question you should have in mind is this: Does this affect what we’ll be able to do this summer in Illinois for a large number of students, teachers, parents, hackers, and curious souls? We have relationships; we are independent. (This is true of people; it is also true of organizations. You are never as locked into something as you think you are.) More important than who we’re affiliated with or what our structure is or what politics are swirling around us is the fact that we are Doing Something. We must make sure we are always, always Doing Something.

It will get worse and it will get better. Keep working.

Our goal this summer – and please iterate on this, toss it around, work on this until it’s something you want to devote a summer to, this is just what gets me fired up – is to help kids learn by empowering them, their teachers, their parents, and the community around them to come together and experiment with their education. Yes, our first guess at how to do this is through computers and low-cost rugged laptops and open-source software, but these are tools, means to an end rather than the end itself. Our output is grassroots groups. Not laptops. Not software. Self-sustaining, motivated, change-agent-riffic groups of people who will take things far, far beyond anything the four of us can do during the scope of a summer. This is awesome. This is also very, very hard.

It will get worse and it will get better. Keep working.

Third, get used to failure, mockery, and other people saying that the things we do, the people we work with, etc. are idiots, bungling things, doing things wrong, doing useless things. We are doing audacious things. They will often be ridiculous. They will quite frequently fail or turn out to be useless. The people we know are doing audacious things. They are ridiculous. They frequently fail. It’s all in how you handle failure. There will be swarms of FUD; ignore them and react to and acknowledge them. There will be cheers and accolades; ignore them and react to and acknowledge them.

It will get worse and it will get better. Keep working.

Why are you here? Why are you spending a summer working unpaid on a crazy idea rife with uncertainty? Make sure you have an answer to that question, and make sure you believe in it, because you’re going to need something to hang onto in the midst of all this when the storms get tough (and occasionally, they do). We will have many days of blue skies. We will also have maelstroms.

It will get worse and it will get better. Keep working.

It will be a fascinating learning experience. I’m looking forward to it, and I’m honored to have such a fine team to work alongside. If there’s something you’re afraid of or concerned about or don’t want to do – for any reason – please let me know. Please let us all know, if you can. You’re steering this ship as much as I am (to run further with the analogy and my soapbox). I believe the five of you can make a tremendous impact, and I believe that the most important thing I can do this summer is to make sure – by whatever means possible – that the five of you can make the difference that you want to make this summer. This, more than any research project, hacking, teaching, presentations, etc. I’ll be working on – is what I consider to be “my job.” Likewise, we’ll all need to support each other because sometimes it’s going to seem like we’re the only ones doing so.

It will get worse and it will get better. Keep working.

And above all, vote with your feet. Work on what you find interesting and important – take on the most difficult problems you’d like to see solved, and ask for help solving them. (Engineering is problem solving, after all. Sometimes we use math and science. But we always solve problems.) When FUD swirls, think about whether the problem’s still there and should still be solved, and whether you can contribute something to its resolution.

Last time I checked, plenty of kids in the world (and in the state of Illinois) haven’t yet discovered – or been allowed – to teach themselves how to become the masters of their own education, and there’s still plenty I can do to solve that problem. So that’s my motivation.

What’s yours?


Mattresses!


When my aunt and I stayed over at the house of Iain’s parents (thank you!) for Linuxfest Northwest, we admired their gorgeous memory foam bed. So they sent us the link to buy the same mattress. I want to get one of these as soon as I get a stable apartment (I’m not sure when that will be, though… I have 8 more days before I’m allowed to hunt for a permanent job.) As much as I enjoy being a transient, there are advantages to being able to sleep on a really good bed consistently – something you’re not treated to often when you alternate between the couches of friends, a futon, the hammock, on the floor in a sleeping bag… wherever there’s 24 square feet of empty floorspace.

A rice cooker would also be nice, the kind that makes lugaw (congee, rice porridge, call it what you will, it’s tasty). When did I get so materialistic? Is hankering for a mattress and a rice cooker and a nice teacup materialistic?

I’ve decided that in addition to (and sometimes coinciding with) my Mentat Wiki Month adventures (tonight: learn Teeline shorthand!) I will try to learn/do (they’re the same thing, right?) one technical thing per day. No excuses. My internship is basically grassroots. Don’t get me wrong; I love grassroots. I’m getting better at doing it. I think I’m pretty decent at it now.

I also, somewhat masochistically, want to get better at engineering. I miss it, I love it, and I’m not very good at it, and I can fix that. I don’t want to become the best engineer in the world; I probably never will be. I do want to be able to speak the language fluently and be able to make things. Working output is the language of engineers – solutions to problems make up our grammar.

Engineering as a hobby, grassroots as a “career”? Works for me right now.


Money and love… and poi.


It’s probably not what we think of when we say Awesome, but developing open-source software does change the world for the better, one person at a time.

David Wiley and a very brave crew have created the (now chartered!) Open High School of Utah. Why is this wonderful? “OHSU will be a completely online school (or “virtual school” as they
are sometimes called) that will use open educational resources exclusively.” They, too, are building an airplane while flying it. I wonder what would happen if Olin decided to do the same thing. Perhaps not for the entire school… perhaps for one class to begin with, then spreading outwards. You’d miss out on some excellent classic texts (Horowitz and Hill, etc.) – what would you get in “return”?

Tonight was spent at Kdorsey’s place with the companionship of some smoky black bean soup, chocolate cookies, and sparkling wine from Italy by way of Seattle (combined-birthday drinks for the two of us – the wine is from my aunt June in Seattle after the tasting we went to down at Pike Place, but wine is always best when shared). I found a shorter route to bike to work that doesn’t make me feel like I’m going to die 5 times a second. And then and then and then I learned how to spin poi! It’s wonderful how there are different ways of thinking about physical motions and rhythms of your wrists and body as the socks go flying around. You’re (supposedly) doing the exact same physical motion, but it feels different in your brain, and that sometimes leaks out into how you’re moving in a subtle way I can’t yet articulate.

This week I am attempting the “9 to 5″ experiment, and so far it’s worked fine. To be completely accurate, today I did 8-6, and worked from home before lunch, and did a little bit of work after dinner, but considering my prior work habits, this represents a significant shift towards the attempt to try a normal schedule. Thus far I’ve learned that it… feels funny to try to tell myself to not think about work for a bit, since all the areas of my life tend to blend into each other, and I like it that way. It also tends to clarify what I want to get done and what I need to get done – today was a wonderfully efficient day – and makes me more conscious of the time I spend doing “work” during times when I’m trying to do things other than work (such as… eating, which is important too).

Delineating “work” from “nonwork” is a distinction I don’t much care for (at times). I do what I love and I love what I do, so there shouldn’t be any grumbly distinction between things I do for money and love and things I do for love – I should enjoy doing both. I do! At the same time, paycheck-stuff tends to get bumped to the top of the priority list. This isn’t a particularly useful or coherent paragraph, and only serves to demonstrate my befuddled state when trying to articulate my relationships to the notions of “work” and “income.” Perhaps the situation would be thrown into sharper relief if I had a guaranteed cushy stipend for life and could therefore choose to do anything with my time without financial consequence… I’ll run with that thought experiment for a while.

(As you might note, the busier/more-occupied I get, the lousier my writing becomes. Meditation: another thing to try.)


The Mel goes to Washington


I will be in Washington DC from approximately 5:30pm on Friday, May 23rd to 11:30am on Sunday, May 25. Mostly I’ll be at the May version of this, the OLPC meetup at Gallaudet – gotta un-rustify my ASL as much as possible. (Fact that occasionally surprises people: I had a sign-language interpreter through most of my childhood.)

If you’re in the area, I would love to meet up, hang out, and hack with people. Ping me.

[Edit: Yep, that's Sunday, May 25, not June... thanks to Sa'am for pointing out that I'm spending 3 days, not 1 month, in DC.]


How I celebrated my birthday


Short, incoherent, and badly written in order to spend as little time as possible on this keyboard.

On the night of my actual birthday, we had hot pot at 5-ee’s. I helped Mark move out of Babson’s dorms, we ate, and then we did a lot of dishes.

The next morning I took ridiculous amounts of bread from Russo’s and turned the ballroom at Maker House into a picnic area. Greg, Ellen, and Nikki came out, followed by Kristen-on-bike with additional bread. DJ (with cheese!) and Sam turned up later; Mark stopped by to say hello and buy Gui’s bike, and cheese was had by all. Some of it was from Beecher’s in Pike Place, all the way from Seattle – the cheddar went in a flash. There was also balsamic vinegar over half my age, which appeared to be appreciated mainly by Ellen and myself (although others partook and enjoyed) and various spreads, my favorite one of which was the Thai pepper (paired with aforementioned fast-vanishing cheddar). Afterwards we went to the playground.

Dwinslow came up from NYC. When we found out that he had never had clam chowder of any kind, we made him eat some New England chowdah. That’s right. Not that… red stuff they sell in Manhattan. This was today, Sunday, at the Mayfair in Harvard Yard, which I was utterly not expecting when David and I walked down there to check out the campus. Also unexpected was the arrival of A TON OF OLIN PEOPLE. The tiny groups walking about eventually glommed together into a Very Indecisive Amoeba composed mainly of myself, David, Chandra, Dean, Christie, Molly Mac, Will, Keoni, Kate M, Rob Quimby… supposedly a Debbie Chachra was in the area, but remained unspotted by the majority of the group.

Good times. Perfectly ordinary good times. No grandiose schemes, no high-powered parties, just a group of young friends hanging out in Boston and enjoying each other’s company (and food). For a few blessed days, my life seemed… almost normal. I liked it – it’s good to know that things can be that way sometimes.