Open source is (still) changing the way work gets done

[The beginnings of a keynote. Feedback and input welcome.]

Open source is changing the way work gets done. Yeah, yeah, what's new? We all know that. But really, free and open source software has changed the software industry in the past but it's really changing things now. Especially when you look at industries that are now using open source software that didn't used to be in the software business: cell phones, netbooks, medical equipment, …

Once upon a time …

All software was free. Nobody thought software was worth anything. It was the enormous, huge machines that were important.

Then one day people realized that software was important. And since it was important and perhaps useful, they could charge for it. In order to do so they had to hide how it was done or everyone would just copy what they did and not pay them.

It was Richard Stallman who pointed out that by not sharing how it's done, we severely limit ourselves and how fast technology can grow and benefit society. (He compares it to music – Mozart and Beethoven couldn't have written their music if we copyrighted notes. I first heard him speak about it at GUADEC 2001 in Copenhagen.) And he wrote the GPL, one of the most popular free and open source software licenses.

It took a few years, but finally people caught on in a big way. The world got to hear about Linus Torvalds' Linux project. And people went on to write all sorts of useful software projects – under free and open source licenses.

And then, when it became apparent that this free stuff was useful, people started wondering (once again) how they could make money off it. They came up with a few models that have proven they work.

  • Support & Services
  • Proprietary add-ons
  • Dual licenses
  • Hardware enablement
  • Advertising

And for a while it looked like that was going to be it. Open source software provided lots of inexpensive, great technology for individuals and companies. It saved them not only money but time. It enabled them to go to market faster, with more flexible technology, that met their needs or their customer's needs better, and it was often more secure and robust to boot.

And it changed the way the world worked. At least the technology world. I believe that much of the technology we have today has moved along much faster than it other wise would have either because it was open source software or because there were open source alternatives. I think netbooks owe their existence to free and open source software. One Laptop Per Child showed that you could make a cheap laptop and when the more traditional hardware vendors went to match it, they discovered that they could meet those low price points with free and open source software. (And then Microsoft had to match those price points to stay competitive.)

And developers have much better jobs these days because they have access to the open source development models. It's now common to be able to search bug databases, report problems, post code, try out other programs that might solve parts of the problem you are trying to solve. (And these aren't necessarily all due to open source but open source made them standard, made them the expected way of doing things.)

And then the big change.

Open source entered into businesses that weren't even traditionally software businesses.

Take a look at the mobile industry …

I went to the open source in mobile conference in Berlin last year and I sat next to some people that were at an open source conference and they didn't know what Linux was. (They didn't know what GNOME was either – it was in explaining what GNOME was that I realized they didn't really know what Linux was either.) These people are entering the open source world for an entirely different reason than companies have in the past. They aren't trying to make money off of open source – they might think they'll save some money – and they aren't trying to create an open source business model. They already have a business model. They make cell phone hardware or they provide phones and services to end users or they make applications for cell phones.

They are in open source because it provides the technology they need to make their business happen. What brings them to open source? It's flexibility, it's time to market, it's not reinventing the wheel but yet being able to customize their offerings for customers. It's a lot of the same things that originally made open source software attractive to enterprises but what's different with these new users is that they often become developers not just consumers. They need to make Linux or GNOME Mobile work on their chipset or their handsets and they need those changes to go upstream. And they are used to just asking their suppliers for the change, not negotiating with a project that includes a bunch of their competitors.

So far, the people I've worked with have been really excited about working in open source but there's no doubt that it's shaking up the supply chain.

How does a netbook vendor, one that's typically just manufactured hardware and worked with Microsoft for the software, how do they go about putting free and open source software on their hardware? Do they partner with a Linux distributor like Red Hat or Novell or Canonical? Or do they partner with a company like Intel who's come out with a whole new interface for netbooks, Moblin? Or do they hire a bunch of developers (or hire a company) and come up with a new interface just for their hardware?

Are the mobile devices of the future differentiated on hardware, operating systems, interfaces or applications? Or service plans? (I think the answer is yes, all of the above.) And open source enables them to compete effectively in all the software components (operating system, interface and applications.) It gives them all the building blocks and enables them to create custom solutions that meet their customer needs. And they can focus on the customization, not the building blocks. But open source also makes it harder. You can't just make an interface and deliver it to customers and say "here's what you get." Now customers expect much more, and they expect to be able to download applications, and get software updates on the fly.

