Posts that are olin-ish
Had a little fun today while talking with Diana about her research. She was explaining how it’s hard for her to figure out who’s an active Fedora contributor since there are so many ways and means and places (git, wiki, lists, etc) to contribute and everyone contributes in a different place (someone may maintain a lot of packages but never blog, another person may blog and never touch the wiki, etc), so I pointed out that just about everything in Fedoraland was a website with FAS authentication, so “fire up twill, scrape ‘em all down, do some text processing, and you’ll have a per-user portfolio you can analyze to get an activity count.”
8 minutes of coding and 29 minutes of documenting later, a quick and dirty solution prototype is up in the form of FAS scraper. It takes a list of FAS usernames and makes little portfolios for each user using his/her recent activity from a variety of services (so far, just wiki recent changes and packages-maintained). This isn’t meant to prototype the architecture of the code (this code basically has no architecture, it’s 11 lines long), it’s meant to be a rough demo of desired functionality. Think about making the user-portfolios themselves more query-able and you’ll have a notion of how this could be extended – it would be neat to run queries like:
- How many people who blogged on Planet at least twice a month for the last 6 months are also frequent wiki editors?
- Show me all the users who maintain at least 10 packages and are also members of the syadmin-test FAS group?
- For each user with recent wiki edits to the F13 Talking Points page on the wiki, give me all their emails to the advisory-board list in the past month.
I’m sure you can think of better ones. For students (and professors), I actually think this might make a neat variant of a problem set I was once given in college.
To run it, you’ll need the python and python-twill packages (that’s what they’re called in Fedora, dunno about other distros), so this is what I think most people reading this will want to do, for easy copy-pasting into a shell script or a terminal.
sudo yum install python python-twill
mkdir fasscraper
cd fasscraper
wget http://mchua.fedorapeople.org/FAS_scraper/FAS_scraper.py
python FAS_scraper.py
You’ll get a directory full of output that looks like this. They look reasonably pretty on account of they’re straight scrapes of the html pages. This is the sort of thing I pull up to show students when I speak about what a “FOSS portfolio” looks like, so I might just use it to quickly autogenerate “portfolio pages” for the folks I’m introducing them to on IRC. And yes, I realize some of these services are likely to have better APIs to interface with than “scrape the webpage, then consider parsing the html in later versions.” I do not know what they are or where they are.
I am, lines-of-code-per-unit-time-wise, one of the slowest programmers I know, because my docs-per-line-of-code ratio is ridiculous. It’s an old habit that comes from writing APIs usable by mechanical engineers. Fighting the temptation to rewrite. Will probably cave at some point and do a more proper version than the kludge that’s up now, but… if someone takes it off my hands before then, I’ll rest easier and not stay up all night fiddling with this.
In terms of moving this forward, what actually needs to happen is for this to be re-architected into a good general-purpose python library for getting data from FAS-authenticated services. Do things like “instead of manually defining the list of FAS usernames in the code, grab the list of usernames from the actual FAS system.”
Any takers? The first thing to do, methinks, is to get this baby under version control.
Monday, March 1st, 2010 | fedora, olin, teaching open source | 2 Comments »
I am so proud to be a part of my alma mater right now. Really, really proud.
A couple hours ago – a few minutes past 10pm here in Boston – I threw out an email to the Olin alumni mailing list that started like this:
Olin’s got about 22 hours to write and submit a draft proposal for our
Grand Challenge Scholars Program (GCSP) to ARB – the GCSP being
something we’re pioneering for the National Academy of Engineering (NAE)
in our usual role of guinea-pig; other schools are going to be
implementing GCSPs, so this is an attempt to translate Olin’s existing
culture and curriculum into this format so it’s portable to them.
We need feedback and help. Big time. If you imagine bleary-eyed,
sleepless, incredibly hosed Olin students holed up in a team room just
before the Candidates’ Weekend crunch, you’ll have roughly the right
picture.
And lo, edits began to flow all over the wiki, everything from small typo corrections to structure additions to comments to tough questions and their answers. My various IM screens lit up; we flooded into an IRC channel and kept debating. “I’m about to sleep but this is awesome and I’m going to look at this when I wake up tomorrow morning” messages started to hit my inbox. (I mean, I did send it out at 10pm, and apparently some of my friends sleep now…)
There is an 8pm tomorrow evening deadline and hence a 6pm feedback-on-current-version cutoff – the feedback will continue to go and improve the current draft, but a couple students will be freezing a snapshot of whatever version/feedback is there at 6pm and branching it off to polish for improvement and submission to ARB (Academic Recommendations Board – the group at Olin that decides the curriculum).
It is now 2am; most folks online have now gone to sleep (a lot of Olin alumni stick around the Boston area – although we did get David Nelson popping in from Japan, which was ubercool). I got asked if logs would be sent to the list, so of course now I’m going and sending that out before I can pass out (which, at this point, I very, very, very much want to do, even if it’s early).
Oliners know how to work together to change things quickly. You just have to give them the chance to care. The cultural similarities between Olin and the open source projects I love and work in every day are striking – and now I really think we’re starting to see the two converge. FOR GREAT JUSTICE.
Wheeeeeee!
Friday, February 12th, 2010 | olin | No Comments »
Dear students involved in Fedora, Sugar Labs, OLPC, and/or any other open source project:
Please take a minute to explain to people with fancy titles why you are awesome.
That is all. I hope to see some of you in Boston in April spreadin’ the good news.
Thursday, February 11th, 2010 | fedora, olin, olpc, sugar, teaching open source | No Comments »
While reading Matt Jadud’s blog via Planet TOS, I came across the blog of Cory. Cory is one of the students working with Matt on Operation: Stick Figure Army. His recent post “how to cope with the design phase?” was about how he (as a blind hacker) goes about a process that most engineers rely on highly visual tools for (UML, sketching on whiteboards, etc). I can’t comment on his blog without a login I’m not sure of how to get, so I’m writing a longer blog entry as a response instead. (For those who don’t already know, I’m a deaf* hacker.)
First of all, I like the way Cory and his professor handled the question on how to assess his understanding of UML diagrams (a visual convention for describing program structure and a required topic in a class Cory is taking). He has to demonstrate understanding of the concepts; it’s just that the input and output methods for that understanding are different.
…even though I may not be drawing diagrams, that doesn’t mean that I’m not responsible for knowing how each diagram is used and how to describe one.
Reading Cory’s description of how he describes UML diagrams in text reminded me of the time in elementary school where my music class was going through the instruments of the orchestra; we were listening to sound clips from different instruments and had to write about each one. Since I can’t hear high frequencies, my reports went something like this: “The tuba sounds like this, the bassoon sounds like that, the piccolo has a fascinating history and an intricate key mechanism that I will now diagram…”
I don’t believe that a fundamental property of the software development cycle is that it is visual. I think we make it that way because most people think it is more convenient…
I agree. And I don’t believe that a fundamental property of high-bandwidth conversation is that it’s auditory, either. I know many people who, at the present moment, find phone conversations to be the easiest way for them to communicate with others long-distance. But that’s different from saying phone conversations are the most effective way of doing so, depending on your goals (for instance, phone conversations currently – usually – don’t get logged for posterity, let alone logged in a way that can be automatically translated). Similarly, there are undoubtedly highly effective non-visual ways of doing design. As someone who’s highly visual myself, I don’t know what they are, but I would love to learn. (One of the reasons I enjoyed reading Cory’s posts is that my hearing forces me to rely so heavily on visual input that I often forget to run thought experiments suspending the assumption that I can.)
I’d actually like to learn more about the design practice of looking at edge-case users (not sure if there’s a better term for this). Maybe posts like Cory’s can shed some insight into the advantages of non-visual design systems, or the disadvantages of visual design systems, in a way that makes both of them better for everyone (not just the visually impaired). I look a lot at the benefits of alternatives to auditory-by-default systems because I have to, and sometimes the adjustments I make end up being useful to other people.
Matt pointed out in his response to Cory’s post that the majority of the software development world does not use visual input either.
…the overwhelming majority of our communication and collaboration regarding software developing is written/verbal, not visual. That is, we’re not shipping pictures back-and-forth 24/7—we’re chatting on mailing lists, IRC, and blogs to get things done.
However, I do wonder whether the dominance of text-based communications in software development will continue as tools like inkboard (collaborative Inkscape) continue to be developed, or if an (initially secondary – possibly only within a subculture at first) alternative, more graphical/auditory discourse will start happening. The parallel for me is podcasting and vlogging. They haven’t replaced forums and mailing lists in general online discussions yet, but they are definitely a presence that I grow increasingly more disadvantaged for having to ignore.
Well, mostly ignore. Strictly speaking, I do have the advantage that I can catch some audio, and that I have friends who’ll sometimes take the time to write a video summary for me, or sit next to me while a podcast is running and re-mouth the words so I can lipread them, but for most practical purposes, that’s like saying that publishing documentation in Tamil should be entirely sufficient for English speakers because of the presence of Google Translate. It takes a lot of extra conscious effort, the availability of specific tools and helpers, a lot of extra time, and much is still lost in translation, so it’s usually not worth the investment to even try.
I find it fascinating to see how other people adjust and hack inclusion into a world that often doesn’t assume them in its default case. At least with open source I get to hack on things – and with things – that give me the freedom to shape them into what I need (yay visual system beeps!) but the burden’s still on me to do the shaping and the constant reminding of others that I need accessibility to the things they’d like me to contribute to (for instance, project meetings by phone virtually guarantee my silence). At least the burden here comes with the tools I need in order to assume it. (Mostly. We could do better, but that’s a longer post.) And I’m glad projects like Sugar try to make themselves more-hackable-by-default.
*re: “deaf” – I’m trying to get used to being able to use this word as well, though I can hear some sounds (my hearing loss is classified as “severe”) and grew up mainstreamed in the hearing world (with lots of hacks). It’s a cultural adjustment that I’m consciously learning (with tremendous latency and deep discomfort) to make.
Thursday, November 19th, 2009 | fedora, olin, sugar, teaching open source | 1 Comment »
The perfect is the enemy of the good. Instead of entertaining grandiose thoughts of posting a transcription of my talk with the slides nicely set inline, I should just start by putting out the slides themselves…
The Invisible Traceback: blockers that make potential contributors drop out (and how to fix them) – This is the talk I gave at the Ontario Linux Fest. The slides make a lot more sense with the accompanying narration, but questions are welcome, and I can always come back in and fill in the remainder of the transcript at Some Point Later.
Abstract: Unix Philosophy #12, Rule of Repair: “When you must fail, fail noisily and as soon as possible.” This applies to both code and culture; when someone gets stuck and hollers for help, they are helping their community find and fix a participation process bug. However, the new contributor on-ramp pipeline is particularly tricky to debug; potential participants often struggle in silence, giving you no indication of their presence, let alone why they were unable to begin working with your project community. We’ll go over some common blockers that quietly prevent students (and other new contributors) from beginning to participate in open source, and how to fix them no matter who you are.
Tuesday, November 10th, 2009 | fedora, olin, sugar, teaching open source | No Comments »
For those interested in open source in higher education…
The Teaching Open Source Summit (TOSS) and the Free Software and Open Source Symposium (FSOSS) it was a pre-conference to have finished, and notes are up from both the full day of TOSS and the TOS session at FSOSS, replete with plenty of whiteboard pictures. Thanks to everyone who helped with notes, from IRC backchannel transcription to whiteboard scribing to photographing to transcribing notes to editing the wiki page, and everything else that’s going to be helpful for posterity.
Here’s one of our whiteboards – the link to the notes has many more. This one is the “what is needed?” project voting board.

