Forking an open source project: regaining internal motivation

Can forking a free software project enable you to regain your internal motivation to work on a project? My current theory is that if you work on free software, then you get paid to work on it and then you get laid off, that you would work on a different project. Because the first one is no longer good enough to get paid, then it must not be good enough to work on for free.

If my theory is correct, then I think there’s a great trend going on. Ex-employees are getting around this mental block by blaming the failure (the fact that they can’t get paid to work on it anymore) on the company’s strategy and forking the project to create a new one that they can then justify working on.

One of the strengths of open source software licenses has been that you can fork the project. If at some point in the future, you don’t like what the project is doing, you can take your copy of the code and go do your own thing. Many have argued that it’s that right to leave that makes people work hard to get along. Nobody wants to fork a project is the theory.

Recently most of the forks we’ve seen have come from ex-employees who are unhappy with the direction their previous employer is taking the project.

For example, take Mandriva/Mageia. Part of the Mandriva community, including ex-employees of the company, is forking Mandriva and creating Mageia, a new Linux distribution.

Their website doesn’t say exactly why they are forking but says they no longer trust the company’s motivations. The move seems to be prompted by layoffs:

Most employees working on the distribution were laid off when Edge-IT was liquidated. We do not trust the plans of Mandriva SA anymore and we don’t think the company (or any company) is a safe host for such a project.

Certainly I can see how people who have been laid off would no longer trust the company.

It does look like Mandriva is restructuring to give  more power to their community. However, I doubt they will reverse their decision to move the desktop development to Brazil. In addition to having lots of great free software developers in Brazil, I bet development costs are much cheaper in Brazil.

In the mean time, the ex-Mandriva employees have created a project worth working on for free, Mageia. Something they care about and can invest in, an independent, community run distribution with a community and an associated nonprofit organization.

I wish Mageia the best of luck with their project and I wish Mandriva the best of luck with their company. I think they will both solve different problems in different ways. And I’m really glad that the Mageia will continue working on what they love even if they are not currently getting paid to do that. Their project is worth it.

How do I raise enough money to work on my project full time?

“How do I raise enough money to be able to spend all my time working on my favorite free software project?” is a question I hear often.

I have a few ideas and I’m very interested in hearing others as I think the world would be a better place if we all could afford to do work we loved and thought useful.

  1. Focus on the difference you’d make. First off, I wouldn’t approach it as “I need to raise money to pay myself.” Unless you are raising money solely from people that love you, whether or not you get paid is probably not going to sway them one way or the other. You need to tell them what $100,000 a year would do. How would your project be great then? Who would it help? How would it make the world a better place? How would it help this particular type of sponsor?
  2. Believe it. You need to truly believe your project would benefit from the money and your work. If you aren’t convinced, you won’t convince anyone else.
  3. Figure out how much you need. It helps to have a goal. Would you quit your day job if you had $20,000 in funding? $100,000? $200,000? (Don’t forget costs like health care, vacation time, etc.)
  4. Identify different types of sponsors. Are you going to raise money from developers? Or software companies? Or philanthropic grant givers? Also think about how much money that type of sponsor is likely to give. Be realistic. Maybe they gave a project $100,000 once but they gave five other projects $10,000. You are probably going to get $10,000 if you get anything. Then figure out how many sponsors you’ll need. Figure out where those people are and how you are going to get introduced to them.
  5. Create a pitch. You need a really good web page, a good email, an elevator pitch and unfortunately, you probably need a slide deck too.
  6. Tell the world. Don’t ask everyone for money. But tell everyone about your project and what your goals are. (Hint: your goal is not to raise money but to make your project better. The money is a means to an end.) Use your elevator pitch. Listen carefully to their questions, their skepticism, their ideas. Evolve. Make your pitch better. Figure out how to pitch it to different types of people.
  7. Sell your project. Don’t forget to talk about your project. You aren’t just asking for money, you are selling the potential of your project.
  8. Collect stories. Studies have proven that people are willing to give more money to save one child identified by name and ailment than they are to save 100 kids. Personal stories are moving. Find a couple of stories of how your project has made a difference.
  9. Learn about them. You are not going to get any money from someone whom you don’t understand. Know them, know their business, know what they care about, know how they view you.
  10. Work with an organization that can help. For example, maybe you want money to work on your favorite project and you found companies that are willing to sponsor it but they don’t want to manage it. Would they be willing to funnel the money to you through a nonprofit organization that also supports your type of project?
  11. Ask. Talk to lots of potential sponsors, ask them for money, apply for grants, look for opportunities. If you don’t ask for the money, you will never get it.

What else would you recommend?

P.S. If you are looking to raise money to work on GNOME, please consider the GNOME Foundation your ally.

Nexus One’s are (at least some what) waterproof

The dog's water bowl - where my Nexus One fell

Don’t try this at home. Unless you have a few phones to spare.

My Nexus One survived being completely submerged in water.

