Archive for September, 2011

Hacking on copyright addendums


Some of you may recall my outburst of sadness regarding academic copyright assignment a few weeks back. Well, I’ve never been one to let the world just keep on bothering me without doing something about it, so with the help of ninja engineer-turned-librarian-turned-engineering-education-reseacher Amy Van Epps (who reminds me of my Olin classmate Bonnie Charles Tesch, just older and not into bioengineering) we’ve been looking into copyright addendums. These are tools that authors can use to vaccinate themselves against overbearing copyright assignment policies — the grown-up scholarly equivalent of “I’m rubber, you’re glue.”

Here’s how they work.

You: I have made something that I wish to share with the academic world via a peer-reviewed scholarly publication, because that’s what the people who I want to impact and influence value and read.
Publisher: Okay, we’ll publish it — but first, you have to sign this form that gives us all your rights forever.
You: I’ll do that and attach my counterform — this copyright addendum, which prevents your form from taking some of my rights forever, so I get to keep the ones I think are important. (For instance, I might want to release my work under an open license — after a certain period of time has passed, in order to be fair to you as a publisher.)
Publisher: <silence>
You: Aaaaaand I can take that as consent. Thank you!

“Awesome,” you say. “How do I get that addendum?” Short version is that right now you can go to the Science Commons copyright addendum creator and generate your own. Print, sign, copy, send. Done.

Longer version: so here’s the thing. This problem has been solved. There are already forms and documents out there that let you do this. They’re legally solid and institutionally endorsed, even encouraged by heavyweight research-publishing institutions like Purdue and Northwestern and UIUC (we have our own versions of such addendum documents).

But nobody knows about them. Not even the faculty at those institutions. Furthermore, copyright addendum forms are usually written for academics and assume you’re already knowledgeable about academic publishing and the copyright issues therein. But really, how many of us are?

I want to see an addendum and supporting materials geared towards free culture people who may or may not be academics, but who want the scholarly world to hear what they have to say (for any reason), and to work on getting people — particularly students and faculty interested in participating in open source communities — aware that they can and should keep their freedoms to share their work, because I have spoken to so many academics who have gone “oh, I wish I could open-license my work, but academic copyright won’t let me…”

Folks, they may not want you to, but if you take the right steps, they can’t stop you.

(Or at least I’m putting my own academic career on the line from the start on that hypothesis, and feel like I have solid backup.)

So. Action steps.

If you’re submitting something to a conference/journal/etc and get a copyright assignment form to sign, please consider looking at that copyright addendum and seeing if it’ll be useful to you to include that stapled to the back — it takes 5 extra minutes to keep your rights to making your own work open and free and accessible to others.

If you’re from the open source and open content world and want to learn more about what academia’s been doing to reform academic copyright from the inside, check out the folks at SPARC, who have been working on this thing for years. (Hat tip to Amy for the pointer — she’s a wealth of information on this stuff!) If you’re from the academic world and are curious what open content and open source folks have been doing, see Question Copyright and Creative Commons and Freedom Defined.

And if you’re interested in working on this sort of thing, or already working on this sort of thing, please holler.


The unexamined life


Writing builds up in me like charge on a capacitor plate when I don’t do it — even if I write for myself, there’s the sense of falling behind, of missing things. (Thank you,  perfectionism.) I know that catching some stuff and keeping up the steady beat matters more; if I think blogging is worthwhile, I ought to build it into my day now that I’m no longer at my computer the entire time. I’ll need to figure out when, though.

Catching up with things a bit…

I live two hours from my old high school now. I’ve started to reconnect, slowly, with people from there. I’m still trying to find out where everyone is, so if you knew me from IMSA, I’d… love to get in touch. Sometimes we move so fast we lose each other, and it’s a joy to find that again.

Along the same theme, I went to the first Olin reunion this weekend and had a wonderful time seeing old friends and family again — learned more about college finances, joined yet another reading group (thanks, Steve!) and geeked out with old professors about education stuff for far too short a time. I also enjoyed following Sebastian through a Sunday evening on campus; he and a group of friends regularly meet for dinner followed by pool. He’s getting pretty good — we’ve both improved dramatically since January 2009 when we first played each other at FUDCon Toronto. After getting us creamed in the first two games, I managed to perform respectably enough to win 5-person cutthroat in the final round. I’m  looking forward to next year’s reunion, and we’re hoping to get more alumni-student  interaction into that one; this round was awfully segregated, and apparently at least some  of the students felt it too.

