Companies and communities is a topic I'll speaking on at SCALE. I welcome any feedback or points to consider!
First off, there is no ideal company/community relationship. There are lots of different types of relationships between companies and the communities they work with (or don't work with) – and no one way is perfect for everyone.
The goal should be for companies and individuals who use and support open source software to work effectively together. And part of working effectively together means making sure that the open source model is sustainable. Which means interacting for the good of the project, not just taking or using open source software.
However, how best to interact with the community is a question that many companies struggle with.
It's easy to give companies some general advice: be transparent, let
your employees contribute, talk about what you are doing, … but a
good advice has to take into account what the company is trying to do
with open source software.
In this post, I just want to enumerate some of the types of companies that interact with open source software.
I'll use some of the companies in the GNOME communities as an example because I think GNOME has good, strong ties with the companies in its community.
I can define the following types of companies. There is some overlap between categories.
1. Companies that just use open source software products. These are companies that use GNOME software in their company, say as their desktop or as their image editing software. People use GNOME and they are part of our community whether we talk to them regularly or not. They test the software, do word of mouth marketing, and add credibility to the project among other things. I wrote a whole article about The Role of Consumers Within an Open Source Community. You could argue that a company full of users might have more responsibility to the project than just an average user. And some do. We sometimes get financial support, great case studies and references from companies that use GNOME.
2. Companies that distribute GNOME. In the case of GNOME, some of these are obvious, like all the Linux distributions. Others are not so obvious, like devices or phones that contain GNOME technology. There are also several categories, those that modify the open source software product and those that don't. In the case of GNOME, I think many of our distributors modify it before they ship it. These companies bring some obvious benefits like developers working on the project, fixing bugs and adding features. They also bring some less obvious benefits like ties to end users, marketing, and financial support. The best companies figure out how best to "work upstream." Working upstream means working close to the project, getting your fixes and contributions accepted and into the main branch. For many companies, that is really hard. They often have to make a lot of fixes to make a product acceptable for their solution or their customers and by the time they have time to check it in upstream, they're a version behind and the project doesn't want it. The best companies figure out ways to minimize that time warp.
3. Products built on or with open source technologies. These are companies that build products like Nokia tablets, Garmin GPS units or Supersonic Imagine (the breast cancer scanner). Some fall more into the user category than the distributor category (although they do both.) They need to make sure their developers establish relationships with the community, at the same time they make sure that their companies also establish a good reputation for being supportive of the open source software products they use.
4. Creators of open source software products. There are more of these than you'd think and they fall into lots of different subcategories. Products like Banshee where the key developers work at Novell or products like Maemo started by Nokia but working on creating an external community. These companies need to decide whether they want an external community, an independent community or if they just need an open process for their project.
5. Services. Companies offering services or contract development work around an open source software product. In the GNOME community these are companies like Fluendo, Openismus and Codethink. These companies often have strong community ties because they hire contributors or their employees quickly become contributors.
Any other types?
Most people used to the proprietary software world, with no experience in open source software, are amazed that anything gets done. (And lots gets done in the open source, way more than in most proprietary software companies!) And people new to open source are usually at a loss as to where to start. Often they come with a great idea, tell a couple of people who confirm it’s a great idea, and then … well, and then they don’t know what to do and the great idea fades.
So here are some of my ideas on how to get things done in the open source world. And I am by no means the expert – I’m in awe of some of the people I work with on a daily basis.
To get things done in open source:
- Be prepared to do a lot. Somebody has to do it. And while you can convince others it’s fun and needed and great, if you aren’t willing to put time into it, why are they going to believe you?
- Believe you are empowered to do it. If you propose a new idea and everyone tells you it’s great, believe them. And just do it. Nobody is going to say “ok, now you can do it.” If people give you positive feedback, take that as an ok to go ahead.
- Recruit others early. The earlier you talk to others about your idea, the more likely they’ll be able to contribute to the idea and feel like it’s theirs. The more they feel like it’s theirs, the more likely they’ll contribute. Most people hate to share an idea until they are sure it’s a good idea that’s completely thought out. By that time, it’s your idea to be done your way and it’s too late for them.
- Don’t worry about getting credit. It’s all done publicly, on a mailing list that’s recorded for prosperity or on IRC in front of everyone. You’ll get your credit. Float your idea, encourage others, accept their feedback and ideas. Give more credit than you take. (And ask yourself if you want your idea to happen or if you want credit. Either answer is ok but only one can be your highest priority.)
- Join the conversation. Many people float an idea via email or maybe even on the mailing list. Where probably depends on the project but there are conversations happening some where. I think the one most missed by those new to open source software is IRC. I once heard a manager joke that nobody hangs out around the water cooler any more. Instantly someone mentioned (on IRC) that IRC is the new water cooler and he just didn’t know it.
- Get effective at monitoring lots of information. In my experience, people in the corporate world spend a lot of time talking about how they get too much email (I did) where as people in the open source world (at least GNOME) spend their time talking about methods for dealing with lots of email. It’s way cooler to be seen as someone who copes with tons of email than someone who gripes about tons of email.
- Reply to all. I worked on an open source like project with some people that weren’t familiar with open source. I got so frustrated with people that didn’t hit “reply to all”. I spent a lot of time recommunicating decisions and we didn’t have a lot of conversations that we should have had.The project had a lot less “team” because people didn’t reply to all. By “team” I mean people didn’t feel part of a team and they didn’t have all the information they needed. Also, one of the strengths of open source is that all of the history is in the mailing lists. If you don’t reply to all, your project will lose that advantage.
- Think the best of people. Things get lost in email. It’s much easier to misread an email or take offense at something in an email than it is in person. Remember this whenever you get upset at an someone because of an email.
- Meet people. Along the same lines as communicating well in email, meet as many of your fellow open source people in person. This is somewhat controversial as the open source model works really well in a virtual world. But I think that conferences like OSCON, GUADEC, SCALE and OpenSource World that get lots of open source people together, create stronger relationships and better projects. Personally I find that when I can read an email in someone’s voice, it makes a lot more sense. It’s often funnier and more relevant.
- Be yourself. Be yourself, add some personal notes, make sure your motivations are transparent. Anyone who is obviously acting with “ulterior” motives – like pushing their company’s policy without thinking about what it means to them and the project – is less trust worthy. Not because what they are doing is bad but because it’s hard to know what type of decisions they are going to make and carry through on.
- Ask for help. There are a lot of people in the open source community willing to help. Just make sure you share the whole plan and ask for specific help. If you don’t share the plan, they won’t know why they should help. If you don’t ask for specific help, they won’t know how to help.
- Show your passion. Excitement is contagious. Share why you are doing what you are doing and why it’s important or fun. (Be sure to temper the “because the alternative sucks” viewpoint.) Be positive and passionate!
What else would you add? What’s your best tip for getting things done in the open source world?
For more detailed ideas for how to actually get the work done, see 10 skills to master to get things done online.
It's wrong for books targeted at kids to be full of underage kids drinking to get drunk, sex between people that don't care for each other and kids using drugs. I don't have a problem with kids reading books that contain those things, but I think books targeted at kids have to take into account how influential they are and they have a social responsibility to use that influence for good.
I've been actively looking for book suggestions for a 12 year old that really liked Stephenie Meyer's books, so this weekend I was thinking about kids as I read Vampire Academy. While I enjoyed the book, I would not recommend the book to a 12 year old. And I was pretty upset that the book is targeted at kids. It's a book about teenagers and the reading level is marked "Young Adult". And it has drunken underage parties and sex for favors.
Now the vampire and werewolf genre is full of romance and sex, and although I don't always like that, it doesn't bother me because I can just choose not to read the ones I don't like – like Laurell Hamilton's books, good stories, too much random sex that doesn't further the plot. And I chose to leave them off of my list of recommendations for a 12 year old. And that's all ok.
But to find a book so clearly targeted at kids that contained so much inappropriate sex and alcohol use … I felt like that was irresponsible on the part of the author. (Although I'd feel differently about that if you told me the author is a teenager.) Now I realize that "inappropriate" is highly subjective. I'm not a fan of the way we teach abstinence in schools and others think that is the only right thing. But sex for favors is pretty universally frowned on. And drinking to get drunk, while obviously not a social taboo (at least in the US), is probably not something most parents in today's society would encourage their kids to do.
I'm sure the book with its drink to get drunk parties and sex for favor scenes reflects a reality. But is it a reality the author really wants to encourage to kids? I could understand portraying the reality in a book targeted at parents, so they would know what's going on. And I understand that if the author doesn't portray real teenagers, she'll lose her audience – teenagers. However, I think she could have left out the drinking-to-get-drunk and having-sex-so-guys-will-do-you-a-favor scenes without losing her credibility, audience or story.
Perhaps Richelle Mead feels like she is doing the right thing by showing that the good character waits to have sex but I think she's more likely spreading the word that drinking to get drunk is a fun and cool thing to do.
(And in case you are wondering, I recommended Patricia Briggs, Anne McCaffrey, Susan Cooper, Orson Scott Card, Robert Jordan and Diane Duane.)
I'm on the advisory board for OpenSource World. I was excited to be asked. One, it's flattering to be feel that your opinion is valuable. Two, I was excited to help make OpenSource World a success. Three, I have an active interest in making sure that open source software in general is successful and in particular on making sure open source on the desktop is successful. Four, I always like learning new things and being on the advisory board of a large conference is bound to teach one new things.
Then, in addition, I volunteered to run the desktop/netbook track at OpenSource World. When I volunteered, I envisioned myself sitting in an easy chair with a huge pile of proposals like a professor grading term papers. Sharing quotes from the good ones and sorting them into the good, the bad and the ugly. Then on the day of the conference, I'd introduce speakers and stand back and watch with pride as excellent speakers drew huge audiences.
The problem with my vision? Those huge stacks of proposals aren't coming in! So, if you have something you'd like to say, a message about open source software on the desktop or how netbooks are affecting our world, please submit a proposal to OpenSource World! Or call me. Or email me. If you've seen a really good talk about open source on the desktop, call me, twitter me or email me. I'll try to get the speaker to come to OpenSource World!
While I probably won't end up sitting in my easy chair reading proposals, I am looking forward to sitting on my fitball in front of my monitor and twittering about them! So submit your proposal to OpenSource World.
Zonker tapped me for the 7 Things meme. Since it sounds infinitely easier than the 25 things that I've been tagged for several times on Facebook, I decided to do the 7 things and count it as both.
How the 7 Things meme works:
- Link to your original tagger(s) and list these rules in your post.
- Share seven facts about yourself in the post.
- Tag seven people at the end of your post by leaving their names and the links to their blogs.
- Let them know they’ve been tagged.
I pretty much tell everybody all the things I want people to know about me, so this is a bit difficult but here we go with seven things you may or may not know about me:
- Driving on icy roads is much, much more terrifying than public speaking! There's not much I let scare me but driving on icy roads tops the list. The first snowy day after I rolled my truck, I opened and closed my garage door at least 10 times before I decided I really was going to drive into work.
- I don't think I'm very good at knowing when I've done good. I could tell you a hundred ways this post could be better, that last email could have better or that last talk could have been better. By the time I'm finished critiquing myself, it's hard to tell whether it was good or not.
- During my first public talk ever, my manager's manager's manager held
up a sign with the word "SLOW!" written on it. I never saw it.
- My heart rate is lower when I'm reading than when I'm sleeping. (Honest, I wore a heart rate monitor through a nap once just to check. My dad didn't believe me so he woke me up one morning with the heart rate monitor in hand to double check.) So reading is good for me!
- I got my first guide dog puppy to raise at the age of ten because my parents wouldn't let me get a dog so I talked them into a dog for a year. My last guide dog puppy got to go on business trips with me and she's now working in Alabama.
- While everyone talks about how few women there are in technology and open source, I found it much harder being young (or looking young) than being female. Martin Fink once told me that going gray prematurely was a huge asset to him and I actually debated whether coloring my hair gray would help!
- Frank and I met on Match.com. We hadn't talked about whether or not we were going to tell people that when someone asked us … we ended up making up a rather confusing story about meeting in the grocery store until I finally broke down and blurted "we met on Match.com!" In spite of us both living in the same area and both knowing hundreds of people, in six years we still haven't met a single person that we both knew before meeting each other. Our worlds were several degrees of separation apart.
Here are the people I've tagged: (And it's really too bad they had to have a blog because I found that some people that I really wanted to tag, didn't have blogs. Or at least not ones they've told me about. 🙂 Actually, I ended up surprised at how many of my friends don't blog.
- Frank (because he needs to blog again!)
- Jack Repenning
- Ragavan Srinivasan
- Dirk Riehle (because he followed me on Twitter while I was writing this)
- Deirdre (because her blog always makes me laugh and sometimes cry)
- Christian Einfeldt
- Ken VanDine
First off, Microsoft is not going to open source Windows. (I used to say it wouldn't make business sense for them to open Windows. These days I'm not so sure.) I do know that it would take them years and it would be really hard to do legally and logistically. See Zonker's post.
But people keep talking about Microsoft open sourcing Windows and asking why they don't do it. So what would happen if they did?
If Microsoft open sourced Windows under a standard permissive license,
- would we quit working on Linux?
- would we finally fix the blue screen of death?
- would end users benefit?
- would Windows play better with others?
- would any non-Microsoft employees fix Windows bugs?
- would we still get breakthrough projects like OLPC?
- would any of the code get adopted into other projects?
- would more people use Windows?
- would Microsoft still be able to charge for Windows?
What do I think?
- Some Microsoft technology might be adopted into other open source technologies, actually improving their competitors. However, adopting new technology into a project is never easy, so it wouldn't be as much as they might fear.
- The price of Windows would fall to zero. (And few would pay Microsoft for support.)
- Linux usage and adoption would continue at its current rate – it is the best operating system for many uses.
- Free software projects would have to get better at marketing. (They're being used because they are good technology, not because they are free. But most marketing hype is around free.)
- None of the current open source developers would move to Microsoft projects. Any community built around an open source Windows project would be a new-to-open-source community so it would have growing pains.
Ok, now back to work. Microsoft is not going to open source Windows and if they did, the world wouldn't change … much.