As soon as Google's Summer of Code project was announced, Groklaw member Marko Djukic suggested to me that we do an interview with Chris DiBona, who is now
Open Source Programs Manager, at Google Inc., about the project, and Chris was gracious enough to say yes. Djukic is
Core Developer for the Horde Project, a Summer of Code mentor
I threw in a couple of questions myself, because I really wanted to know the answers. Google intrigues me. I think it's the SCO effect. After two full years of immersing myself daily in SCOthink (Groklaw began its third year on May 16), I can't help but be attracted to a company that affirmatively decides it doesn't want to be evil, and believes that it isn't necessary to be evil to be successful.
And they actually are successful. That is the beauty part.
Here's my favorite sentence in the interview with DiBona:
"Google uses a lot of open source. For instance, we run our web/server clusters on Linux, so whenever you visit Google, you're visiting a Linux machine."
Do you realize what that means? Yoo hoo. World. You are using Linux, most of you every single day, even if you didn't know it. How do you like it? Do you find it works out well for you? Do you think maybe Google knows something your business needs to know too?
Here are some companies that have taken the plunge to Linux who are happy they did, including E*Trade Financial and Citigroup. Here's an article on how to build a Linux virtual server. You know. Clusters. I believe Google knows the value of clusters. Here's the opening paragraph:
With the explosive growth of the Internet, the workload on servers providing Web, email, and media services has increased greatly. More and more sites are being challenged to keep up with the growing demands and are employing several techniques to avoid overloading their servers. Building a scalable server on a cluster of computers is one of the solutions that is being effectively put to use. With such a cluster, the increasing requests can be easily managed by simply adding one or more new servers to the existing cluster as required. In this article we will look at setting up one such scalable, network load-balancing server cluster using a virtual server via the Linux Virtual Server Project.
I couldn't resist. I have just spent several hours reading a smorgasbord of articles and apparently coordinated comments all over the Internet about Linux being killed off by Apple, blah blah, and other reasons why it is now doomed one way or another, and coincidentally, I'm sure, how great Microsoft is.
Let me be the first to tell you. There is no competition between Apple and GNU/Linux. I use both, and I enjoy both, but I could no more be satisfied with just my PowerBook than I could fly. I know that now for sure, because when I am travelling with just the PowerBook, I miss GNU/Linux so much. I'll tell you exactly what I miss. I miss the freedom and transparency, the feeling that you are flying your own plane, with no hidden stowaways calling home behind your back. I can never have that feeling in any other operating system, and that is the simple truth. Why? Because proprietary operating systems are deliberately opaque, like they have put up a big "Keep Out" sign to keep you from the inner workings.
Let me give you a small example. I had occasion to call Apple about an issue on my PowerBook. In the course of the conversation, I asked the help person where I could find .ssh on my machine. I can find things in Linux fairly well using the terminal, but while MacOSX is sort of like Linux, it isn't identical, and I'd tried to look for .ssh, but I simply couldn't find it. In Finder, it was nowhere to be found. So I asked her how to learn about such things in MacOSX, because I finally had some time, and I wanted to learn. She wouldn't tell me where it was on the computer, saying there were privacy issues. Privacy issues? Well, I said, how do I just get to see the tree of whatever there is, then, like in Linux, so I could find it myself? "Let's see if we can solve it this way first," she said. Now, she was very nice and all, and really knowledgeable and helped resolve my issue, but I had to ask MathFox later how to use the terminal to find .ssh. GUI's are useless if the person that designed it didn't happen to think to create a way for you to do the one thing you want to do. Then the GUI just gets in the way. It's like being blindfolded.
On my Mandriva box, I don't have to ask anybody anything about what is on my computer. I don't need to be an expert. I don't need to ask one. I can just look around. There is nothing in my way. And there is no "Mother, may I?" You can do whatever you want. Corporations may not know that ordinary people care about such freedom, but give us a chance to taste it, and we do care. I know, because I'm an ordinary person and I care.
All of which is to say, I was thrilled to hear that Google is being inundated with student coders wanting to work on Open Source projects. If you believed the media, they tell you that we don't have enough programmers to sustain FOSS. Well, here come plenty more. Thank you, Google, for another great idea. Here's the interview, and I hope you enjoy it.
Interview with Chris DiBona, Open Source Programs Manager, Google Inc., by Marko Djukic
Marko Djukic: First of all, you have been very active on the mailing lists. Do you have
other Google individuals working on this project who you would like to
Chris DiBona: We have a number of people working on the effort, including Greg Stein and Kenan Banks in the Open Source program office. We also have people helping from a variety of other groups like PR, legal and more whose names that I can't share, but their work has been invaluable.
Djukic: How did the idea come about? Another pet project born at Google?
DiBona: Sergey Brin and our Senior VP Alan Eustace wanted to do a large scale program aimed at students for some time. They felt it was a shame for promising computer scientists to spend their summer working jobs that often had nothing to do with coding to make ends meet. Once I started at Google and got settled into my job, they handed it off to me. After Greg and I decided how to best go about running the program, we launched it on code.google.com just barely in time for Summer.
Djukic: You are receiving a lot more applications than the 200 that will be finally
approved, 3200 by the latest count. Did you forsee these numbers and the
DiBona: We hoped for the response. I had thought we would top out at 3000 projects, Greg had hoped for more. Greg was right, and continues to be right, if you get my meaning. It's likely to be well past 4000 when this interview goes live. It's a shame we can only accept 200 of them.
The response has been almost 100% positive, and I think the reason for that is the great number of Mentoring Organizations that have teamed up to initiate these young developers into the open source world. They're the real stars of this project.
Djukic: Could you explain briefly how you will be selecting the 200 projects?
DiBona: Sure, for the most part we won't be. The mentoring organizations will choose their top X applicants and work for them. The rest will unfortunately be rejected. I said 'for the most part' because we might cull some of the obviously incomplete applications and save the organizations the trouble. You should see some of these applications, people are giving us project plans, timelines and exact details on the development they foresee doing, they are quite remarkable.
Djukic: The Summer of Code and similar bounty initiatives by other organizations are
mixing the Open Source community's traditionally non-financial motivations with
very financial ones. What do you see as opportunities and potential conflicts of
DiBona:The opportunity is that we'll have some folks working on open source who might not have anyway. The conflicts are likely those that accompany any mentoring relationship. People don't always get along, open source is no magic cure for that.
It is also worth noting that open source and finance are hardly strangers.
Djukic: Do you have any hopes that other initiatives may be spawned out of the Summer
of Code or for other corporations to be inspired to hold similar programs?
DiBona: I would be thrilled if companies like IBM, HP, Novell, or, heck, even Microsoft, did the same or similar programs.
Djukic: Is Google considering sponsoring FOSS in an ongoing way? If so, do you want
DiBona: Sure, ideas are fine things. Email them my way. I will say one thing, I don't see us as sponsoring open source. We're sponsoring students. Google works -with- the open source development community. Sponsorship implies stewardship, and that's a pretty serious thing.
As to how we are currently working with F/OSS, we've already released a bunch of code into open source, and we're trying to do what we can in organizations like OSDL and various standards committees to do right by the open source developer.
It doesn't stop and end with free software either. We prefer open standards, and by open we mean released under an open license, like the way we released Google sitemaps under a creative commons license.
Djukic: How would you define Google's attitude towards Open Source? To what extent are
you using it internally?
DiBona: It is simple: We love open source. A great number of Googlers have and are donating their 20% time to the open source efforts that we're doing. Google uses a lot of open source. For instance, we run our web/server clusters on Linux, so whenever you visit Google, you're visiting a Linux machine. We run all of our crawl and indexers on Linux, and all of our developer workstations run Linux as well. That's really just the beginning, to catalog all the open source would take up the rest of this interview.
Djukic: You're involved with a number of Google projects which are Open Source and on
SourceForge. Are there any more in the pipeline?
DiBona: We actually don't like to talk about what is coming, we prefer to allow things to release when they are ready and to be a little surprising. We have a number of projects that are approaching release. Software release is a very important part of our work here. We have some solid code here that we hope the world finds useful in day to day development.
Djukic: With the Summer of Code it has been fascinating seeing so many Open Source
advocates and authors under one roof and there were quickly suggestions to set
up permanent forums to increase communication between projects. What do you
think is missing for more such communication?
DiBona: Well, I might sound strange for saying this, but project to project communication isn't really that important for the most part. For instance, Does Drupal really need a dialog with Gnome? Beyond that, I think that communication between projects is pretty good as it is. Projects that interact technologically have to interact personally or they'll both be the weaker for it. Not having the barriers of proprietary development means they can communicate much faster and easier.
Djukic: From your background and experience, what do you believe are Open Source
movement's biggest risks and how could they be addressed?
DiBona: I worry a lot about software patents, and I worry that people are taking a too flexible view into what open source is I think a lot of individuals and companies don't know what open source is, and think they do, and so they say things are open source without really knowing what it means. I worry about that.
That said, I don't worry too much. Linux and open source is very powerful stuff.
Djukic: Why did you join Google? Also, what's it like working there, compared to
DiBona: I know this will sound goofy, but I joined Google because the company has ethics and morals. The "don't be evil" thing isn't just a catch phrase; we really do not want to be evil. I have to say that idealism was very appealing for me when I was weighing the different offers I had. The other companies I considered weren't immoral or anything like that, but I got the feeling that Google is going for something bigger and better than any company running today. I still have that feeling.
Google really is incomparable to anywhere else I've worked, and I've worked some terrific places. Slashdot was very fun, and VA Linux was an amazing adventure for me. But, honestly, Google is Mecca for me. To say more would sound like bragging, and I don't want to do that, but it's a remarkable place to work.
Djukic: PJ saw an interview with Eric Schmidt, and he said the pitch is the scale,
that it's a chance to implement your ideas on a scale you can't achieve
anywhere else. So what's your idea that you wanted to scale? Is Summer of Code
part of it? If only part, to the extent you can speak, do tell.
DiBona: It is part of it. The funny thing about Summer of Code is that when they suggested me spending the amount of money they've allocated to this and the research program in general, a part of me thought they were kidding. The depth of resources that Google has under its command takes a little bit of getting used to, but when you do you can accomplish some fairly amazing things.
Eric wasn't lying, the scale here is huge, daunting sometimes. It makes me want to grab the lapels of peoples' jackets and say "Holy crow, do you know what's going on here?!", but that would make me look like more of a crank than I already do.
Djukic: Are there any ideas too big for Google?
DiBona: I'm sure there are. But I can't think of any. Luckily my lack of imagination won't hold back my co-workers.
Djukic: Thanks again for your time!
DiBona: Thanks for the opportunity. Keep up the good work you guys do on Groklaw.