MySQL's architect discusses open source, database in a cloud, other IT issues

1 2 Page 2
Page 2 of 2

For the person who is purchasing it, the end question has to be at the end of the day, what happens if the company fails? What happens if the developer decides they're no longer interested in the software? I think that the motivations … then also come back into play. Namely, if the software was that important, usually someone else will spring up to support the software being that it's open source. Or that a company can bring a product in-house to support themselves that's a requirement of their business. So I think that the difference between a project that is run by a developer and a company are … about the same as far as whether it's commercial or actually noncommercial.

Now an individual developer might be participating in order to improve their skills and to show off and make those skills visible to a potential employer or potential client. Which of those effects do you think is dominant? Or do you think they balance out? I have asked this question to a number of people. You'll notice that I left out one answer to this, which is brought up every so often. Which is, "Let's make the world a better place." I have found that that is usually not actually that common. And that was the motivator that I often see mentioned more often.

Between the other two, I have found when asking that question, a lot of it had to do with that it was simpler to get it out and have other people extend it and make use of it along with the original developer. And often, that comes back more often from a case of "Oh, I discovered a bug for you." There's a myth sometimes in open source that as soon as you open source something, there's a stampede of people lining up at the door to hand you patches. That's just not the case. Even in the largest of large projects, that doesn't actually happen that often. And the pieces that come in, it's very hard to balance a new piece of code vs. a piece of code you're already writing.

So I think that for most developers, and what I hear most often, is that the real motivator is they get back components which are in the way of bug fixes. At a Usenix group about a year ago, there was a discussion on that. And Mike Olson, now at Oracle, at the time doing Sleepycat, to him the strongest motivator was that he got word of mouth and channel. He got his product more well known. And from that, he was able to bring in more customers. So I think it's really a coin flip between looking at the two.

Each project has a different reason or a different motivator for being out there and used, which goes back to even licensing. When we look at BSD vs. GPL, the strongest piece that I see there is if somebody's going BSD, the entire goal is complete ubiquity. A GPL play is not going for complete ubiquity. It's going for a large base of users. It's going back to try to extend more open source. And generally, there's more of a support leverage mechanism inside of the GPL. But for the BSD guys, they're going after complete ubiquity. So the fact that organizations are more likely to need that ubiquity go after a BSD license. Like say for something like SQLite, Richard Hipp's database. Anyway, I think that the licensing will stack up and will kind of force your original question of, hey, which one is more of the motivator.

So if the BSD license or other nonreciprocal software licenses, like the Apache license, are supposed to promote ubiquity, how come MySQL is the ubiquitous database on every Web-hosting service, on every distribution? It seems like it's all over the place. There's ubiquity of use, and there's ubiquity of embedding. If you've got a library, for instance, and you want that library to be scattered out to the world and used as many places as possible, that's a different market than an actual application that somebody would actually want to make use of. Look at something like a MySQL. Look at the GPL desktops. Look at the kernel. There's a lot of ubiquity -- they're more of an application than say a library or a tiny little piece that makes up an actual product. And I think the difference is how far toward complete ubiquity you actually need.

I'm sure you get this question a lot. But let's say "wannabe open-source developer" is in college and wants to make a name for himself and make a living doing software. What kind of projects do you see out there that are available for people to take on now? There's a couple of different things that I would be motivated by. One, we have the guys who want to be the next big Web site. They want to be Facebook or something like that. And that's an entirely different model that they would go after. And I think it requires kind of a different kind of entrepreneurial kind of feeling to want to do that. For other developers, I think that generally scratching your own needs is one of the best things that you can do. Find something that you need. Find something that you see a need for and that you're going to get passionate about it and go do it. I think that's the best way that you can really fall in love with what you're doing, but at the same time, also find the energy to do it.

When you pick to do open source, and you probably picked to do it in college, that means you're going to give up a few Friday and Saturday nights to work on what you're actually doing. And if you're sitting around later, asking yourself, "Why did I spend my Friday and Saturday night doing that?" you had better really love it.

It was suggested to me recently from a friend who is a little more business-oriented that perhaps open-source developers should actually be looking to fill holes in companies' lineups. So go figure out what the next piece is missing right now that you see companies not quite needing, or companies wanting in particular, and targeting those holes. But for a college student, I think that they should actually go for love and not necessarily money. I think they'll find that when they look back on their efforts, they'll be a little bit happier with the time they spend.

This story, "MySQL's architect discusses open source, database in a cloud, other IT issues" was originally published by LinuxWorld-(US).

Copyright © 2007 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2
7 inconvenient truths about the hybrid work trend
Shop Tech Products at Amazon