SoaS deployment hardware: the ideal set

February 6th, 2010

One of my two jobs for the week for Lynne May’s SoaS deployment is getting hardware for all this to run on.

The first (and largest) purchases we’ll have to make are the netbooks. Peter Robinson, our resident Fedora netbook guru, looked earlier for something that fit our specs and price range ($1000 USD for 3 netbooks) while being sturdily-built (mechanical design is important; we’ve got first-graders here) with a good battery life. One requirement was known compatibility with recent versions of Fedora, since SoaS is Fedora-based (the next release will be a Fedora Spin) and we’re trying to stack the deck in favor of the software and hardware working together as smoothly as possible. Based on these criteria, Peter recommended the Acer Aspire One 532h, which is about $300.

(photo cc-by from ndevil)

Lynne May also wanted a little video/still camera to capture the students playing with Sugar – they’re still learning to read and write, so
having an easy way to record verbal presentations (and demos/screencasts, for that matter) in the classroom means we’ll get that much more documented output. (We will, however, need to get permission from the parents of individual kids to share the video material.) But right now we just need to get the hardware – so I pointed her towards the Kodak zi8 which can be had refurbished for about $150 USD and has gotten a big thumbs-up from Mo Duffy. Seriously, I borrowed it at the office two months after she got it and she was still raving about it, so it’s got to be good stuff. Waiting for the +1 on funding for that.

(One of the things I’ve learned while writing this post: finding CC-licensed photos of hardware is hard. I couldn’t find one for the zi8.)

And of course we need the sticks themselves. We need 14 sticks (9 students, 1 teacher, 4 testing/backup) and need them to have caps that aren’t removable, because that’s just asking for lost caps in a classroom full of 6-7 year olds. Other than that, we don’t really care what we get, so this should be easy to source once we get the (very small) amount of funding needed for them. (Yes, when you’re working with a classroom, $100 can be a blocker.)

(Original images cc-by from molotalksuperdry, red bull/honda, ship, and banana. Also, this picture should make it painfully obvious why I need friends like Nikki to fix my wince-inducing color schemes.)

I’m going to be placing orders early on Monday morning, so any last-minute feedback (including running screaming in our direction going “noooooooooo this is a bad ideaaaaaaa!” if applicable) would be muchly appreciated.

Lynne May’s SoaS deployment

February 6th, 2010

From the department of what-Mel-does-in-her-free-time: We’re doing a Sugar on a Stick (SoaS) deployment in my aunt Lynne May’s 9-student first-grade class, and just got the green light from the school to proceed – so I’m going to jump straight into documenting what we’re doing, and then (in later posts) fill in the background and continue to get us in shape for being good open source citizens with things like project wiki pages not in my userspace and better meeting notes and whatnot.

This means it might be confusing for a while (because we’ll be writing about things for which the background context may initially be missing) but if you’re curious, please ask questions – they’ll give me things to write more about in future posts, too! (And yes, the other people involved with the deployment should be hitting Planet Sugar Labs with their posts shortly as well.)

The curricular theme for the second half of first grade at this school has traditionally been “community” – so Lynne May is planning her curriculum so the kids spend the whole semester learning (in a very exploratory way) about the Sugar Labs community and coming up with ways to convey their understanding of how open source participation works. For comparison, they’ll be looking at open source communities in parallel with two other kids of communities: their school (all together) and the neighborhood they (individually) live in.

And they’ll be participating upstream – this was important to Lynne May, that we find a way for the students to become a part of an open source community. We’re watching for opportunities throughout term for them to submit bug reports, blog on Planet Sugar Labs, participate in online meetings (in IRC, with a computer hooked to a wall projector and a grown-up typing and helping them read), and generally listening for things the Sugar (and Sugar-in-Fedora) community needs that they can make, and making them.

I am excited.

