Archive for April, 2010

FAWN and the raptor/bus test


I wanted to call out this conversation between Kamisamanou Burgess, Karsten Wade, and Neville Cross on the Fedora News list because it’s a great illustration of the Raptor/Bus test – “if you get hit by a raptor or eaten by a bus, your project should still survive.”

Kamisamanou is the creator and sole maintainer of FAWN (Fedora Audio Weekly News), a podcast of FWN (Fedora Weekly News), and announced a temporary hiatus due to school obligations. Karsten replied, noting that when the same thing had happened to FWN itself, it led not to a pause, but to an explosion of contributors.

Originally and for a long while, Fedora Weekly News was many things done by a handful of people on a stand-alone server  separated from Fedora infrastructure.  As those people’s lives changed and they moved on to other things, Thomas Chung stayed with producing FWN.  He had an insight, a brilliant move, and saw that by bringing FWN in to Fedora as a sub-project he could create room for capacity.  The modern FWN system with beats was born from that.

Creating capacity is something Fedora does best, or at least tries to, and especially for contributors.  It worked for Thomas, allowing him to share the load initially, and later to let his brainchild out of the nest to be a living, breathing part of Fedora.

Then Neville chimes in with a brief +1, and… well, that’s the saga so far. Anyone interested in lifting up this podcast with more hands in the same way?

On a side note: one of my favorite things about reading Planets is the accidental learning I pick up along the way. This is harder for me to get in person, since my hearing makes it difficult to randomly pick up on conversations that aren’t directly addressed to me, but when reading blogs (and lists and IRC logs), I catch words and go “oh, what’s that?” and sometimes I learn stuff. Today’s discoveries: urlwatch and tee.


Oxygen is awesome!


“Hang on little tomato” is a strangely satisfying song; I initially liked the sound (a sort of gentle swing? not sure what to call this) but the lyrics are cute in the same way something like “Wo Qui Non Coin” is (that song, for the record, is about a puppy). They’re like… theme songs for the impossibirds.

Ahem.

Anyway. Things I’ve learned so far during a week of being really tired (mostly, I think, because I have been sick):

  1. I am good for one intense sprint per day. Yesterday was a series of meetings; today was proxying a giant firehose of Alegheny students (they’re learning to turn their firehoses on, and it’s pretty neat to watch), and tomorrow… I don’t know what tomorrow’s going to be yet. It’ll be one of three things.
  2. Cleanup of the prior day’s sprint is a good way to start the morning (it lets you start off more or less on autopilot).
  3. Prioritization (“what should I focus on today? *PONDER* okay, let me do that!”) feels pretty useless the first two days in a row you do it, but if you prioritize for multiple days in a row, compound interest starts kicking in. I haven’t yet broken even, but… I think I’ll get there early next week if I can keep this up.

The past several weeks with Matt Jadud have kicked me out of my plateau of “understanding academia,” which I’ve been coasting on since… graduation, really. I’m still trying to scramble out of the – it’s not so much a I know kung fu! feeling as it is… recovery from shellshock, but good shellshock, paradigm-shift shellshock, “that was data I don’t know how to process but there was so much of it I almost kinda sorta do” shellshock. It lets me read things like this in a different light. I’m still processing it, and I haven’t really become coherent on this new and growing perspective yet, but… it will come. It will come.

It’s only 2am, but I am completely exhausted. Tomorrow I have today’s sprint (Allegheny) to clean up, some POSSE stuff to do, and then life – I want to finish my taxes tomorrow if I can (yay Middlesex County May 11 extension and finally getting the info I need today – I think) and there are also some conversations that need to be had. It’s physical exhaustion, not so much intellectual exhaustion – my brain’s going a million miles per hour, my body’s just sick and can’t move quite so fast as usual.