Reading. A lot. Qualitative research, education research… I thought I knew how to think about teaching and learning, but I’m really an engineer who can talk to education researcher rather than an education person myself, and the training of thought into these new paradigms is blind, painful, wonderful. (Caryn Park did a great job of ripping apart my first qualitative research designs on Saturday. Ouch.) Right now I’m just going for massive input, trying to read every single JEE (Journal of Engineering Education) paper posted online before FIE, which is in two weeks. This isn’t as bad as it sounds; they’ve only put the past 19 years online so we’re talking fewer than 1000 papers.

I’m struggling through reading dissertations (ouch), books (better), and have been finding myself looking at technical books and papers I once considered difficult and marveling at how easy they are; my tech and math skills have atrophied compared to my teenage self, but at least I’m used to thinking in those patterns. Reading education stuff, philosophy, ethnography… it’s like a foreign language. I don’t know English any more. I need to take breaks every several pages and do situps on my living room floor to blow off the I don’t know what’s going on!!! frustration-steam. I love it. In addition to reading for four classes I’m taking and one I occasionally audit, I have two book groups and am now going to try
keeping up with the readings from Olin’s pedagogy class as well.

A humbling revelation: the undergrads in Olin’s pedagogy class have to read more education papers for one class in one week than I need to read for all my classes for one week, and I’m getting my degree in this.

More than ever, I am coming to understand the pressures and the environments that make it so difficult for academics to spend time with open source, and I’m crumbling to the same pressures myself; I’m no longer on IRC, I do more private backchannel, I don’t have or create time to step into the FOSS universe because the academic universe is so… all-encompassing. Disturbing; I didn’t think it’d happen to me so fast, so quietly. The good thing is that I’m starting to realize this a month into grad school, so there’s time and space to figure out what’s happening and take steps to restructure the way I’m doing things if I do want to change that.

My declared research concentration at Purdue is “open source and education,” and that’s how my classmates know me. I go back and forth between my work on that being the (awkward) beginnings of a solid contribution to a revolution… and a bunch of bullshit buzzwords with no substance and no hope for making a difference. I know intellectually that if it were easy to bridge the two worlds it would already be done, but…

The early bridges are shaky and difficult to spot. My Red Hat team has spent years talking about “the open source way” without solidly nailing down what it is, and this bothers me to no end. I’m trying to solidify that, crawling painfully through papers and dissertations trying to understand research methodologies, throwing my own definition (radically pervasive, collaboratively constructed, realtime transparency) against as many walls as possible to find out where it’s wrong, and sometime I feel like I’m getting somewhere, but mostly I feel like nobody else is really going to give a shit, because this sort of research and solidification takes too long, falls outside the scope of timelines that FOSS communities and corporations care about; it is the movement of tetonic plates under the deep, deep sea, and sometimes I feel like I’m the only one trying to learn to think this way about this topic, and that I must justify myself to many different worlds and fall short in all of them. I really could use some arrogance and certainty right now, but I did ask to be placed in the position of greatest learning at all times, so… here I am.

Existential crisises: what’s the value of TOS, the value of POSSE, would it make a difference if they vanished, can they make a difference 20-25 years from now if we keep plugging, is it worth it? I’m trained for sprints and quick wins; I can’t see the longer timescale yet, I can’t sense it intuitively the way I can quickly grok how to build momentum on the vast majority of FOSS projects after a little bit of poking, and I wonder if I’ll ever grow into it.

The pieces haven’t come together yet, but that’s okay.

My writing is scattered and long right now, and so am I.


An attempt to sort out loneliness


I am relatively unfamiliar with the experience of loneliness; allowing myself to feel is still a novelty, and it is easy for me to be overwhelmed by things not of the intellect.

That isn’t good enough. I must learn more. So in an attempt to make sense of things, I often write them, stepping back into a careful description of not why, but when and where and what. Sometimes I find I have mislabeled them. Sometimes I find I can control them or myself. This one has stymied me, so I will try again.

This is what it feels like to me, the thing I call loneliness: elbows shoving into the middle of my diaphragm, rising up to grasp my sternum from below and gouging into my chest with it, crushing down and in, so a tight sadness weeps into the tissues, pools and swells them. A strong grip, with the rhythm of slow thunder, deep shakes in massive waves, again… and again… and again.