The game plan for the week is something like this – note that we’re deliberately trying to keep things simple and the workload low so that we’re all only spending a few extra hours a week on this deployment (the work should be minimal, and the vast majority of that work should be stuff we would have to do anyway).

  • In user-land: Lynne May is continuing to work with school administration on getting (and keeping!) our all-clear-to-proceed status, and starting to think about how to inform parents. She’s also spending more time getting to know various Activities, as shehas played with Sugar multiple times before, but never in the “how will I use this in my classroom right now?” sense. Last night’s adventure was Etoys, which was ultimately deemed too difficult to work with first-graders on within the scope of our deployment. We would love to be proven wrong about this, by the way – the concern is mostly that we’d spend so much time getting through the basics of Etoys that this is all we’d be able to do for the last 4 months of the school year.
  • In support-and-testing land: I am purchasing hardware and putting up our remaining bit of infrastructure: a test case system. Sugar Labs Infrastructure wizard (and head honcho) Bernie Innocenti has given me the access mojo needed to get Semantic Mediawiki on a test box – which is really all we need for a 4-month experiment. It’s not like the absence of a test case system will block the ability of the class to work with SoaS, but if we can get a good test case system going, the things we learn could also help other projects, so it’s something I’m going to be trying.
  • In development land: Sebastian is getting the rawhide composes working for the SoaS build we’ll be using – we’re going to be testers for the F13-based spin, with Blueberry (the current stable version) as our fallback in case anything explodes. This in itself is a big task, which means that we could use some help with packaging Activities.

Our next check-in meeting is Thursday. We still need to figure out a regular check-in on curricular matters (so far, Lynne May and I have just been talking casually every evening – I live with her family, so this is easy… and we need to start documenting these conversations) – but we touch base on technical matters at the weekly Fedora Sugar meetings in #fedora-olpc on Thursdays at 1500 UTC (10am EST).

Anyone is welcome to join in; the meetings are for any Sugar work being done in Fedora. All the agenda items have so far been somehow related to this deployment, but if you’ve got your own SoaS deployment, are working on Activity packaging, are interested in getting Sugar packages in EPEL to work towards Sugar being available on RHEL in the future, that all fits – join us!

Small One

February 5th, 2010

Tonight I was working on the sofa while Audrey (6 years old) was watching TV. Every time she shifted position, she edged a little closer until I looked up and noticed that my left arm was immobile because there was a Small Child leaning on it silently asking to be cuddled. So I pulled her into my lap enough that I could sling my left arm around her and continue typing from there while she kept on watching Cyber Chase.

I am a normal part of a little kid’s life. I’m also acutely aware that she’s not going to be little that much longer.

WHAT HAVE I WROUGHT?

February 5th, 2010

I went back to the kitchen yesterday to grab a drink, and hearing the rasp of tearing foil in the next room wandered in to determine its source. Kiko and Gabriel looked up from the table, then, Magic cards spread from hell to breakfast, starter boxes split with the fury of their opening, a mixture of guilt and fear percolating up their faces. They were orchestrating some kind of card draft, frenzied and immediate, like they were bagging a huge mountain of coke in some halogen flooded sub-basement.

I assumed the unmistakable eyebrow crinkle/lip configuration that was like, "Magic, guys? Seriously?"

But Magic it was. They started with Pokemon, ironically I think, moving on to harder stuff like the WoW TCG, ever skirting the form's coiled All-Father. They are engaged in a perilous sort of business, here, but they'll never know it; not 'til ten years hence, looking into their own hollow eyes in the bathroom mirror, trying to scrub tiny flecks of foil which will not come off.

Seriously though, there is a reason I keep coming back, and it isn't just because I enjoy hemorrhaging money. [via]

Permalink | Leave a comment  »

Reminder: 2 weeks left to apply for the Fedora Scholarship!

February 5th, 2010

I did an earlier blog post with more details, or you can just look at the main Scholarship page – but really, it’s very simple.

  1. Are you starting college next year?
  2. Are you a Fedora contributor?

If you’ve answered yes to both of those questions, you should apply.

That is all.

Expense reports SOP

February 5th, 2010

In an attempt to reduce my future procrastination on expense reports by making them easier and easier to do each time, here’s the process as I’ve got it so far.

  1. Capture. Get everything on my company credit card. Evvvvverything. Also get receipts for everything. Evvvvvvverything. Receipts all go in my wallet, in sequential order, front to back. Everything I get on my card goes in the right pocket, everything I can’t get on my card for whatever reason (maybe it’s a reimbursement for an event attendee) goes in the left pocket. Online purchases get their receipts (which arrive via email) shuffled into a “expenses-to-report” folder in my inbox. This way I have three places to look when I go file: my inbox, the right side of my wallet, and the left side of my wallet.
  2. Annotate. When I get a receipt, I write down what that receipt is for. “Hotel Mon-Wed.” “Dinner with X, Y, and Z Thursday night.” If I’m tracking for an event or anything that involves people other than myself, put up a budget table on the appropriate event wiki page: columns should include item, price, and status (where the latter is stuff like “approved” or “booked” or “paid” or “reimbursed” or “done”).
  3. Digitize. When I have all the receipts, I line ‘em up on the floor and snap pictures going down the line, then throw them on my computer and run (within the folder with the pics), mogrify -geometry 500 -separate *; rm *-1.JPG; rm *-2.JPG; mogrify -rotate 90 * which resizes them to 500px width, separates the RGB channels and discards the GB ones (leaving you with a grayscale image rendered from the red channel), and rotates them to the proper orientation. At the same time, I print all the email-receipts to PDF. I go through and quickly rename the files to sane names like “thursday-dinner-olive-garden.JPG” or “30.68-gas.JPG” or whatever will let me identify them quickly by filename later.
  4. File. Stick everything in Oracle.
  5. Submit. I go down the list of receipts that Oracle tells me I have to submit and smush them together in order using pdfchain, then send that off to the email address I need to send receipts to.
  6. Reward. Yay, Mel! You filed expense reports! Now you can go and have an orange juice!