In the meantime, I continue to periodically lose my voice in between bouts of attempting to cough the back of my throat out through the front of my mouth, and a headache has started to make occasional appearances. On the up side, I either don’t have a fever any more, or it’s low-grade enough that I can ignore it. And really, I have been resting. And I actually do feel better, and not all that bad – it feels like a bug that’s passing through, and I’m just waiting it out. Waiting it out with lots and lots and lots of water, garlic, ginger, vitamin C, and Pei Pa Koa (Chinese cough medicine – still the most effective stuff I’ve ever tried).

Oh – and I’ve started Rolfing sessions for my RSI, on the long-ago recommendation of Tomeu. It hurts. Not so much that I’m anything other than amused, but I have a high pain threshold (I walked around with appendicitis for 2 days when I was 15 going “hm, that’s interesting” before going “hm, that’s interesting, and it’s been around a while, so perhaps I ought to worry”). And even after more than a year of working on it, I still manage to surprise people with how tight and messed-up my muscles are. And I’m learning (relearning?) that surgical scars are super-ticklish.

On the other hand – did you know your lower ribcage is supposed to expand when you breathe? (My torso actually moves when I breathe! Dude!) It’s pretty neat. I can keep on breathing in now, so much more than I’m used to – and it isn’t even all the way unlocked yet. Oxygen! Joy! Of course, I can’t test out my new lung capacity for real while I’m sick and wheezing, but… I look forward to going for a run after I get better, to try this out.


Hm, I wonder what an 8-hour workday looks like.


In other news, I also figured out why I was so tired today when I went down for what was supposed to be an (already uncharacteristic) 2-hour nap and woke up 2 hours later to find that my ability to speak had been replaced by a fever. Adrenaline sometimes makes me more functional than I should be.

I went back to sleep for another 5 hours and then woke up to take care of some things I needed to get done today. I’ve done them all except for two, so I am going to do those two things now, ignore everything else, and get another couple hours of sleep before the next day starts. I’m actually extremely functional – I just need lots of sleep right now, so I’m going to try budgeting actual 8-hour workdays for the rest of the week (a weird concept that I’ve never actually voluntarily tried).

The next few days (assuming my immune system takes as much time to recover as I expect) may be an educational exercise in prioritization; Greg reminded me of the difference between “urgent” and “important” today, and I have been spending too much time on the first and not enough time on the second. It’s not enough to do things; I have to do the right things, since I very well can’t do everything. I did a great job of prioritization last year when I was sidelined with RSI; I need to learn how to do it when I’m not sick or injured.

Let us try this. I can do this for 3 days, right?

Right?


financial independence steady-state: I want it.


I’m really looking forward to this “independence” thing reaching steady-state.

The latest in the saga: since I transformed my brokerage account from a custodial (“with my parents”) one to a normal (“I’m an adult now, really”) one and immediately thereafter changed the investments to the ones I wanted to make, I’m now in control of my finances for real, and have been for about a year. However, since the stuff I sold (in order to make the investments that I wanted) was purchased before this grasp of independence, I don’t have records of those purchases – which means the government lists me as having acquired those assets for $0.00, which means it thinks I made a heck of a lot more profit than I actually did, which means it levies taxes accordingly, which means I’ve been staring at my 2009 tax return for the past few days trying to figure out why my income was double the amount of money I actually saw last year. (Answer: it wasn’t, but I need to call my brokerage – and my parents – to get proof it wasn’t.)

Folks in my county have an extra few weeks to file taxes due to the floods that came through earlier this year, so I’m not actually rushed/stressed/going-to-be-late, but… still, it’s annoying. I’m hoping to clear up most of the remaining financial stuff before my birthday this year so that I can spend my year-of-being-24 extricating my medical records from the same kind of sink and setting up my own doctor/dentist/audiology/etc routines. I’m taking care of myself fiscally first, and then physically – and then… we’ll see what’s next. It’s going to be a while.