And it's not just affecting mobile – it's affecting all technology. Look at medical equipment. It used to be that every medical equipment provider had their own proprietary software that ran on their own proprietary hardware. Now companies like Supersonic Imagine are using open source software technologies, like GTK+, to build custom software that meets their customers needs.

And GPS manufacturers are using open source components.

And digital video recorders and printers have open source components in them.

And all these companies and all these developers are now working in a collaborative world-wide environment. These are developers who we never used to see. We never saw their work or got to benefit from what they did. (Except people that bought their products.) Now all those developers are part of a greater ecosystem. And the changes that are made to a product to make it work well for GPS's also benefits netbooks. And servers. And web apps.

It's bringing collaboration to people and companies that aren't even in the same industry.

To give you an idea of how far reaching the same open source components can be: there are GNOME  technologies … In phones. In GPSes. In medical scanners. In Moblin. In netbooks running their own interfaces – Eee PC's are built on KDE but have GNOME technologies in them as well. And all of these people and industries are collaborating on the same software!

Universities have responded to this by using open source software projects in their classes in order to make sure students have the skills they need to collaborate effectively.

For example, Emmanuel Fleury, a professor at Bordeaux University, is using open source software projects as a learning ground for students. He has students fix bugs on real projects. They learn how to read code, work with the community, interact with existing code … all skills they'll need when they start writing code at their first job.

And universities are using the open source model and value system to attract a new type of student to programming. The HFOSS program, run by Ralph Morelli and Trishan de Lanerolle at Trinity, has successfully attracted more students to computer science, and more women in particular, by focusing on open source projects with humanitarian causes. During the summer they bring students to the campus, teach them and put them to work on a portfolio of open source projects with humanitarian causes. Community members from the project serve as mentors. The students get housing and a stipend just like they would at a traditional internship at a software company.

These students will start their first jobs with real life experience. And contacts. And a reputation they can build on and call on. And when they leave that job and go to another, they'll take their experience, their reputation and their roles along with them. And their networks. 10 years ago I knew a bunch of software developers at HP, where I worked, and that was pretty much it. I knew people at our customer sites and I knew friends from college, but I didn't share technical problems I ran into with people outside of HP. I didn't share the cool things I wrote with people outside of the company.  Now, developers in jobs like that work with developers around the world. Their networks, while probably still mostly people in their company, now include experts from different projects around the world.

Developers in the mobile companies I talked about are working on
the GNOME Mobile mailing lists and in the GNOME projects with freelance developers, developers from their own companies, developers from competing companies and developers from all up and down the supply chain from chip manufacturers to carriers. And that results in happy developers, more integrated products, complex products that get to market quickly and in lots of very cool options for end users.

What do I do at work?

A couple of people have asked what I do. I blogged about it a while back, What do I do as Executive Director of GNOME, but I get the sense that people are looking for regular updates. You can find those on the Foundation blog, I post a weekly update there.