It is not hard to breathe, but it is hard to breathe. It does not hurt, but it does; I can brush it aside, put it away, push through, but it stands there, a ghost, substantial.

It does not mean my days are idle or my work slower or the company I keep inadequate; it can exist simultaneously with great happiness and great contentment, and I am happy with school, in school, happy to spend some weekends with my cousins and my parents, happy to have my own space (actually the first apartment I’ve been truly fond of, though it isn’t perfect — working on it!) and life is good and I am proud of it.

I miss community, a common hangout space; I’m working on building and finding those things physically here, and could rejoin my late-night online haunts, though there is less that ties me there now for whatever reasons (possibly fixable). I miss teamwork, having a band of brothers and sisters to rely on, and who rely on me; so much of my work now is individual. There are things I can do to rebalance that, and I should look more into that. I miss people, so I have started writing letters; sometimes I get replies, and that feels good.

There’s no quick fix. You build these sorts of ties and threads slowly in life, and too often I have been running and rebooting because that’s easier short-term. And there’s no long-term fix, either; no matter how blessed you are with people around you, there will always be bouts of solitude, even in the midst of those who know you best.

What I’m trying to learn is how to sit with this tension and this discomfort, how to blend with it and let it go, and what to do.


Cape Town Open Education Declaration


A few years ago, the Cape Town Open Education Declaration came out. It seems almost ho-hum to read it now in late 2011, but back in September 2007, having a group of educators – not just hackers who were already immersed in FOSS culture, teachers and administrators and government officials - come together, not in the US or Europe where FOSS is most prevalent, but in South Africa – and declare that open education content, hardware, and software were vital to the future… that was pretty big stuff.

Of course, there were spoofs (this one by David Berry) criticizing the declaration for encouraging Large Evil Capitalist Machines to Exploit The Light Of Free Knowledge. However, I agree with David Wiley’s response (also read SJ’s reply). To make something “free,” it’s got to be free to all – including corporations and those seeking profit. As long as the knowledge itself is out there, it’s up to anyone who wants to do something with them – because while ideas do change the world, they do so through the actions they inspire, empower, and inform.

I bring this up again today for two reasons:

  1. On the “Exploit The Light Of Free Knowledge!” front, I’ve spent more time than I’d like recently explaining things like NonCommercial Clause Considered Harmful to people. I know it’s scary, but when you commit to going open, you won’t get all the benefits unless you go all the way.
  2. Sometimes, when we’re staring seemingly impossible problems in the face, it’s nice to be reminded that we have changed the world, and much faster than anyone ever expected. We’ve changed it so quickly and so much, in fact, that oftentimes we forget we’ve changed it at all.

Triple-booting Linux: Bahasa geek translation


Note: I originally wrote this post in January 2008, and my setup (and all three distros) have changed considerably since. The original motivation was, as per my notes, “so that people with little/no Linux experience can still understand what I’m doing – if you fit that description, I’d much appreciate a comment on how well it works, and what things are still confusing so I can clear them up.” Other than this intro, the rest of the post has been left untouched, and is… at least for me, an interesting time machine. In less than four years, we’ve come a long way.

I wanted to triple-boot my laptop with 3 Linux distros so that I could separate my work from my development from my play – Ubuntu, Fedora 7, and Gentoo, respectively. Now, I’ve been using Linux for about 7 years, and dual-booting with Windows for half that time. But triple-booting distros ended up taking me a long time to figure out, even if it was actually simple in the end. Here’s why.

Partitioning

First I had to partition my hard drive. This means I had to split up my hard drive into sections so each distro could have its own place to play – plus a shared partition (mounted to /home) so I could keep my files and folders accessible and common across each OS. Four partitions – Ubuntu, Fedora, Gentoo, and home. Not bad. My hard drive is 120GB, so 10GB seemed like a fair amount to give to each distribution, leaving 90GB for files (way more than I need at the moment).

But wait – I needed a swap partition. Swap partitions are used by your computer as “extra RAM” – when it’s got extra stuff kicking around actively that it wants to stash somewhere and the RAM is out of room, it goes in your /swap partition and makes things seem a lot faster. (In some distributions, including Ubuntu, you can use a swap file, an ordinary file in your hard drive instead of a whole separate partition, for the same purpose.)