See, Mel? It’s not so bad. Really. Really not so bad. (Except when pdfchain barfs at you and you can’t figure out the underlying issue that pdftk is having and one of the receipts was on thermal paper placed next to a very hot pizza box and was nearly black by the time you got it and consequently had to be GIMP’d up and your phone company won’t give you the number for your mobile broadband device so you can get the receipt for that and… well… obviously there’s stuff I can do to improve the predictability of this workflow more.)

Blackbird: now with less suck

February 5th, 2010

Huh. Comparing guitar practice recordings, I am now confidently able to say I’ve gotten better at playing “Blackbird” in the meantime.

For comparison, here’s the first attempt about a week ago.

All right, I’m still slipping up in little places, my picking is quite uneven… but I’m able to recover from mistakes inline, and my right hand isn’t going “AAH PANIC WHERE TO GO NOW?” any more.

I haz win. Also, I haz learned new barre chord last night, except I do not know what it’s called. I’m sure I’ll find its name at some point, but for now, I will think of it as the thing that enables me to play “Rodeo Clowns.”

Thinking about my 2010 Sugar Labs goals

February 5th, 2010

The Sugar Labs Oversight Board has been talking about 2010 goals; I wrote down a first draft of mine and wanted to toss them out here (hey, release early, release often!)

My personal views on annual goals for Sugar Labs: Rather than having overarching goals set from the top-down that everyone in Sugar Labs runs towards for 2010, I’d like to see individuals within the community state and document their own individual goals for 2010, so we can easily find areas of intersection-of-interest that would advance the mission of Sugar Labs. If enough individuals pick up on the same goal and then pool together to accomplish it, then it becomes a de facto “community goal” – but one formed organically from the bottom-up, rather than from the top-down.

In that vein, here’s my current thinking on what my own goals within Sugar Labs for 2010 might be. This implies stuff that I am willing to take responsibility for – I plan on being involved in driving each of these goals forward.

1. An average contributor should be able to participate in SL on a minimum of 4 hours a week – that’s 1 hour for a team meeting, 1 hour keeping up with lists, and 2 (or more) hours actually doing stuff. (Prerequisite: having weekly team meetings, having all conversations for a team logged to its mailing list, etc.)

This goal could probably have a better final wording, but my intent is to make it so that when you decide to join the Sugar Labs community, you can quickly (without needing to spend weeks soaking up a lot of context that us old hands tend to take for granted) settle into the rhythm of a smaller group you can quickly get to personally know, that will mentor/coach/support you.

I’m currently stepping towards this goal via my work on a small local SoaS deployment (we’re waiting for the final administrative approval needed to announce it and make all our notes so far transparent – hopefully that will happen tonight; lack of transparency is totally driving me nuts, so it’ll be a relief for this to get resolved). We’re trying to keep the time commitment low for everyone involved, while still maintaining strong links between everybody in the project – it’s a small sandbox within which we can experiment with collaboration. This is only a start, but it’s a start.

2. A regularly occurring, annual (to begin with) and planned far (more than 6 months) in advance, Sugar Camp. We need a rhythm for our community to settle into, and since we have a much larger percentage of non-technical contributors than many open source projects do, we need to set our heartbeat around something broader than our software release cycle. More on this later.

3. Listen. Too often I sprint hard on Getting Stuff Done and shouting out as much of what I’m doing as I go along – which is all wonderful, but has a missing part that I sometimes forget. Listening. Finding out what other people are doing, echoing/reflecting/summarizing it back to make sure that I understand, and then – if there’s a chance to do so – finding those small opportunities for synergy between my work and theirs. I need to take more time to find out and keep up with what others are doing, ask them what they’d like, what sort of help they need.

