Open Source Bridge: Thank you all

Representing @osb09 on Twitpic

Open Source Bridge ended yesterday at midnight. We wrapped things up at the Hacker Lounge, with interviews courtesy of Strange Love Live, and tons of hackers still coding through the evening. My head was just buzzing from all of the great conversations I’ve had over the last three days.

Thank you to all of the speakers, volunteers and my fellow board members, Audrey Eschright and Jake Kuramoto. Thank you to the core organizing committee, designers and hackers – Reid, Igal, Rick, Adam, Bram and osbridgebot. Thank you to Christie Koehler who did an amazing job with managing volunteers these last three days.

Thank you especially to Peter Eschright, who swooped in and made sure that all of our Logistical issues were solved. Thank you Cami and Dr. Normal from Strange Love Live, and Kelly for all your advocacy work on behalf of the conference. Thank you Steph for your last minute awesome work on the speaker party. Thank you to Beer and Blog and WebTrends for hosting our evening party on Friday *and* our speaker party.

Thank you Amber Case, Kurt von Finck, Mayor Sam Adams and Ward Cunningham for giving entertaining and inspiring keynotes each day. Thanks to Chris Messina for helping kick off our unconference on Friday.

Thank you everyone who came and participated in the conference. Your enthusiasm and passion was inspiring. I appreciated all of the encouragement you gave me and all the other volunteers throughout the time we were there together. All those kind words add up, and so many people were just glowing from the praise.

If you attended the conference, respond to our survey! Also, comments are open on sessions, so please leave comments about the specific sessions you attended. We’ll forward the feedback to the speakers.

I’m still smiling, and soaking it all in. But we’re definitely doing this again next year. ๐Ÿ™‚

collaboration = conflict + people

I’m thinking a lot about why Open Source Bridge is happening.

One of the ideas that keeps popping up for me is constructive conflict. Searching for some inspiration, I googled “open source in-person collaboration” and came across David Eaves’ post “Why collaborative skills matter in open source.” His main point about the collapse of transaction costs comes from Clay Shirky’s book Here Comes Everybody, which I am also reading.

That led me to an older post David wrote about the difference between collaboration and cooperation. And, suddenly, the light turned on.

Yesterday, as I mapped out the five minute “why we’re here” talk I’ll give to kick off the conference, I said to Audrey, “Above everything else, our goal is collaboration.”

Between people new ideas are produced as the result of conflict. Without conflict, we don’t have collaboration, we only have accommodation and cooperation. And I completely agree that online communities encourage cooperation, sometimes at the expense of collaboration.

How do we encourage more collaboration? At least for now, Audrey and I have both focused on in-person connections. For the highly-distributed projects, this poses several problems – cultural, logistical and financial.

Outside the echo chamber

One thing that I like about pub culture is the tendency to end up talking with people you don’t know. Sometimes they’re drunk, sometimes they have very strong opinions. Occassionally, you end up with a memorable conversation that changes how you think.

I’ll be giving a short introduction to the first keynote speakers for Open Source Bridge (for the morning of June 17), and was thinking about this when I came across a blog post about the Demise of Should (via @cshirky).

What I’m writing about is how being confronted, sometimes rudely, can help you gain a little perspective. I know that I live in an open source echo chamber most of the time. But last night I got an ear full from a couple people who think that open source people are ignorant, entitled assholes.

I’ll leave out the punchline… but suffice to say, I had a pretty entertaining drinking buddy for the night.

How do you find opinions in our industry that differ from your own? How often do you have conversations with others, in person, where someone strongly disagrees with you?

Photo courtesy of Jaako under Creative Commons.

Inspiration to project

Kathy Sierra tweeted today about the transition from talking to doing in tech culture. We have Camps, but getting from the inspired conversation to actually producing something useful isn’t always easy. Kathy used the term ‘jam’ to describe what it is when people get together to create something, rather than just talk about it. Here in Portland we use the term ‘hackfest’ or ‘codesprint’. Both of those terms imply working with code that’s already out there. Jam seems like a better term when you’re making and playing from scratch.

I thought this could maybe be the start of our lifecycle:

inspiration/tweet -> *camp -> git init -> *jam -> project

I threw the revision control in there as a placeholder for grabbing a namespace and distributing code.

How do you think community-developed software gets created? How would you describe the process your own projects go through?

PgCon 2009: Lighning Talks! Call for participation

Ottawa is almost as pretty as Portland this time of year.

Ottawa is almost as pretty as Portland this time of year.