I think I’ll be able to reach financial independence steady-state around April 2012 – do whatever cleanup remains during 2010, file those taxes in April 2011, and have 2011 as my first full year of Actually Having Everything. I know my financial situation’s going to change with grad school coming up, but I’ll know all of it, have all of it, be able to easily track and keep up with all of it. It should not be this hard. I’m glad my job is on my terms; I’m glad I’m going to grad school on my terms. I love being able to do stuff on my own terms; it is a luxury that I will never take for granted.

In the meantime, as my mother keeps reminding me when I call home, by the time she and my father were my age, they were engaged (actually, my dad was married when he was my age, and I’m a few months younger than my mom was at the time of her wedding). Hint hint. My father does the numbers, money-wise, for both my parents. Hint.

That’s nice. But I’m going to learn how to be a grown-up person by myself first.


Being A Grownup: the taxes edition


This is the second year I’ve sat down to do taxes. It’s also the first year I’ve had a 401(k) and the first year I’ve actually had visibility into and control of all my finances. I’ve been able to stand on my own for a while (this was one of my big goals throughout my 4 years at college), but last year around this time was when I went home armed with a sheaf of numbers and Had A Talk About Responsibility with my mom and dad and finally got the last of my stuff changed from my parents’ names to mine, got account information for everything, started directly talking to financial institutions myself… it was my 23rd birthday present to myself, and it was kinda scary. The number of financial books I had to read through for however many weeks at the Boston Public Library in order to psych myself up for that conversation was kinda ridiculous. I knew it was logical, I just needed repeated doses of reassurance that what I was doing was okay. It’s perfectly fine for a young adult to take responsibility for her own finances.

It sounds silly, but it was a big step for me. Before then, I’d had my own savings/checking account that I’d semi-surreptitiously started when I turned 18 just to have a financial space of my own, and I think I was managing it pretty well – but boy, the conversation we had when they found out I’d opened that account without permission… I know it hurt them, and I had asked permission before and hadn’t gotten it, and I thought it was the right thing for me to do, and I did. And it was yet another breaking-away from being the little girl they wanted to take care of.

I just had the one account, though. Everything else was with my parents, by my parents… when I had money I wanted to save (and I often did), I’d go to them and say “I put aside $X. I’d like to do $foo with it. Is that okay?” and they granted permission and took care of it. For which I’m grateful, mind you. I’m glad my parents taught me about saving early on, and about thinking ahead – to the point where you start thinking about your kids’ college savings (or for me, my brother’s kids’ college savings) even before you yourself hit college age. But, as I pointed out last year, at some point I’d have to start making those phone calls myself, sit down with people and talk about The Future (financially speaking) myself… I’d been doing it already in a shadow-capacity for some time, and I was damn well ready for the real thing.

I’m still learning how to do this – and sometimes I’m struggling and I’m sure I’m making mistakes – but I am learning fast and just about as well as I can, I think. And it’s better to make mistakes now while I’m 23 and years and years and years away from getting a house or retiring or anything like that. I’m building a foundation so that I can be an anchor and take care of the things I want to take care of later on. I’m making sure that I won’t have to worry if I get sick, that I’ll be able to pick up and move if I have to, that I’ll be able to go to school if I want to, that I can hop on a plane without hesitation if family or friends need me to be there now. It helps that I don’t have much, and it helps that I don’t have anyone depending on me but myself.