This is actually something that’s motivating my second goal of having Sugar Camp – what I want from such an event is a way for all of us – at some point in the future that we can all aim for and schedule in – to come together and take a breath all at once and share and reflect on what we’ve been up to.

Those are my thoughts, more or less braindumped at the moment (though I’ve been mulling these in my head for a few weeks before forming them into written English sentences). What are yours?

Jacket-signal

February 4th, 2010

Some things about my work habits/cycles I noticed today (some of which I’ve stated before here):

  1. I work in sprints. Boy, do I. I’m learning to plan and pace them out better as I become more aware of how those cycles work – but I shouldn’t expect to have THAT MUCH intense thoroughput 100% of the time; it’s ok to be Ridiculously Productive half the time and Pretty Darn Productive the other half. I don’t yet meet my standards for this, but I’m getting closer.
  2. I may want to seriously look into tuning my work/sleep schedules against each other again, because this week I’ve been repeatedly running into the “I need to get tired enough to focus” wall. There are some things I’m just too jittery and hyper to plunge through unless I wear myself out enough to sit down for a while first.
  3. …although alternatively/additionally I could look into doing more physical exercise, sometimes that helps.

Today I had lunch with a rather tired Mo and a rather tired Nikki (it’s an intense schedule time for both of them). Mid-conversation, they looked at me and said something to the effect of “are you ever tired?” I thought for a moment, realized that I was in fact exhausted, and said so. There was a look of disbelief around the table, so I explained that I could be tired and hyperactive at the same time, that it was very difficult for me to be tired or exhibit tiredness because the happy-hyper keeps on bubbling up to the surface at the slightest provocation, and that I tended to recover fairly quickly and was in fact already doing so.

I’m terrible at resting; I can’t sit still, so even if I’m tired I’ll sometimes continue scurrying around completely ineffectively for a while until I realize it and then force myself to stop, conk out, reboot. I’m getting better at this over time, mostly because I’ve grown more sensitive over the past several years to the physical signals that cue me to look at my mental processes. For instance, I get cold when I’m sleep-deprived; my body loses the ability to regulate its own temperature, and I’ll start shivering in a perfectly temperate room. So reaching for a jacket is usually an indication that I ought to get to bed.

Similarly, certain sensations in my arms/hands signal the onset of the very early stages of RSI Doing Bad Things, and I’ve learned to note those and pull back and spend some time being kind to my muscles (which sometimes involves short spurts of moderate pain as I rub out the hard knots that have collected in the meantime). A particularly clear and effective signal is if I “type my hands cold,” that means I’ve gone long enough to make the knots start cutting off the blood flow to my arms and hands, and my fingers will be freezing even if I’m otherwise warm. If my RSI is acting up, I’m probably working for too long a stretch, and I’m probably tired, and I (physically, at least) need to rest.

Back to work habits: I tend to open a lot of threads and tinker with them in parallel, and then (perhaps hours or days later) close tons of open threads at the same time in one fell swoop. That’s where I am right now – a few dozen open threads (some larger than others) are floating in my queue, and it feels like tomorrow is going to be a buffer flush day, when I just go and do the last 10% on each of those items and resolve a whole bunch of things at once.

Oh hey, I found a jacket. This is probably a sign that I should sleep.

Lowering the barrier to entry only for some

February 4th, 2010

This is something I find very difficult to forget (possibly because my family is from the Philippines): when we talk about how open source and content and “online learning” lower the barrier to Awesomeness for students, we need to remember that this only applies to students who can go online and access that software and content. This is a very small percentage of the world.

I’m not just talking about the kid growing up in the middle of the desert with no reliable electricity or connectivity who’s never seen a computer before, though there are many of them. I’m also talking about the city kid who’s only used computers for 30 minutes at a time, once per week, under close supervision to make sure they’re only going through the prescribed typing exercise. I’m also talking about the suburban teen who has their own computer but isn’t permitted to install “third-party software” on it or spend time talking (and working) with “strangers” online.

And I’m talking about any kid who theoretically has access to computers, but doesn’t know they do – or know what options are available to them. How would they know that they could – or should – contribute to open source? How do we expect it to enter their awareness that they can find this world and are welcome to contribute to it, when so many other things in their lives have set the expectation that they are not welcome to speak up and tinker and contribute in the world of grown-ups, in the “real world” doing real things? (And I’m also talking about people who aren’t kids – this really applies to folks of any age.)

We’ve got us a world to fix, people.