We had a visitor at Georgia Tech today, alum Mike Terry, who has been studying the usability practices of open source development teams, like for Gimp, Inkscape, and Firefox. The short answer is, “There are no usability practices,” but that’s a little too pat. It’s a little bit more complicated than that, and actually even more concerning from an education perspective.
The folklore is that open source developers start because they have “an itch to scratch,” something that they want developed. Mike thinks that that’s true, but that scratching that itch doesn’t actually take long. Social factors keep open source developers going — they care about their developer community and working with them.
Mike finds that few projects really care about usability. The argument, “If you made your usability better, you’d increase your user base,” is not enticing to most open source developers. Open source developers have no layers (like salespeople or tech support) between themselves and the public users. Thus, they get inundated with (sometimes ill-informed and even downright stupid) bug reports and feature requests. The last thing open source developers want is more of those.
Since open source developers soon stop being users of their own software, and they don’t want to talk to lots of users, how do they deal with usability? Mike says that the top developers develop close relationships with a few power users, and the developers design to meet those users’ needs. So there is some attention to usability — in terms of what high-end, power users want.
So what happens when a User Experience person wanders into the open source fold? Mike has interviewed some of these folks (often female), and finds that they hate the experience. One said, “I’d never have done it if I wasn’t being paid to do it.” I guess there’s not much of an open source usability developer community. The open source developer community is not welcoming to these “others” with different backgrounds, different goals, and most of all, not a hard-core software development background.
Mike believes that the majority of our software will be open-licensed. I expressed concerns about that future in terms of education.
- How do people get started in developing software in an all open-source world? Mike suggested that open source is a great way for high school students to get started with software development. I pointed out how unfriendly open-source development communities have been to newcomers, especially females, and how open-source development mailing lists have been described as “worse than locker rooms.” Mike agreed with those characterizations, then said, “But once you get past that…” Well, yeah — that’s the point. Margolis and Fisher showed us years ago that those kinds of subtle barriers say, “This is a boys-only club — you don’t belong!” and those can prevent women and underrepresented minorities from even trying to enter the community.
- I worry about the economics of open-source and what signals it sends to people considering the field. Mike assured me that companies like RedHat are making money and hiring programmers — but there are many more unpaid programmers working on RedHat than paid programmers. If the world goes mostly open source, how do we convince students that there are jobs available developing software? Many kids (and parents) already believe that software jobs are all being outsourced. How do we convince them that there are good jobs, and they don’t have to work for years for free before they get those paying jobs?
- Finallly, I really worry about the lack of thought-diversity in the open source communities. People who care about usability are driven away from these communities? While we educators are trying to convince students that not all of computing is about programming, the open source community is telling newcomers that programming is all that matters. If the whole software industry goes open source, we’re going to have a hard time selling the image of a broad field of computing.
I found Mike’s work fascinating, and well grounded in data. I just find the world he describes a little disconcerting. I hope that the open source community considers the education issues of its next generation of developers.