So here’s the way I think about it right now.

  1. I earn money. (Yay!)
  2. I put a bunch of it towards retirement right away. All the happy-tax options (401(k) and Roth IRA), as much as they’ll let me.
  3. Then I put a bunch of it towards longer-term stuff I want someday – more retirement, school, maybe a house, maybe a round-the-world trip… I don’t know. A car, when my 17-year-old vehicle dies. A motorcycle. (Heck, I might just get the motorcycle instead of a car.)
  4. And then I sit down and figure out expenses. I still remember how to live on next to nothing; I’ve gotten slack on doing that lately, what with buying a folding bike and a bass in the past year (two things I’ve wanted for years) and occasionally going for good food and dancing as a treat – but I can still do it, and I know exactly what to cut first if I ever need to cut anything. How much do I need to live (eat and sleep and get around town)? How much do I need for stuff that makes life easier and more educational and fun (scholarly society subscriptions, cell phone, website hosting)? How much do I set as a buffer for random things like food and movies, dancing, going out with friends, taking side trips, buying little things like shampoo and batteries, saving up for slightly-less-small things like the aforementioned bass and bike?
  5. Then I think about the places that I want to give to. Right now, there are two – my schools, IMSA and Olin. I donate mostly so that they can get me in as an alumni donor (“X% of our alumni gave”) because I know the amounts I can afford right now won’t actually make a difference. I give back more by volunteering, anyway. But these places made a big difference to me, and I want to give that back so they can keep making a difference to other kids, so… this is important in my book.
  6. Then I look at whatever is left and go “okay, what projects do I want to fund now?” This is where the SoaS pilot hardware at Cambridge Friends School comes from (now I have a test lab! woo!)
  7. And then I take the remainder and go back to step 3.

And I’m gradually finding ways to automate all this. I figure it’s maybe 80% automated right now. It’s just been a year, but… I’ll get better at this over time. And I’m trying out suggestions for keeping track of it. (Thanks, Max. Spreadsheets are awesome.)

And then separately, I make sure that my transportation-stuff is fine (my bike’s in good repair, my car’s in good repair and insured) and that I’m covered health-wise (which… I have actually been terrible about; I haven’t seen a doctor in a long time and should figure out a regular schedule for making sure that I’m okay, particularly given my family’s medical history – maybe that’s my project over the next year).

And I think that mostly covers stuff I need to do to Be A Grownup.

Okay. My head’s on straight about this now. It’s time to fill out Actual Forms.


Coming in for a landing


Sitting in the Pittsburgh airport listening to Chet Baker and waiting for my flight to board. I’ve got a while – there was less traffic than Matt and I expected. It’ll be interesting to go back home to Boston (it’s the closest thing I have to home right now). I left there a little more than a month ago – which really isn’t all that long a time; I’ve had extended travel jaunts for longer – but I’m a slightly different person now than when I left, in a couple different ways. Between my takeoff and my landing at Logan, I have learned a lot.

I’m thankful to Matt, Carrie, and Matthew Jadud for hosting me in Meadville, to Darren Miller and Ishita Roy for opening my eyes to more of academia, to Matt and Bonnie Tesch for taking care of me in Pittsburgh, to Katie Rivard and Kristen Dorsey for a lovely time downtown, and to my team(s – they overlap) in Red Hat and Fedora for a fantastic FAD in Raleigh. And many more names and hands and voices stretching out over the internet who’ve helped me work and think and pause and grow.

I land this evening; I get in early enough that my arrival won’t be rushed, won’t be too late, will have a little time to unwind and settle my mind for the day before I head to sleep (at a reasonable hour that I’ll try to be more regular about over the next month). I have the email backlog of doom to face at some point – but my goals this weekend are extremely simple: (1) finish and send my taxes, and (2) send out my grad school draft to professor friends for comment (it will not be perfect or complete by any stretch of the imagination). I’ll also see some friends tomorrow and will make some time to chill with family. Beyond that, whatever work I get done – POSSE, Allegheny follow-up, travel-booking for the summer, everything – that’s bonus.

Mostly I need to make sure I’m ready for my rhythm over the next month while I’m actually in town, and that this rhythm takes me to a point where I’m ready to run full-tilt at a long, hard, gloriously exhausting summer. Getting my sleep, exercise, and food patterns into something reasonable and maintainable will be important – right behind that is making sure my finances and correspondence are as close to autopilot as they can be, and right behind that is looking at the time I’m going to have for studying and reading. Because summer is also getting ready for the fall. I think ahead – mostly because I know I’m very spontaneous and impulsive, and I like having the freedom to randomly do things while knowing that the important stuff is taken care of. In a funny way, there are things that I am able to do now because of preparations that I made when I was back in middle school; you set up capacity so you can use it later, even if you don’t yet know what you are going to use it for.