I came home from grocery shopping and I put my Nexus One and my wallet in one of the plastic grocery bags  for the walk into the house. I put the plastic sack on the kitchen counter and walked across the room. I turned around just in time to see it lean over and dump my phone and my wallet straight into the dog’s water dish!

I rushed across the room (to the sound of my 4 year old saying, “What? What, Mommy? Why you say ‘Oh, shit!’?”), yanked my phone and wallet out of the water, threw my wallet in the sink and immediately started trying to get the back off my phone. I got the back off, the battery out and dried off everything I could see. I then let it sit out for a couple of hours to dry. When I put the battery back in, everything worked perfectly.

Yeah!

Scary parenting moments: When should you see the doctor?

Photo by Rußen http://www.flickr.com/photos/rubenperez/452108745/

My son had RSV when he was 4 months old and the doctors warned us that he was at increased risk of asthma and other respiratory problems. Fortunately, he didn’t develop asthma, but he did develop a mom who’s terrified of breathing problems.

Since then, I’ve had trouble figuring out when we should go to the doctor.

See, the day he was diagnosed with RSV, our day care provider told us she thought he was pretty sick and should go to the doctor. Of course it was Friday at 5:00 and we had dinner plans. And the two previous times she’d thought he should see a doctor, he’d been fine. But we took him. And on the way over, I commented to Frank that this was it. Third strike and she was out. If he wasn’t sick, I wasn’t listening to her advice again. I now take her advice very seriously. When we got to urgent care they immediately attached a device to him to test his blood oxygen levels. One look at the readings, some xrays to eliminate pneumonia and they told us to go immediately across the street to the hospital. There would be a room waiting for us. (Instead we had to go and sit in an office and show proof of insurance, but that’s a different story.)

Since that day, I’ve called the doctor’s office numerous times and held the phone up to my son so they could hear what he sounded like. Several times they have sent us in to the doctor or urgent care. One memorable morning his breathing was so loud it actually woke Frank and I up – and we were in a different room. When I called the doctor at home and held the phone up to my son’s mouth, he told me to go the emergency room immediately. We decided that I should go alone so we didn’t have to wake up our older son. While going 75 mph down the interstate, the terrible breathing noise stopped. My heart stopped too as I put on my hazard lights, pulled over to the edge of the freeway and leaned over the backseat to see if he was still breathing. He was. The terrible noise had started again by the time we got to the hospital and the hospital staff was so sure he had swallowed something, they took xrays. Nope, just a throat infection that was closing his throat up.

But I also took him to the doctor for a number of common colds that didn’t really merit a doctor’s visit – except to calm my nerves. So I no longer trust my judgement.

This morning he sounded terrible. And Frank told me he should go to the doctor. (And usually Frank thinks I’m too quick to go to the doctor.) And when I called the doctor’s office and described what he sounded like, they didn’t think I should wait until 2:45 to see his regular doctor. They told me to come right in. So I was scared. And imagined all the worse.

Luckily, he only has croup and the medicine they gave him to reduce swelling in his throat kicked in within a few hours.

But I continue to be regularly terrified because I simply don’t trust myself to know if it’s serious or not. I mean I would have brought him home with RSV and he might have died that night.

At the doctor’s office today, I anxiously waited the reading of the oximeter (it was a nice 98) and decided I should have bought one of those a long time ago. Turns out you can get one for less than $100 on Amazon. (For the record, I spent 4 days in the hospital staring at an oximeter reading, willing it to stay above 80.) So maybe with an oximeter of my own I’ll know when it’s really serious … but probably not. I’ll probably keep calling the doctor’s office.

(For the record, you are supposed to take kids into the doctor – urgently – if they have stridor breathing sounds, wheezing, stomach breathing, blue lips or gums, … or any number of other terrifying symptoms.)

Should women stay on the technical track?

When my friends and I started in our careers as software programmers, we noticed a trend. All the women who were good in their programming jobs got promoted to management, either project management or program management. We wondered why women never seemed to become architects and CTOs or even stay programmers for very long.

When I was offered a promotion into management, I took it. However, one of my friends did not. She said their were no women role models on the technical track. If we all got promoted out, then how were young women supposed to know that women could succeed as programmers and architects? She stayed a programmer.

So I’ve been really excited this year to see several women I know personally, prominent women in the free and open source software world, get high level, very technical jobs.

Congratulations to Danese Cooper who is now CTO of the Wikimedia Foundation and Allison Randal who is now the Technical Architect of Ubuntu.

I’m sure they will be great role models and mentors for both genders, but I hope young girls in particular will be influenced by seeing women in successful technical leadership roles.

(And I do see my role as technical. I don’t think someone without a programming or technical background would do as well. But I haven’t written any code or made any technical decisions other than for my own home network in a very long time, so I don’t feel like I’m showing young women that women can succeed in technical jobs, rather that they can succeed in leadership roles in technology related organizations.)