Can you believe it? PgCon 2009 is nearly here!

We need lightning talks for our Lightning Talks session at PgCon in Ottawa, Ontario next week!

I have a few talks lined up (there’s really only time for about 10 of them!), but we need MORE! Lightning talks are FIVE MINUTE presentations. If you’ve never given a talk before, this is a great way to get your feet wet. If you have a last minute awesome thing to share, now is your time to do it!

Anything PostgreSQL related – code, stories, announcements — just send your topics to me! Comment below or email me: selena -at- postgresql -dot- org.

I’ll post talks as they are confirmed here: http://wiki.postgresql.org/wiki/PgCon_2009_Lightning_talks

Hope to see you at PgCon!

Manufacturing Participation

I want to talk about a couple things today during my unfortunately named “architecting participation” session at BarCampPortland. My goals for participation are to get people to an event or be part of an open source group and then to get them to keep coming back.

The three things I’m going to touch on are: inviting in and making people feel welcome, making people feel useful, and making things fun.

With the ultimate goal being world domination of free and open source software.

We’ll see how it goes ๐Ÿ™‚

What’s changed? Portland as an example of increasing women’s participation.

Code from @christiekoehler's presentation. #cns

At Code-n-Splode last night, we first heard Christie Koehler give a great talk on CodeIgniter, the one PHP web framework endorsed by Rasmus Lerdorf, original author of PHP. She went over the pros/cons, details of how you go about installing and then using CodeIgniter, and then showed a very detailed example from her recent work. I hope she posts the slides soon – they were great. (If you want to see our tweets – per Gabrielle’s suggestion, we’re tagging with #cns now.)

After the talk (nearly 9pm!) we all went over to the Green Dragon for our #afterhours chat. Audrey led off by explaining the recent controversy she’d written about, and the Ruby/Rails community response to her posts.

Some of the things she shared I was shocked by – specifically some very personal attacks in comments that she’d decided to save (in Skitch), but remove from her posts. Her standard was: “is this something that would cause my mom to stop reading.” And, if the comment met that standard, she archived and removed it.

I learned about threads in the local ruby community about the topic of women’s participation, and some very positive comments on Hacker News and Digg, and _why’s posts that seem to be expanding perceptions and opening people’s minds to ways that may ultimately be more inclusive of women and minorities.

All told, we had 15 people at the meeting, 13 of which were women. Our first Code-n-Splode meetings started with about five people. Our largest meeting (thanks to the clever, rocket-building Sarah Sharp) had somewhere around 30 people.

Among the many things that the Code-n-Splode crew discussed last night was “what made portland different”. And I thought I’d let you in on our secret.

We ask women to participate.

When we have code sprints for Calagator, Open Source Bridge or we have the Agile development meetups dedicated to coding – there are always women there. From what I understand, having women show up regularly to code sprints is unusual in other cities.

When I am responsible for these meetups, I contact the people that I want to attend directly – and I ask them to come. This is a mix of women and men (I no longer have to explicitly think about inviting women, because so many are already in the community). But when I was first asking people, I *did* have to contact women who were just dipping a toe into the community — to convince them that yes, joining us would be fun, educational and sometimes good for their careers.

When I first started attending user groups regularly about nine years ago, I often was the only woman. Now, it is extremely rare for me to be the only one. Particularly in groups that span multiple technologies (Web Innovators, Open Source Bridge, Extreme/Agile developers, Functional programming, and BarCampPortland come to mind) or are largely social opportunities for geeks to mix (Lunch 2.0, Beer and Blog). More geeky women (and women that I don’t already know) seem to attend these types of events.

I don’t think there is a single magic formula for transforming your city’s geek scene. But I think it is worth asking questions of the Portland tech community leaders, finding out how our groups work and trying out our techniques in your home town.

What works? Getting more women involved in open source.

Taking a break while digging a ditch

Taking a break while digging a ditch

When you have a community, and you notice that there’s an imperfect distribution in participation, what do you do?

How do you increase participation of a particular minority group? What should your goal be?

For example, if you have an open source project, and you need more programmers to contribute — what do you do? What I’ve observed is that the project advertises explicitly – they say, “Hey, we’d like more developers – interested?”

The leaders of the project call up their good friends, and ask those people to help out. Then they present at conferences, saying “Hey, look at our cool project. Want to join us?” They talk to individuals, they talk to groups. They say the same thing, “We’d really like you to join us. So, why don’t you download our code, ask me some questions, and contribute!”

Bottom line: they network, and they find the people that they are looking for.

So, I think this model works equally well for getting more women involved in open source projects. You say to your group of friends, “Hey, I’d like more women contributing to my open source project. Do you know any?” You go to conferences, and you say explicitly, “Hey you – would you like to participate in my project? What are you interested in? Can I help you find a project that is of interest to you?” You go to user groups, and you talk to the women who show up and find ways to keep them engaged in the group, and in the code.

All the hand-wringing over this problem that starts with “I don’t know what to do” can be solved by simply asking people to be involved. Politely, insistently and like you’re bringing them the best party you’ve thrown all year.

Invite them explicitly, rather than falling back on a “if we build it, they will come” mind-set. Sure, a laid-back approach works when you have a popular project, or the choice to contribute is easy. But otherwise, we need to ask for greater participation.

Take a moment, ask yourself — how many women do you know that write code? How many women do you know that contribute to open source in other ways? What can you do to expand your open source circle so that you invite at least one woman into our community? More than one? Maybe half a dozen?

Change yourself, and the whole community will change with you.

Fact is, open source software contribution is still kind of difficult. There are so many barriers to entry that community managers from huge corporations and extremely large open source projects are willing to meet with a group of five people at a 2000-person conference to explain the culture, the potential pitfalls, and the tremendous benefits of getting involved. And those same people are so convinced of the importance of this one-at-a-time contact, that they tell potential contributors, “If you have any questions, email me directly, and I will help you.”

We love our communities and the ideas that drive free and open source software so much that we want to talk to anyone who is interested. We think that it is worth it to convince people, one at a time, to contribute.

The same logic applies to getting women involved. The change won’t happen in a day. We convince people, one at a time, that what we work on – what we believe so much in – is worth contributing to.

And then, one person at a time, we will make it so that women are 50% of open source community.

(image courtesy of diamondmountain via Creative Commons license)

The future of free and open source support models

I attended the MySQL Conference all last week, and am feeling very excited about the future of open source databases. I had many interesting discussions and met a ton of Drizzle hackers I was lucky enough to spend Friday with, digging through code.

I was talking with Paul Vallรฉe of the Pythian Group Thursday about Postgres and the future of enterprise support. And he showed me this great graph from indeed.com. It’s acceleration here, not the raw numbers – but still, a neat graph ๐Ÿ™‚

We discussed the issues that enterprise customers with certain types of regulatory obligations encounter — such as contractual obligations for PCI-compliant credit card storage or outsourced management of sensitive data. The standard response developers might give for this is “read the spec, and make sure you implement it properly”. But the truth is, for larger companies, that may not be enough.

So, assuming for a moment that the Postgres community would even want to address this problem as a group — could it be possible for the Postgres community to provide the legal and financial assurances that an incredibly huge corporation (ahem – Sun/Oracle) can?

The short answer for Postgres right now is “no”.

Originally, I had thought just in term of liability, but Paul clarified:

The liability is just one component of what gives the guarantee meaning because there is a consequence to failed delivery. An SLA can also do this. As can a simple lucrative contract that can be lost, or canceled early if delivery does no take place. The key here is to ensure that the technology adopter can legitimately be confident that they are provably being responsible by adopting the platform. “I trusted” doesn’t cut it for many.

My view was that this type of agreement helps to determine who exactly is to blame (and who can be sued) in the event of a software failure. But, Paul said, “It’s more about assurance (with evidence) that obligations realistically will be met.”

I sometimes think that this system of liability and assurances is just ultimately broken. But it is a reality. So, would it be possible for us to come up with a new legal framework for community-driven software?

Paul brought up the idea of a cooperative, and that maybe such a legal entity could provide protection for individuals involved in supporting Postgres, and also shoulder some or all of the liability that a corporation using Postgres would want. I’m not sure that core developers of Postgres would join such a thing, or whether they would be allowed to given existing agreements they have with their own companies. But it is an interesting idea.

Creating a blueprint for this type of organization – hackers cooperatives – could be a way for truly community software to be developed across companies and among individuals in a sustainable, and “trustable” way. Maybe?

Continuing this train of thought – maybe these are non-governmental organizations, whose main purpose is to create and maintain infrastructure software for the good of the world.

Funding for mid-sized free and open source projects seems to be a consistent problem. Perhaps NGOs are a fair model for us.

I am curious about what effort may have already been made in this direction. My next step will be to contact Bradley Kuhn and see if there’s something out there that might address this.