I usually take the month before my birthday as a quieter period of reflection – not that I’m that great at slowing down, but it’s the cycle during which I take stock of things and figure out if I’m still going where I want to go. So maybe I snatch moments here and there that add up to a couple hours of running numbers, drafting timelines, checking back on how a bunch of things are working out – and I try to write these things down, and I try to talk with people and get a gauge. That’s a tiny fraction of my time, though; most of it is still spent running and running. These days, I am occasionally reminded of the importance of breathing. I suppose people have been trying to tell me that for a while. Whether I actually listen to the reminders is another question. I’d like to think I’m getting better. Not too much better, though.

Things might come together in interesting ways for grad school now – we’ll have to see. The short version of the story is that an idea’s starting to make the rounds, and… depending on how the first few people like it, I may be learning how the grant process works. Which would be extremely cool. If this works, I’m going to be working like a dog for at least the next half-decade, maybe a little longer (then again, I’d work that hard no matter what I was doing). Part of that might be waiting to work on stuff – which is a difficult thing for me to do, not being able to run directly at something I want – and part of it will be learning how to be patient and learning how these sorts of conversations work. Part of the reason I need to work on that application. In a lot of ways, it’s running towards the stuff I’m working on in open source and education – it’s going to let me more richly do what I already do, work more deeply with the people I’m already working with. For the most part – if this works out – I think – I wouldn’t actually be leaving anyone behind.

I realize these notes are vague – I just want to pin down, for myself, the conversation Matt and I had in the car on the way to the airport today. Idea came up. Matt ran with it and I was going “Wait, wait, what? Wait, wait, what, really? That might even be remotely possible?” But I have also learned that if you want to work within the academic world (which is where this idea has to sprout, though we’d transplant it to the open world as soon as possible) you have to start your ideas slowly, safely, closed – because a single “no” can bring it down forever, so open discussion can be a giant penalty. I don’t understand it right now; I certainly don’t agree (which isn’t fair, since I don’t understand it yet), and I also figure I should learn it this way at least once. I’m not used to not being able to share things with the world (and this is a twitch that I don’t think will ever go away, so the moment it becomes possible to broadcast braindumps on something, I will be blogging about it), but if this works out, it’ll be… pretty awesome. And if it doesn’t work out, I can talk about what it was anyway.

Excellent work. I must continue to do excellent work. I feel as if I haven’t been half as disciplined about that as I ought to be in the past month especially; I’ve been doing barely-good-enough-to-scrape-by work while my brain’s gotten rewired in any of a half-dozen ways. But I think this will also allow me to settle into a better steady-state (for the little while that I have a steady state) now that I’m starting to get used to the new ways I can think and the new things I can see and the new stuff I can do. I’m not sure what many of those things are yet. But I am looking forward to finding out.

Don’t worry, though. The restless, stubborn, gleefully spontaneous and easily distracted Mel is still around. We change, and yet we stay the same.


One of today’s projects


12:30pm: half-gallon of thick whole chocolate milk from the local dairy has been acquired.

Slightly less than 4 hours later:

It was delicious.


network of guitar-learning materials


This is a braindump. I’m not sure where it’s going, but I want to get the data out.

Matt and Max were talking about the current state of undergraduate education and its relationship to open source today. Somewhere in the middle of that, a thought hit me: the way we teach a lot of engineering/CS now is like learning guitar without ever going to a concert or buying a CD.