(And I think a lot of people have questions about what Executive Directors do. My post is now #3 in Google if you search for "executive director job description", #2 for "what does an executive director do" and #3 for "executive director do". So if you are an executive director, you should probably post what you do for your community, employees and shareholders … it looks like they'd like to know!)

How to have a great tamale making party!

Last Saturday Mario had a tamale making party at his house. (And I've been told that officially it should be tamal singular and tamales plural but I think in English it's now officially or unofficially tamale in singular.)

About 20 people showed up to help make tamales. Most of us novice cooks but expert tamale consumers, and ready to learn all about tamale making.

Fromabove

First, Mario mixed the masa in a commercial size kitchen aid that made Frank jealous.

Mixingmasa

He claims he uses the recipe on the back of the corn flour bag, but I'm here to tell you that he randomly adds lard, baking soda and chicken broth. They turned out awesome, but I'd be afraid to try it at home.

Addingsoda 

Addingotherstuff

This what the masa looked like when done. And no, none of the tequila went into the masa.

Masatequila

Then we formed two assembly lines and got a quick lesson. First the masa on the corn husks. Mario pointed out that in previous years people have put a lot of masa on the corn husks and that means the tamales take hours and hours to cook. I think people took it to the other extreme – I got a few tamales that were mostly meat! (Still yummy!)

Spreadingmasa 

Two lines, one on each side of the table:

Spreading2

Then you put the meat on. Everybody brought some meat. I think we were all supposed to follow the recipe, but I know for a fact that Frank, like Mario, improved on it.

Meat

Then you fold them up. 

Folding

And wrap them in wax paper.

Wrapping

And somebody has to hold them in the pan – I got this important job for a while.

Holding

And then you cart the pans away – we made two freezers full of tamales!

And don't forget to have an occasional beer to keep you going.

Beer

And Mario's wife was busy the whole time making the most delicious beans and rice to eat with the fresh tamales. Oh, and guacamole. She makes a mean guacamole.

Ricecooking

We wrapped up the afternoon with a birthday party for the Japanese exchange student staying with one of the families. (This was our two year old's favorite part.)

Birthday

She got some help blowing out her candles.

Birthday2 

It was a great day and we have some awesome tamales in the freezer to prove it.

Small companies or mega companies?

I finished listening to the The Wal-Mart Effect this weekend. The author's main point is that Walmart has gotten too large – or at least larger than we ever planned for when we planned how companies should be regulated. He argues that Walmart with $375 billion worth of sales is beyond market capitalization and beyond the checks and balances that the market is supposed to have.

And this morning I read a Wired article in which an MIT professor named Tom Malone says that large companies will grow so large that they will fall apart and become small companies that can communicate more effectively among each other than a large company can within itself. The article goes on to say that we are seeing this right now. Walmart is closing stores, huge financial companies are falling apart and large corporations are being more regulated, encouraging a lot of smaller companies.

I don't know if I buy it since the Walmarts near me seem to be doing really well and I don't see a lot of new small businesses. But I personally would like to see a world with lots of small independent companies than a couple of megalithic companies.

Talk about what’s important to you

IStock_000009185970XSmall One of the best ways you can help a cause you care about is by telling your friends about it.

Recommendations from family and friends are the number one reason people buy products, support causes or try out services. I don’t know if it’s because they trust their friends’ opinions or because they can see that their friends really use, but whatever it is, people are more likely to use something if their friends speak positively about it.

So the best thing you can do to support your favorite cause, whether it’s open source software in general, GNOME or your favorite local bookstore, is to use it and talk about it.

If it’s GNOME, the GNOME marketing team has created these cool badges to add to your website.

Become a Friend of GNOME

Thanks to Andreas Nilsson, Paul Cutler, Jaap Haitsma, Claus Schwarm and others who made this happen!

Spread the word!

OpenSUSE Community Week

OpenSUSE is holding a community week this week, with a GNOME track. Curious as to what that really means, I asked Vincent Untz and Zonker (Joe Brockmeier) some questions. I really like that open source projects often find really new and effective ways to get things done.

There's a openSUSE community week going on right now, what is a community week?

Zonker: Our community week is a chance for experienced contributors to help pass on what they know about packaging, translations, testing/QA, and so forth to newer contributors and mentor them a bit to help them get started. It's also a chance for people to just pop in and meet with a lot of contributors to learn more about the project and ask general questions about the openSUSE Project.

Vincent: It turns out that there are many people out there who are interested in helping but they just don't know how they can help. This is where the community week is really helpful: we introduce people to the various activities that are handled daily by various teams, and we show them how they can contribute to this activities.

How do people join?

Zonker: In the various IRC channels. There are separate channels for the GNOME team, KDE team, marketing team, etc. You can find them all here: http://en.opensuse.org/Communicate/IRC

How many people are participating?

Zonker: Hard to say. We've about a dozen openSUSE contributors who will be leading sessions this week, and more who've helped with setting up the schedules and recruit people to lead sessions and so on.

According to the Facebook page we already have about 100 confirmed attendees, and I'm pretty sure that not all of the openSUSE contributors and new contributors use Facebook, so I'd say it's well more than that. Looking at the IRC channels today, I'm seeing quite a few nicks in IRC that are new. I'd say by the end of the week we'll have seen hundreds of people join in sessions across the various topic
areas.

Vincent: Just a (random) data point: in #opensuse-gnome, we generally have around 60 people. When I looked at some point yesterday, we had 80-85 people. That's +33%, which is quite good. Also, it's IRC, so we get people joining and leaving at all time of the day πŸ™‚

Of course, not all of the new faces have time to contribute, but they are able to learn more about the community this way, which can only be a good thing.

(oh, and the not-so-new faces — people who were already on IRC before the community week — are also contributing too)

Are they still working or did they take the week off?

Vincent: It really depends on the people — some people are investing some of their free time at work, some are not working (students, or people taking vacation). And then we have some interesting cases like Christopher Hobbs: he'll lead the GNOME Bug Day on Friday, and I believe his employer lets him handle this specific event on his work time.

Zonker: For Novell employees, this is part of the job to engage with the community, so I'd have to say "still working," but people doing Community Week should be doing this as part of their normal work. Not all the topic owners are Novell employees, so I can't say whether our other contributors are taking time off or getting time off to do presentations.

What type of work gets done during community week that doesn't normally get done?

Zonker: Primarily, a lot of mentoring and teaching. It happens other times, of course, but this is more of a focused effort.

Vincent: I can confirm this. Based on the past two days, the main difference is that experienced contributors take more time to help newcomers, and newcomers ask more questions.

What are you most excited about so far?

Zonker: We seem to be getting a fair number of participants so far, so I'm excited by that.

I'm also surprised, but probably shouldn't be, at how many groups are jumping in and setting up sessions of their own — the Samba team, Education team, and the openSUSE Weekly News folks have already
volunteered to do sessions though those topics weren't on the original schedule. Which is, of course, awesome. The more the merrier!

Vincent: One thing that really strikes me is that people are willing to learn. It's not something new, but it's really good to see people curious about things, and experimenting, asking questions, etc. to learn the right things to do.

Also a really good surprise is that the Thunderbird people are planning a Linux testing day this week and coordinated it so it ends up the same day as the GNOME testing day of the community week. So we'll have packages of the latest thunderbird code for people to test. I didn't expect some cross-project effort like this, and I'm quite excited about it πŸ™‚


What's in store for rest of the week?

Vincent: On the GNOME side, we'll have some wiki space reorganization, but most importantly we'll have a testing day on Thursday where we'll get feedback/bugs from people on various features or applications (thunderbird, multiscreen support, probably pulseaudio, also hopefully the new at-spi-dbus code that will be the basis of GNOME 3.0 accessibility, maybe also gnome-shell, etc.). Then we'll have a bug day on Friday where we'll triage the GNOME bugs filed against openSUSE, and forward all the relevant ones upstream.

And of course, people seem to want to package applications, so this will be an area where we'll keep helping people! We plan to have more volunteers this week-end to help mentor, and so we'll see quite some action on Saturday and Sunday in #opensuse-gnome!

Zonker: We have a lot more sessions for packaging, testing/QA,
GNOME, KDE, marketing, and openFate will all be on the schedule. The
openSUSE Board will be holding several sessions Wednesday and Saturday
to meet with contributors and answer questions about the board and to
get
feedback.

Zonker:  You can find each of the schedules here: http://en.opensuse.org/Community_Week

There's still time to join them!

New chair time …

This is my old chair. (Or rather Frank's old chair which he has resisted replacing. I'm not too sad it's gone. And if you have ideas on fixing it, "sshhh!")

IMG_2237

This is my temporary chair. I have discovered that while sitting in it I'm much more likely to get up and do something else, so while it's probably good for my health, it's probably not the best work chair …

IMG_2238

I wish I had a chair room like HP used to have … When I started at HP, I got to go to the "chair room". There, in a room of 20+ chairs, you got a short lecture on ergonomics and then you got to bounce around trying out all the different chairs until you found one that worked for you. I even found one that prevented me from slouching and from sitting on my foot.

Book Review: The Marketing Playbook

I really enjoyed the first part of The Marketing Playbook
by John Zagula & Richard Tong
but it took me forever to get through the last two parts.

In the first part of the book, the authors (old Microsoft Windows and Office marketing guys) explain the five basic marketing strategies they see.

  1. The Drag Race. This is the scenario you think of when you think of competition. Microsoft Word versus Word Perfect. Visa versus Mastercard. There are two players and you both solve the same problem in pretty much the same way. Drag races are very expensive money wise and time wise. A lot of people think that GNOME/Linux are in a drag race against Windows. I’d argue that we aren’t going to win that way.
  2. The Platform Play. This is the play for the company that won the drag race. They keep potential competitors away by making them into partners. Think Amazon.com and all the brands they sell within their store. Amazon makes it easy for those potential competitors to be their partners.
  3. The Stealth Play. This play is about identifying and targeting a couple of niche markets and becoming really good at them. Then you can either take over the whole market one niche at a time or you can grow until you can win a drag race. I think this is where GNOME/Linux should go. There are niches that we are well suited for like users with accessibility needs, netbooks, mobile, … You don’t have to do lots of PR and adverting in this mode. You want to stay some what quiet and just talk to people in the niches you’ve identified. It’s not about sitting back though – you have to be one step ahead of the big guy (the one that’s won the drag race) in each of the niches you are targeting. The goal of this play is to eventually move to one of the other plays.
  4. The Best-of-Both Play. This play is about defining a whole new offering. Think of the car industry when Japan had cheap cars and Germany had luxury cars. Toyota decided to market a “Japanese luxury car”, an oximoron at the time. This is the personal computer – somewhere between a calculator and a mainframe. This play is about the product (a whole new offering) and marketing (you have to tell everyone about it.)
  5. The High-Low Play. This play is for someone who dominates the high end or the low end, or both, and is trying to compete with someone coming out with a best-of-both worlds product. You tell your customers that compromise, a product that meets the low-end and the high-end, can’t possibly work and you market your low end and high end products agressively. It’s a temporary play – the book recommends that you actually develop your own best-of-both products while you keep the competition from winning by critisizing their best-of-both product. This play is all marketing. (And in this play, the marketing they were suggesting definitely felt like lying!)

In the rest of the book the authors explain how to map the terrain (yourself, competitors, what’s missing, etc) and how to run your marketing campaign. I found those sections to be much less applicable to things I do in real life. I don’t know if it’s because I don’t work at a large company like Microsoft or just that they couldn’t put enough detail into a couple hundred pages, but it definitely didn’t give me much useful information. One interesting point though was who is the most important player in a given strategy.

  1. In the Drag Race, the main player is the salesperson. In an all out competition it’s about convincing people you are the best, whether it’s more features, faster, better, whatever-better than the other guy.
  2. In the Platform Play it’s all about business development because you are trying to build an ecosystem of partnerships.
  3. According to them, in the Stealth Play it’s all about the CEO. However, reading why, it’s really all about leadership. It’s about dedication, patience, long-term plays, staying flexible and motivated. That takes lots of leadership. (And I’ve found that leaders are all over an organization, not just in the CEO’s office.)
  4. In the Best-of-Both Play, it’s the product team. It’s really your product that will win this strategy.
  5. In the High-Low Play it’s all about marketing. You’re trying to convince people that two very opposite products are both the best without confusing them. So you need to define both in a way that doesn’t compete with the other and market each one to the right audience.

If you decide to read The Marketing Playbook: Five Battle-Tested Plays for Capturing and Keeping the Lead in Any Market, my advice is to quit reading when you get bored and you won’t miss too much.

P.S. If you are interested in trying out marketing, please join the GNOME marketing team!

The challenge is the fun part, not the winning

People think winning is fun. But they're wrong, it's the challenge that's fun. Don't get me wrong, losing isn't fun, but winning without a challenge isn't fun either. Knowing you stepped up to a challenge and overcame it – now that is satisfying. (And challenges are also what keeps life interesting – it's what we talk about when we tell stories. It's what we watch in the movies.)

Eduardo_Amorim A bit of career advice I've gotten several times is to pay attention to when you're having fun. Then you'll really know what you enjoy doing. (And I find it's best to check during the task. It's hard to think back and remember if you had fun while you were doing something.)

Some times it's really obvious …

A couple of weeks ago, I played an entire shift of 4 on 2 in hockey – as part of the two player team. (Two of my teammates were in the penalty box.)

As we skated out I asked Jeff, my much more experienced teammate, "what do you want me to do?"

He said "I'm going to mumble-mumble-mumble."

"Ah, ok." (mumble-mumble-mumble??) "What do you want me to do?" (We only had seconds and I really didn't know what I was supposed to do or I would have asked about the mumble-mumble-mumble part.)

"Chase the puck."

"Chase it??" (That didn't seem very wise to me … I mean there were four of them.)

"Chase it."

"Chase it?"

"Chase it."

So I did. I skated like a ball bouncing between cat's paws from one skater to the next, getting there just in time to block a direct shot on goal and time to chase the puck to the next guy …

What stood out for me was the comment one of my teammates made afterward. "I was so glad it wasn't me out there, but you were grinning the whole time!" And I realized it really was fun. It was hard, it was even a bit scary, and I skated harder than I ever had before in a single shift and every move counted. But it was fun – much more fun than making a couple of assists and a goal.

And it was fun because it was a real challenge. And Jeff, the goalie and I stepped up to it. And even if they had scored (they didn't), I still would have had fun – I was grinning because I was playing hard and it was fun, not because we were winning. But I played harder because it was a challenge and I was having fun, and that's part of the reason we won.

Photo by Eduardo Amorim.

A call to support open source software projects

Many of you saw J5's call to support the GNOME Foundation. The initial response has been great! I wanted to follow up with a general call to support open source software projects financially.

The GNOME Foundation is a 501(c)(3) nonprofit. By definition it must serve the general public and by definition it must be supported by the general public.

Our charter is not to be supported by a small subset of companies, but to be supported by a large group of companies and individuals. Remember 501(c)(6)'s are trade groups and are supported by a group of companies. Their charter is not to help the general public but to help the business of their group members. The GNOME Foundation is a 501(c)(3) – which helps the general public. 

The GNOME Foundation has been lucky to have a group of companies that support us financially. With their help we've been able to do a lot of good things over the past 10 years. We've had annual conferences, hackfests, and programs like the accessibility outreach and women's outreach programs. And while a number of companies have expressed their interest in
joining the GNOME Foundation and supporting us financially, the reality
is, very few companies are adding anything to their budget this year.

But compare the GNOME Foundation's financial support from 12 companies to the FSF's model.

The FSF receives most of its funding from 1,000s of individuals. According to their 2007 tax forms, they raised $845,000 from the public. (That number probably includes companies, but it's mostly from individuals.)

That is a much stronger position to be in. Not only because they raised more money, but because they are supported by the many individuals.

Open source software has shown the strength of individuals in creating great products. In the FSF's model, they have also shown the strength of individuals in being able to financially support causes they believe in. Providing your own financial support enables you to do what is right for your project. (Companies don't prevent us from doing what is right. But when they provide funding, they set direction. For example, when we depend on them for funding for hackfests, we hold the hackfests they are interested in sponsoring. Luckily, they sponsor good things! However, there is much more we could do, like the GTK+ hackfest we wanted to have this year.)

Bradley Kuhn and I were talking at the Collaboration Summit and we were thinking we should have a campaign to encourage open source software fans (users and developers) to support open source software financially. Pick two projects, any projects, and support them. Here's a short list of some projects that are set up to receive donations and use the money to support their projects:

In addition, I'd encourage people to sign up for "subscription" plans. Having regular donations come in helps projects plan things.

I have a few more posts coming up:

  • Voice your opinion of how money should be spent. For example, voice your opinion on the mailing list when the budget is shared or when the call for plans goes out. (And if you aren't in favor of donating money to free software projects, share ideas on how things can be done with no budget or which things you'd like to see cut from the budget. Or how you'd like to obtain the money.)
  • Participate in your project's non-code plans:
    • In GNOME's case, become a member of the Foundation and vote for people that support your positions! Not only is your vote very important, but having a strong membership helps the Foundation show what it has to offer when discussing our technology and our plans with potential partners and sponsors.
    • If you have the interest or skills, join the GNOME marketing team – help create our messages to the general public or run campaigns like Friends of GNOME or a merchandising store.
    • Speak about free software, why you believe in it and your project to the general public as well as at open source events.
    • Help your friends use open source software. Don't push them but be there to help them install it, even if it's just one application like GIMP or OpenOffice. If it works well for them, they might come back and ask you for others. Encourage them to contribute (skill or money) if they have a good experience.

And of course, continue to write great code and create awesome free software projects!

Which projects will you support?