Okay, so I’d make one swap partition and share it across all three distros, right? Nope. Ubuntu needs its own swap partition (not a swap file) if you want it to be able to hibernate. Since I often get interrupted in the middle of work and like being able to have all my open windows, running apps, etc. automagically restored, I like hibernate. So I need two swap partitions, one for Ubuntu and one for Fedora and Gentoo to share. They recommend that your swap partition be anywhere from 1-2x the size of your RAM; my laptop has 2GB of RAM, so I decided to make 2 swap partitions, 4GB each.

Problem: 3 distros + 1 home + 2 swap = 6 partitions. A device like a hard drive can have a maximum of 4 partitions. (I’m not sure why.) I found this out when I tried to write the partition table and my laptop began shouting that the 82 GB I hadn’t yet allocated was “unusable space.”

Extended partitions

The solution? Use extended partitions. In the Ubuntu installer, this meant manually partitioning (which I was doing anyway, instead of the automatic allocation the LiveCD makes for you) and making the last 3 partitions “logical” instead of “primary.”

I’m told there is no difference in speed and functionality, from the point of view of the end-user, on primary vs logical partitions. The only difference is that on the actual hard drives, logical partitions are “nested” inside a primary partition.

Learned something new today.

And if I thought my triple-boot adventure took a long time, I can only imagine how long it took this person, who chainloaded grub to boot… 100.


Girl or boy?


The scene: dinner at my aunt’s house about 2 years ago. My then-5-year-old cousin is sitting in front of her plate, counting in a (failed) attempt to substitute an “educational activity” for vegetable consumption. In this case, she’s categorizing everyone at the table as boy or girl, and keeping tally.

I have a new haircut, and it’s short. The tiny finger goes around the table, points at me. Its wielder frowns, obvious confusion growing on her face. “Girl or boy?” she finally asked. “What do you think? How would you find out?” I said, fighting the urge to laugh.

She considered this. “What do you like to do? Do you like to do things that boys don’t like to do?”

“Well, let’s see. I like… computers, and technology, and math, and climbing trees, and engineering, playing jazz piano, learning how to punch things… um, this may not be the best list… but lots of girls like these things too, and lots of boys like them.”

“Do you like doing things that girls like to do?”

“Everything I just said is stuff that sometimes girls like to do and sometimes boys like to do.”

The pause of a small child pondering experimental methods. Then:

“Do you have breasts?”

The entire table cracked up. I was wearing a zip-up polarfleece jacket that effectively obscured my body shape (which is pretty slim and androgynous in any case). My cousin looked at me for a while, considering. “Nope,” she decided.  (In between bouts of laughter, her mother explained that people of both genders did, in fact, have breasts, that her daddy had breasts, that some men could actually be fairly well-endowed – just look at statues of the Buddha – and so forth.)

This went on for a while. Finally, exasperated, she threw up her hands. “So, boy or girl? How do you tell?”


How to build momentum in an academic hackerspace


Very lightly edited email to a friend who asked about building momentum in a new academically-based hackerspace, posted here in the hopes it might be useful to others.

First, timing. You wrote your email midsummer — I’m not sure how much that has to do with it, because summers are usually planned in advance (in a university context) and it’s difficult for a substantial chunk of people to add in new commitments mid-cycle. Now it’s the start of the school year, where everyone’s having their callouts — probably easier to pick up new people (but also likely to have a high washout rate the first few weeks).

Also make sure that — if you don’t already have this — your space has a drumbeat that’s extremely visible. The spaces we’re in have a rhythm; when we build spaces within a space (groups/clubs/labs within a university, in this case) we also need to set a rhythm — it’s calming, reassuring, lets people know things won’t disappear if they look away, lets them know they can come back later. (You may not see upsurges in participation until year 2, 3, 4, when people go “ah, yes, they’ve been around long enough that they’re not going to go away; my time invested there won’t be lost.”)

Transparency. Allow people to eavesdrop on your activities and thinking as much as possible without revealing themselves unless they want to. For instance, blogging (one common way folks do this) or having an in-space computer dedicated to a twitter account anyone can walk out and shout out things on — new projects and notes and quotes stuck up on bulletin boards around the space keeping the news and “who’s working on what” info a fresh stream, making accidental connections more likely. Become a journalist; interview people, post their notes and quotes and work up, connect them with others.