How do I learn guitar? (Admittedly, I haven’t learned much.) What resources are out there for me, and what do I get from using each of them?

  • When I listen to a CD, I get a polished piece of work by skilled musicians – edited, arranged, the best take they’ve got. It shows me how good a crafted piece of work can be. Heck, I hear this on the radio, I see it on TV… I’m just swimming in music, in the notion that people make music.
  • When I go to a concert, I see great musicians performing – doing what they do, live. Seeing how they spin that energy at a high level in real-time – how that skill gets expressed.
  • When I listen to amateur performance videos online, I see people performing at their best, where “their best” is at all levels along the pathway from novice to journeyman to master – and some people have enough videos up that you can see them learning and improving over time.
  • Then there are lessons online, which annotate or scaffold me through figuring out a piece I’ve already heard (I usually wouldn’t look for a lesson otherwise) and already want to play. Sometimes they’re videos, sometimes they’re written instructions, they’re usually one song at a time and don’t give theory or anything.
  • Then there are books that step you through scales and chords and theory so you understand the foundations behind the stuff you’re playing.
  • Then there are books and resources on the historical context – why was this musician’s adaptation of this piece groundbreaking, why do we consider this person great, why is was this recording not quite so good? Calibration and value-setting. I also get this from listening people comment on the stuff I’m listening to.
  • There’s listening to friends mess around with their guitars, and having them sit down to show me things, and teaching them in turn. Sometimes they play songs. Sometimes they play exercises. Sometimes they just play. I’m not alone in learning, and seeing other people going down the path – at many places down it, some ahead and some behind – helps keep me going “yeah, I do want to keep on doing this.” Reminds me of where I’ve been (not very far) and where I’m headed (hopefully somewhere, but I’m just doing this for fun, not really studying seriously right now).
  • I’ve never actually taken a guitar lesson, so I can’t speak to that.

I’m sure I’m missing something – but it’s a rich network of resources right there that I’ve got – it’s almost impossible to grow up in a media-rich US-centric childhood and not get the idea that there are things called guitars and people play music on them and if you wanted to start learning maybe you’d ask these folks or read this book and it’s okay to mess around, you’re supposed to experiment with sounds, play bad music with your friends as part of learning, but that you knew what good guitarists sounded like and recognized that you would have a ways to study and grow before getting to that point.

Now think about engineering. Most kids don’t grow up with that sort of rich network around the notion of engineering being a thing that people do. Maybe the equivalent would be for someone walking into music school and having this conversation.

“Hey, welcome to Berklee.”
“Hi! I’m here to study guitar. I’ve never played before.”
“Oh – that’s… I guess that’s – what else do you play?”
“Nothing. I heard guitar was a good way to make money when you graduated.”
“So, what… music do you like? What do you listen to? Clapton? B.B. King?”
“Who? I haven’t actually heard – well, maybe there was once I heard someone play guitar. They said it was really great. I dunno why. Um… wait, actually – what’s a guitar? Is that… is that one over there? Hey, do you think I could get a guitar internship this summer?”
“Remind me why you’re here again?”

I think the hardest part of learning something is learning how to learn it, in a way – to grok the context, learn what it is you might be learning, learning how and when to ask what sorts of questions. I think we often rob students of that richness in the name of efficiency – and I think that participating in open source communities is one way to get it back. A very good way, in fact.

Still not sure where this braindump was/is headed, but wanted to get that out there.


Another blast from the past


Ah, Andrew and Mark. How I miss you guys, and look forward to seeing you both again shortly. While looking for another old post for a discussion, I came across this one (for a last-minute Parents’ Day skit about the Olin design curriculum, almost 5 years ago now).

AC209, Olin College. The room is full, the lights are on, and ANDREW, 20 and very professional-looking, stands at the front, addressing the audience. Several chairs are placed at the front of the room between Andrew and the door. As he speaks, MARK, 20, and under the burden of accumulated sleep debt, comes in and starts carrying the chairs out, one at a time. He’s clearly not thrilled about this job. As he turns to remove the first chair, we see a sign labeled “USER” on his back.

Andrew: Aha! An opportunity! (To Mark) You, sir, have a problem. I am a highly-trained engineer; I will fix it. Here.

And with that, he snatches Mark’s hand, measures it several times with a tiny ruler, and dashes out of the room as Mark stands slightly stunned. Machining noises from offstage, Andrew rushes back in with a prototype in his hand, and…