Now it’s off to the mailing list to see what happens next.
Friday, October 30th, 2009 | fedora, olin, sugar, teaching open source | 2 Comments »
Here’s a dialogue I’ve been hearing – and participating in – a lot recently. (Well… the ideal version of it. It doesn’t always quite go this well.)
Enthused newbie: I’m coming to care a lot about $foo.
Old-timer: I’ve cared deeply about $foo for many years.
Enthused newbie: I’ve been noticing… $foo is… broken. I mean, look at $bar and $baz happening.
Old-timer: Ayup.
Enthused newbie: And I was thinking, maybe we could… fix it, if we did $frobznit.
Old-timer: Ayup. You know, when I was younger, we tried something similar you might be interested in – look through these archives at $frozbnit, it might help you think about $frobznit.
Enthused newbie: Wheeeeeeeeeeee!
Old-timer: I’m deeply grateful $foo is in good hands.
The funny thing is – I see this most clearly two conversations, but from different sides on each. In Fedora and CommArch and Red Hat and that part of my world, I’m very clearly the enthused newbie. At Olin, when the current students talk about reshaping the school, I’m the low-pass filter, the old-timer, the “who the hell are you?” passerby.
The flipping back and forth is odd, but valuable in making me see things from more perspectives – I can actually feel myself gaining the ability to be a low-pass filter, and choosing to do once in a while. Here’s an email I sent out today; it’s the best expression of something that’s been weighing on my mind for quite some time. (In response to an email thread to the effect of “the curriculum revision of ‘06-’07 took a lot of work and fizzled out without results, since we can’t name a single thing that changed; time for a reboot!”)
I feel like such an old fogey saying this, but I think it’s important, so I’m going to do it anyway.
The process was a ton of work, generated a lot of talk, and left results behind. It’s our ability to use those results today that’s fizzled out. Subtle distinction. We aren’t broken; the past’s results aren’t broken; the two are just no longer compatible. That’s all.
The past has worth. Even if it leaves no physical trace behind, things that happen with a spirit of thoughtfulness and openmindedness and bravery have results. Not being able to capture that value now doesn’t mean it wasn’t valuable then – just that the ability to actively use that value is now past. Not being able to wear your winter jacket from 4th grade today doesn’t mean it didn’t keep you warm when you were younger. Honor the fact that the jacket did keep you warm, and acknowledge that it’s time to go get a new one.
I feel like sometimes we don’t do the first enough. The thing we’re trying to change now was once a new, exciting change itself. 2007 wasn’t all that long ago; 2 years from now, the next couple rounds of Olin students will be running full tilt at the changes they care about. And this is awesome. This kind of perpetual dialogue is part of what it means to be continuously reborn. The the continuation of this discussion “after so many years” is not a failure; the ceasing of this conversation would be. This constant trying-stuff and figuring-out is how we renew our practice; this is how we continuously make this making-of-a-school thing mean something real to us as individuals, make it something we care about. Love is a verb in the present tense, not a static noun.
I can point to something I recall changing because of the curriculum review; myself. My way of thinking, my relationship with Olin, the way I do things now – without the curriculum review, they wouldn’t be the same. And yes, I’ve graduated, but not everyone from that time has – and alumni are still part of the extended Olin family, as we go out and change the world and all that good stuff. And yes, the changes in my brain are not that useful to the current frosh – that’s what I mean by results being existent but non-harvestable, and that’s why I’m heartened whenever discussions like this come by on [this mailing list].
Is this wisdom? It doesn’t feel like it; in saying this, I’m also exploring new territory, struggling to express the things I’m thinking and feeling; this isn’t something that I know. But if I flip back to my younger self and read this, I think whoa, I learned stuff in the past two years. And maybe that’s what wisdom is; that increased accumulation of experience and the ability to step back from it to get a better look. Right now, it just feels like… life. Don’t get mired in the past; look at it when it helps you figure out what to do in the present to make the future that you’d like to see. (I do hope that they reboot! It’s out of my hands, as it should be, but I do hope it happens, for what it’s worth.)
I wonder what I look like to them. And I wonder what it looks like for people looking at me from the Fedora side.
Right now, I need to sleep so I can wake up for a 5am meeting. I got about an hour and 15 minutes of sleep today because of travelage (sleep 1:15am, wake up 2:30am for a 2:50 shuttle to a 5:25am flight that… got delayed over an hour, dammit) so my brain is getting fuzzy around the edges. Bedtime now.
Sunday, October 11th, 2009 | fedora, olin, teaching open source | 1 Comment »
To the current Olin students who’ve discovered my old blog posts: the comments are even better. Pay particular attention to Kim’s note, as at the time her class was the only batch of alumni out in The Real World.
Commenters in order:
- Nikki Lee ‘10
- Boris Dieseldorff ‘09
- Matt (I don’t recall which Matt, but I think this was someone from either ‘07 or ‘08)
- Mel Chua ‘07
- Kim McCraw ‘06
- Matt (Colyer ‘07, I think)
- Marco Morales ‘11
- Hari Iyer ‘11
- Mel Chua ‘07
I think that “who we are and what Olin stands for” is one of those $\sum_{olin=c/o’06}^\{olin=c/o’\infty}smartness \ggg smartness-of-any-individual$ (translation key for the non-LaTeX-initiated) things. Thanks to Hari for bringing this up, and to everyone on Thinktank for reminding me of why I love my alma mater; the phoenix is in great hands.
Sunday, October 4th, 2009 | olin | 2 Comments »
Thanks to Greg DeKoenigsberg for the reminder and most of the letter text!
The Open College Textbook Act of 2009 – read it, go “DUDE THAT WOULD BE AWESOME,” and then go bother your senators to pass it. To make it as easy as possible for most of the people I know (students and recent grads in Massachusetts) to do so…
If you live in Massachusetts, your senators are Paul Kirk and John Kerry. For the latter, that link will take you straight to Kerry’s contact form, and it will take you less than 30 seconds to copy-paste the below letter into the little box and click the “send” button. (Current students may want to delete the “As a recent college graduate” sentence clause at the start of the 3rd paragraph, but I wrote it so you could do that and the capitalization and grammar would still work if you did.)
Paul Kirk does not have electronic contact information that I could find. The link I listed above contains his phone number (it’s 202-224-4543), so you can call him now and say “this is <your name> from <city>, Massachusetts; I’m calling to ask Senator Kirk to support the Open College Textbook Act of 2009, thank you!” and you are done. However, I know how hard it is to break out of one’s computer-happy flow state even for something like a phone call, so: if you post your name and as much of your address (city and state should be sufficient) in the comments below, I will print out and mail a letter for you. Or rather, I’ll add your info to the bottom of my printed letter, resulting in Sen. Kirk getting one letter with a bunch of names and cities on it. Not as great as a lot of letters, but at least it’s something.
What are you waiting for? Go! Go!
Dear Senator,
I’m writing to ask you to support the Open College Textbook Act of 2009.
In particular, I would like to call attention to the text of Section 5a: “Notwithstanding any other provision of law, educational materials such as curricula and textbooks created through grants distributed by Federal agencies, including the National Science Foundation, for use in elementary, secondary, or postsecondary courses shall be licensed under an open license.”
As a recent college graduate, I’ve experienced firsthand the great things you can learn from textbooks, as well as the financial sting it currently takes to obtain them. As a student, I was told that someone had to pay for textbooks to be written, and if you wanted to read them, you should pay for them. As a taxpayer, I am already funding the creation of educational materials – and I’d like to read them. If the public pays for something, the public should be able to use it; I want to be absolutely certain that those materials are placed into the commons, where everybody may make use of them.
I think this is a great bill, and long overdue. I hope that we can count on your support when it comes time to vote on it.
Thanks for everything you do for Massachusetts.
Friday, October 2nd, 2009 | olin, sugar, teaching open source | No Comments »
Emma Jane Hogbin had a great idea: do you want to see more $FOO in technology? Make a little scholarship for it.
Having recently transitioned from starving-intern to full-time-employee status without much of a corresponding rise in standard of living (…well, a little – I might buy my dad’s 16-year-old car so I can get to and from the office), I now have the ability to help the things I love financially as well as with my copious amounts of free time. And this seems like as good a place as any to start. I’m thinking something like $500, which seems both low and high to me; it’s “zomg a month of rent” high, but “pays for 30 minutes of college credit” low, just as a strawman for the time being; could go up, could go down, will probably multiply to cover several scholarships…
I don’t know how to go about thinking about this, so I’m hoping people here will be able to help me come up with a good design. I’m thinking mostly of my elementary, middle, and high schools here, but I might want to look at schools in the Philippines as well. This may take another year or two to figure out and put in place, or it could take a week. It all depends on the design parameters.
So… help me brainstorm! You’ll notice that I’m placing a high emphasis on follow-up and community support in addition to the $$$ (because I don’t have much $, am not used to thinking about $, and frankly, because I believe the real value of a scholarship/fellowship is the mentorship and not the money). Here is what I have so far. (Note that for each of these, I have a teacher or mentor in mind that I would want to name the scholarship after…)
- A middle school award for “creative use of open source tech” (for girls?) which gives the recipient a “high school fellowship” – in addition to the little scholarship, every summer between 8th grade graduation and when they start college (and they will start college if I have anything to say about it…*) I’ll work with them to figure out a cool (open source) project they want to do, and either mentor them through it or find someone who can. Thus, by the time they apply to college, they’ll have adult mentors who can vouch for their work, a kickass portfolio, and a bunch of folks (myself included) who can help them with their college essays. This one I know I can afford; I can always make time to mentor young people.
- A middle school or high school award for juniors, for “hacking your own school.” (Yes, better wording needed.) Who has worked to improve and modify their own learning experience in a way that works with (rather than against) their teachers and administrators? “Could I modify this assignment? Could we try X? Could I teach $name Y?” rather than “I’m not doing this assignment.” (How in the blazes do you measure this?) In addition to the little scholarship, these students (I’d either like to give multiple awards or make this a group award) will get funding and support for running a “teaching open source” unconference during the fall of their senior year of high school, because I think that Glenview, IL could use an adrenaline shot of hacker spirit, and because it will be a kickass thing to list for college apps. Seriously. Kickass. (One could easily see Sugar fitting into this, btw.)
- A high school award for “teaching open source” in the Philippines. For high school (or maybe first or second year college) students who demonstrate a dedication towards learning about open source and teaching it to others, a partial college scholarship and funding to organize a FAD sometime during their first 2 years of college. (Again, how do you measure this? And how much is this going to cost me? And how do I target Filipino students – do I go for one school, probably one from my family’s hometown? Do I look at OLPC deployments (which would be countries-that-aren’t-the-Philippines, unless eKindling changes that) and try to find a student from there? I don’t know!)
*unless they make a good case for why they want to do something cool that isn’t college – I’m all for that as well. I just want to make sure that it is an “I have something better to do!” decision, not an “I couldn’t possibly make it” decision.
I don’t want to overreach here; I recognize I’m far too eager at the moment (not just enthusiastic, but let-me-not-think-things-through-wheeee!-eager), which is why I’m stopping to ponder rather than jumping into immediate action. First, I need to make sure that there are communities that I can bring these students into, and that those communities want these students introduced in this way. And then… how do I make absolutely, absolutely sure that I can continue doing these for however long they are expected? Do it year-by-year? Place a sunset clause (“I’ll do this for 10 years”) and set aside that money now? (I know I definitely don’t have enough to make a trust and have these operate off the interest, so that’s out.) Is there a better way to spend this money?
Hit these ideas hard. Where are the holes? How could they be improved? What other ideas do you have? College students, what would you have wanted? High school students, what do you want? Professors, what would you like to see? Open source community members, what do you think would help the most? (Do you want to start a little scholarship? Read the HOWTO!)
(Yes, Nikki; excited Mel is excited.)
Tuesday, September 29th, 2009 | fedora, olin, olpc, sugar, teaching open source | 8 Comments »