And be visibly messy and incomplete. For instance, if you’re blogging, blog about confusion, dead ends, open questions… let folks watch the others in the space struggle, instead of only putting out perfect projects. Put out mistakes — not just because it helps others help you fix them, but because it also reassures them that they don’t have to be perfect to jump in, that y’all ask questions that are as “stupid” as the ones they have.

Bar to entry — you may have come across the term “legitimate peripheral participation” — look up the wikipedia article on “Communities of Practice” if you haven’t checked out Wenger’s work already and you’ll likely get a kick out of it. Folks can’t necessarily easily add new commitments mid-cycle, so how can you make the commitment barrier lower, how can you get it so they can make a visibly meaningful contribution in 5 minutes with no further obligations? Think of how — I think it was in my interface design class that we had a discussion about how good unsubscription, warranty, reset, etc. policies up-front encouraged more people to buy, install, etc. More people will make longer-term contributions down the line if they’re initially reassured they don’t need to make commitments — instead, the little contributions (with no further obligation) add up until you look up one day and go “wait, I’ve been there every Thursday for the past 7 months!” So maybe experiment with not allowing people to make commitments, somehow. Design things so that they can’t be continued, and see if that subtle psychological effect pays off.

Leaving things undone — sort of a corollary to the mess. Don’t finish things! This will be painful. Publicly, deliberately, abandon something that’s 90% complete when the 10% to finish it is so obvious, so easy, and will make such a dramatic difference to the finished product — and cheer loudly when someone discovers that, finishes it, and give them lots and lots of credit. A few times, do the slog and let somebody else do the glory — give them that adrenaline rush and get them hooked, then show them how they can do the slog and become more independent and able to get that glory moment without relying on you. Start things and don’t finish them, and be a squeaky wheel about the opportunities — and make sure that those opportunities are really the fun parts, the cool stuff, not “can someone else do the slogwork for me”?

Have lots and lots and lots of individual interactions with people. Private ones, before public meetings. Prime the pump. There’s a tactic you might know for bringing up a controversial proposal at a meeting — you have individual talks with each other representative about that topic, before the meeting — and then at the meeting, you let them talk about your topic. Oftentimes the stuff you’ve talked with them about will pop out, and they’ll own those thoughts as their ideas. Same thing here — if you talk separately to a bunch of people about how their interests might hook up with each other, about the sort of atmosphere you’re trying to create at the gathering, and then actually bring them all together in the room, that dynamic often does end up actually happening.

Amplify what folks are already doing, already interested in — instead of “start this new project with us,” look for “hey, you’re working on foo, would $thing-we’re-doing help with that?” Point out how participation would add to their existing work with very little effort, rather than how cool this new thing is (yep, it’s cool, but most folks don’t have time for another item in their lives no matter how cool it is). Get folks to perceive it as something they already are/do/have. For instance, “You’re teaching freshman electronics next semester, right? Well, Tanya is doing an Intro to the Lilypad thing next week and she’s got a fun way of explaining what the different components do, that you might enjoy — want to come?”

Hope that helps.


Cheese vs Ekiga for Software Engineering class: responses to student notes


I’m looking forward to meeting Western New England’s CS 490 (Software Engineering) class tomorrow morning. A small group of students led by POSSE professor Heidi Ellis are spending the semester diving into… well, that’s the debate right now, actually. It’s a toss-up between GNOME Cheese, a Linux desktop webcam app, and Ekiga, a cross-platform softphone, and the question is which project will be most valuable for them to dive into given the limited span of a semester.