Andrew: There you go. Automatic chair tracker, should solve all your problems, no need to thank me, you’re very welcome, good-bye.

Also, I think I have learned to be stupid since I was 19. Yay! (No, really, it’s a good thing. The full rant has more context.)

I’ve got to learn to look stupid. Truly stupid. Not just smart-person-taking-risks-that-temporarily-make-them-appear-dumb-but-are-actually-learning-experiences. Is my pride really that high?

And whenever I have moments of “wow, I did so much better N years ago,” I have things like this to remind me that, actually, no, I felt just about as incompetent back then.

Today I do not feel smart. Today I feel like somebody that is wasting her potential. Someone that doesn’t have much to begin with – or did, maybe, but managed it poorly. Today I have gotten one assignment – CompArch – done. Today I have one lab – CompArch – late. Today I have one report – MatSci – late. Today I have slept through class. Today I am trying not to fall asleep so I can work, and spending more time trying to stay awake to work than I am actually working.

Today I am feeling unsustainable and stupid for bringing unsustainability upon myself. Today I know that I have far too much pride, don’t ask for help, fall behind and stay quiet because I like to look smart by not having to have a hand up. I don’t want to have to be saved. I can ask for help, but it’s always in such a way that I’ll appear competent while doing so. That any questions I ask stem from lack of information, not lack of responsibility or ability. I want to be smart and responsible. But I’m not sure that I always know what that means.

And I also have my moments of glory. They usually come when I am teaching. Classrooms are where I learned to be a catalyst.

Me (in best sermon-giving voice): This is an op-amp!
Freshmen: This is an op-amp!
Me: It has a gain!
Freshmen: It has a gain!
Me: And I say unto you, the op-amp gain is dependent upon the frequency -
Freshmen: The frequency!
Me: …of the input signal!
Freshmen (throwing their hands in the air): Amen!

Today I was at Matt Jadud’s office hours, surrounded by students working on projects… and I realized that I’m deeply happy when I’m in a school, in a room surrounded by people learning, proxying online and helping with multiple projects at once. And that any amount of shit I have to put up with to be able to live like this for a few hours a week, and have that be a part of my life… it’s worth it.

I do love all these worlds. I love them in different ways. My life has been spent learning how to build bridges between places.

Okay. Dammit. Last deliverable for the day, which I’ve been procrastinating on since morning… must… just… get… this… done. Bloody perfectionism. Then go to bed.


How do you grade open source work?


What things do you look at when evaluating student work on open source? I had to do this recently for an RIT team working on Sugar Labs Activities, and here’s what I used:

  • the product. As someone trying to be a user (rather than a developer) of their code, can I get their code and run it? Does it work for me?
  • the project. How’s the wiki page and supporting documentation? Who wrote what? Does it pass the FAILmeter? What was the project plan – were milestones deliberately planned for and hit (and adjusted over time), or was this more improvisational? What kind of reflection on the project process has taken place?
  • design. Since Sugar is an education project, it is important to the culture of the Sugar Labs community that all their work be designed to support learning – what kind of pedagogic thought has gone into this project? (In other communities, pedagogical design might be less important than something else, such as UI innovation, cross-platform compatibility, etc.)
  • developer docs. As someone who might pick up on the code and try to extend it, can I quickly figure out how to do that – to go from running it to pushing up a patch?
  • the code. Who wrote which code when, and what did it do?
  • mailing list archives. How did the team coordinate?
  • meeting logs. (I had logs from lurking in-channel for the quarter, so I simply used those.) Who spoke? How did they interact? Did they bring any people from the community other than their immediate team in?
  • blog posts. How did they present their work to an external audience? How did they phrase that conversation?

What am I missing? What’s extraneous? What are cues you look for, or quick tools/commands/pages you use to get an overall gauge that you can use to dive in for more detail on areas you should pay more attention to – what do you use as “should look at this more closely because it might be interesting” flags? (For instance, Special:Contributions makes it easy to look at one student’s wiki work.)

How do you grade open source work?