Before we all pile into IRC tomorrow morning (9:30-10:30am EST, #teachingopensource[0] on irc.freenode.net if you’d like to join us) to debate the advantages and drawbacks of looking at one project over another, I wanted to take a moment to highlight and respond to some of the things the class already noticed in their first assignments. At the request of Dr. Ellis, I’ve kept the student names anonymous for this round. However, CS 490 folks: you’ve got good things to say, and I’d strongly encourage you to get a blog and own and claim these thoughts publicly! It’s a good way for prospective colleagues to see how you analyze and think about software (and life).

All right, let’s begin.

Inspired by Apple’s photobooth application, [the] project came about as a result of the Google sponsored Summer of Code program in 2007.

The program is optimized to work for the GNOME desktop interface and states that the newest version of Cheese requires GNOME version 3.

All of the downloads are Linux kernel compliant only. No version of the program exists for Windows or MacOSX systems.

You’ve noticed a few things already. First, Cheese is a GSoC (that’s how you’ll often see “Google Summer of Code” abbreviated online) project, meaning it was started by a student like you — there’s nothing magical or elite about open source participation. Like anything else, you get good at it by doing it. Congratulations on starting to do it, and welcome to our world.

Second, you’re looking at a potentially tiny user base. Only a small portion of the computer-using population runs Linux as an operating system, and although a large portion of that population uses GNOME as a desktop, you’re still talking about a tiny number. The mention of GNOME 3 narrows the playing field even further; GNOME 2 and GNOME 3 are massively different, effectively a full-scale re-envisioning of the GNOME user experience, so a good number of GNOME 2 users haven’t yet switched to GNOME 3 (which came out just last spring) and wouldn’t be able to use Cheese releases going forward ’till they do.

You’ve inadvertently uncovered one tough choice developers often face: which platforms will they continue forward development on? Do you spend your time supporting legacy systems so that more folks can continue to use your software, or do you spend your time developing cool new things, but for a potentially smaller number of people? Sounds like the Cheese developers have picked the latter. (The former is a great way to make money, by the way: you’ll be amazed at how much businesses will pay to be able to use new stuff without changing their old systems.)

My first goal was to install cheese and to get it to run to test it out from a users stand point. Before I could download Cheese, I had to get an OS that supported GNOME… Once Ubuntu was running and Cheese was installed I found out that my laptops drivers for the web-cam were not working in Linux. After sometime looking for a solution to my problem I was only able to get a black picture to be displayed in Cheese.

Yup. Learn from that experience. Frustrating, isn’t it? Make sure this never happens to your users, or that if it does, they know how to get in touch with you. But remember…

[Project founder] Siegel also states in an interview (admittedly from 2007) that IRC channels and mailing lists are a good place to communicate with developers – however the IRC channel information doesn’t seem readily available unless asked for in email.

…a lot of your users may not use IRC and may not want to subscribe to your mailing list. And think about the future: you found (and relied on) a 2007 interview; what if the links and methods that interview referenced had been broken, incorrect, out of date? (Maybe they are!) Make sure legacy stuff has a trail you can follow to the up-to-date versions of things.

On a different note, I found it interesting to see how various people interpreted development trends.

The latest version (according to the [Cheese] project site) is version 3.0.1, which was released on April 26th, 2011. The release dates for the previous versions seem fairly spread out, and a new version hasn’t been released for a few months. This could indicate a decline in use and development activity for the project.

Overall Cheese seems to be a project nearing the end of its development life and just needs the occasional update for minor bugs or features that get added.

Recent releases of Cheese showing that the community are showing interest in this program are growing stronger by the day. The time frame for an update was about 1 month, and now it down to 11 days.

There’s no one perfect metric for the health of a community. Is a project with a smaller number of active developers “healthier” than one with larger numbers of contributors but infrequent patches and releases? You’ve got to think about what you’re trying to do.

For what you’re doing, which is “I want to get involved with my first open source project for a fairly brief period of time,” you’re probably looking for the project with the most responsive people. So the number of active developers may not matter, or even the frequency of patches… but perhaps it may make sense to optimize for how likely you are to get quickly mentored — are mailing list messages being responded to quickly? Do IRC channels answer your questions? These are things you can’t find out until you actually go in and try to talk with people in the project. A project may be silent but with a helpful mentor lurking in the background just waiting for new folks to help.

At the time of writing, I have been unable to access the Project’s Wiki site and FAQ’s where one would expect to locate developers information on how to get started and acquire the needed source code and development tools. Both sites are hosted by live.gnome.org, and as a result of this problem, I have been unable to find out more about the project from the community, or if there was an active IRC channel I could use.

One of the things we may want to teach you is how to get in touch with folks from a project to let them know about downtime, and to listen in on existing conversations about it. (They probably already knew, but it’s fascinating to overhear a project’s sysadmin teams chatter about fixing servers if you’re able to find their IRC channel.)

The project doesn’t specifically state the number of people working on it, but it does have a community and developer mailing list as well as a developer IRC, implying a moderate amount of people.

There is no available number of how many people are working on the project.

There usually won’t be a canonical contributor count. Does that make you feel a bit uncomfortable? Why or why not? Also, many communication fora does not an active project make. Look up Potemkin Village.

Cheese homepage is very liberal that it seems more of a blog oriented homepage while Ekiga is very organized and detailed that it seems more business oriented.

Ekiga also has a well-outlined community of mailing lists, IRC, which is impressive for a relatively small project maintained by only 8 regular contributors.

Despite being a small development team, the Ekiga team seems to have their act together when it comes to open source development and documentation alike.

Next, I went to Ekiga’s website to fill my curiosity on finding more about this OSS project. I was impressed with their organization and how well kept their website is while searching though it.

First impressions are important. How long do you think it took Ekiga to set up that page? An hour, maybe? Pretty much nothing compared to the hundreds and hundreds of hours spent writing code, filing bugs, and so forth. But it’s a vital hour well-spent, because it opened a (nice-looking) door to you in some way.

Unlike Cheese, Ekiga is still in its development phase of creating an up to date stable application with up to date features and security.

By the appearance of the two project websites, Ekiga is more organized and well on its way to not only a stable release but to a more complete program while Cheese is hard to tell where the project currently is from the point of view of the leaders.

Do be watchful, though, of the difference between “the project looks like” and “the project is.” Remember, the best-dressed person in the room isn’t always the smartest; sometimes to really tell what’s going on, you have to get down to the basics — don’t just look at what the website says about the people, find the people; don’t just look at what the website says about the code, find the code, run the code. Things may be worse than they appear. Or they may be better; I love finding diamonds in the rough and working with them to bring their project to a wider audience.

If you haven’t actually tried to install and run the product of the project you’re thinking of contributing to, STOP AND DO THAT FIRST.

Both programs have easy-to-find links to their respective logs in the BugZilla tracking platform, and both have an extensive number of bugs reported in various stages of resolution. One who wanted to involve him/herself in the development of FOSS projects via working on bug fixes could easily scan through one of these lists and choose an issue to work on.

A great next step would be to look deeper at some of these bugs — are they well-written? Can you understand the problem and how to reproduce it? Do you see why it’s actually a problem that affects a lot of people and needs to be fixed, rather than a minor annoyance the reporter should just live with? Do you understand the desired behavior of the program, what it’ll look like when it’s working? Can you get a feel for the sort of skillset and time commitment it would take you to tackle this problem? (“Needs someone to update this code from Python 2 to Python 3″ is far more specific than “Needs someone who knows Python.”) Can you find resources and mentors for the bits you don’t know?

Ekiga, formally known as GnomeMeeting…

[Ekiga] started around in 2001.

10 years is pretty ancient in the open source world. That’s a good sign if it’s still active; it means it’s filling a role in the software ecology.

Projects, particularly older projects, sometimes get rebranded and renamed for various reasons. It’s occasionally interesting to find out why — maybe there was a fork, and you may end up wanting to work with the fork instead of the “original” project because the fork fits some aspect of your work better. In any case, whenever you find an alternative name, it’s not a bad idea to search for things under that name as well; sometimes you’ll unearth previously hidden documentation, tutorials, and people.

All of this is done using a modern day GUI [in Ekiga].

The overall design of the [Ekiga] program is very similar to Skype in many ways.

This suggests a source of interface ideas and a good comparison for both feature development and marketing. “How are we doing in area X compared to Skype?” Then again, you may not want Ekiga to be an open source Skype clone. This is the sort of design decision that plays itself out not just over mailing lists, but also in code; if you want a software project to go in a certain direction, the best way to make that happen is to just start visibly doing it.

The contrast between the next two notes (from different people) made me smile:

A the time of writing there are 261 known, unsolved bugs for Ekiga.

As a project, Ekiga does not have many known bugs with only 4 noted by Bugzilla.

I’m not saying one person is wrong and the other right — but it’s probably worth the two of you getting together and saying “well, why did we come up with two different answers here, and which one should we believe?” Conversations to explore.

Finally by Egika posting the project leader names for the individual projects, it seems like it would be easy to contact the right people for whichever project you may assist with.

…if those names are accurate and up to date. Try emailing the listed names and see.

The business model I have noticed for Ekiga is donations. There is a list of several independent individuals who have donated hardware and money to the project, as well as a list of companies that have donated money. This, along with community developers, keeps Ekiga an open source piece of software.

So let’s try to take this one step further (leaving aside the question of whether “donations” is a business model — might be interesting to ask a business major what he/she thinks about that). What, do you think, motivates those individuals and companies to make such donations? What do they get in exchange? (Yes, some people open their wallets solely out of the goodness of their hearts. Most don’t.) Knowing those motivations, how would you (as an Ekiga developer) act in order to increase the amount of donations? You may also be interested in this essay by Mako Hill on the effect that funding has on a volunteer-based project.

Phew. Long braindump, I know. Thoughts? Comments? Looking forward to discussing this with folks tomorrow morning!

[0] We may not actually be in #teachingopensource tomorrow morning — we may move to project channels, etc. for conversation — but I (mchua) will be there, and can point anyone who pings me towards the conversation at that time.


Talk Slides: Level-up with Lies, Damned Lies, and Statistics


As promised, here are my slides from the 2011 Ohio LinuxFest. Many thanks to the organizers for inviting me to speak, and for putting together (as always) a most excellent event!

The talk was a nonlinear narrative; start with the Main Talk, then whenever you hit a slide that says “Let’s Play A Game,” branch out to one of the other talks I’ve uploaded with the olf-2011 tag. I’ve put all the slide decks below in the order of first appearance during my presentation. Everything is Creative Commons BY-SA, so feel free to remix and share.

Level-up Main Talk

View more presentations from Mel Chua
Possible branches when it’s time to play a game:

Talk abstract

Ever look around and think there must be something better than just going along with life, untracked and unaccounted for? I mean, where’s your scoreboard? Where’s your triumphant level-up sound after you complete a quest? Where the heck are those dang quests, anyway – and aren’t there supposed to be golden coins hanging in midair for you to jump into? Why isn’t your life as cool as a video game? When do you get your sword?

You recognize this. You want MOAR.

“Mel, if my life were like Angry Birds,” I hear you say, “my fitness level would skyrocket.” “Yes,” I nod. “Analyzing the differences between repeated attempts at various task setups with unpredictable results governed by defined rulesets would certainly get you in better shape – oh, and there’s a (FOSS) app for that.”

It’s not all about arcade games and pumping iron, either. How about RPGs like World of Warcraft – can quests, leveling-up, and building character attributes help you learn a foreign language? Or even Farmville – how can gifts, guests, and cute baby animals speed along your personal software development?

The answer is YES, good reader – and this quantifiedself-inspired talk will show you how you can do it all with FOSS, using everything from the arduino to identi.ca to the R programming language. Complete with live code demos and audience involvement in real-time quest completion, and possibly even a level-up in the middle of the talk.

Join us and take your first step into a MOAR EPIC, FOSS-driven life.

Speaker bio

Mel Chua is a hacker – of hardware, software, and FOSS communities, at various points in time – who studiously avoided video game addition for over a decade. Instead, she spent her time as a member of Red Hat?s Community Leadership team teaching professors how to teach open source. These were happy, productive days… a simpler time, a simpler life.

Unfortunately, Mel started working on her PhD in Engineering Education at Purdue this year, trying to figure out what effect FOSS participation has on students. This started her on data-tracking and led her down the dark, dark path to doom once she realized that scoreboards were way more entertaining when sound effects (POW!) and elaborate titles (LEVEL 198 STORMBRINGER, GUARDIAN of VALID W3C XML and KEEPER of the SACRED PYTHON MODULE) were involved.


Level-up with LIES: OLF talk sneak preview


I’m speaking at Ohio LinuxFest tomorrow with a talk titled Level-up with Lies, Damned Lies, and Statistics: Turn Your Life Into a Data-driven Video Game with FOSS. Why should you come?

  1. This talk has five slidedecks. The audience will get to choose when and how I use each one, resulting in some odd self-looping variant on Powerpoint Karaoke.
  2. I will sing solo in public for the first time in 13 years (when I had a bit part as radio host Bert Healy in my middle school’s production of Annie).
  3. The following picture is one of my slides.

Unlike previous talks I’ve done, I have no freakin’ idea how I’m going to capture this one for a future audience, because it’s so deliberately improvisational and nonlinear. If you have a video camera, please bring it and film! I’ll see what I can do afterwards.