As an intern with the Monty Program AB, Vangelis Katsikaros recently had an opportunity to ask the project founder and MariaDB creator, Michael Widenius (aka "Monty"), a variety of interesting questions. Vangelis generously offered to share that conversation exclusively with Linux.com readers. Here is the transcript from that interview.
Katsikaros: So Monty, What are you currently up to?
Widenius: I work in Monty Program AB, which develops MariaDB, a database system. And I also participate in Open Ocean, an investor fund that focuses in community and open source projects.
Katsikaros: In addition to MySQL there is MariaDB. What exactly is MariaDB?
Widenius: MariaDB is what we do in Monty Program. We forked MySQL, after Oracle bought Sun and we evolved it. MariaDB is a full binary replacement for MySQL, so you can simply take your existing MySQL setup and install MariaDB. It's hard for people to understand or believe that the process is straightforward and nothing has to change: the configuration remains the same, the connectors remain the same.
As far as compatibility with MySQL is concerned, our goal is to remain compatible with Oracle, as much as possible in the foreseeable future. When Oracle will release a closed source extension for MySQL, we will also release an open source one. You have to understand that MariaDB is 20 years ahead of Oracle, since we have extensive experience developing the core server and we can take everything they do. On the other hand, they cannot or they don't want to take anything from us, because they are not touching General Public License (GPL).
MariaDB has a lot more features than MySQL; it's faster and has less bugs, so currently there is no reason to use MySQL anymore. However, getting that message out there is very hard, because the MySQL trademark name is very popular. And that is the main reason Sun bought MySQL: for the trademark and the user base.
Katsikaros: Who is the driving force behind MariaDB?
Widenius: Currently it's Monty Program because we have the resources and we are the best people to do it. Our job is to drive MariaDB but the project is open source and there is a community as well. So we are not doing it exclusively, we are doing it as an open source project should be. There other people who have or can get write access to the repository, and we make sure that things don't just happen or lay around after they do happen. This is our role.
Katsikaros: How is the team structured at Monty Program?
Widenius: During the 20 years of MySQL's life, MySQL AB (the company) had gathered extensive human resources and knowledge in order to develop the core server and related software. When Oracle bought Sun, the MySQL people were leaving Oracle like rats leave the sinking ship. But we didn't want this expertise, which has taken years to collect, to spread all around the world. So, Monty Program provides a good home for the MySQL developers.
In Monty Program we currently have all the original MySQL core server developers, except one. A core developer is a software engineer who can work on any, or almost any, part of the server code and successfully provide new features, improvements and bug fixes. And that's not an easy thing to do. Moreover the original architects are with us - about 60% of the code is still mine.
Katsikaros:: And SkySQL, the technical support provider?
Widenius: We have many partners and SkySQL is one of them. It is our most visible partner and we do work closely with them to ensure that both MariaDB and MySQL have have the proper technical support. Moreover, the same thing that happened with MySQL developers, when Oracle bought Sun, happened with the MySQL technical support team. SkySQL is the home for many of the original MySQL technical support team members.
Katsikaros: Tell us a bit more about your investment vehicle Open Ocean.
Widenius: Open Ocean is an investment company and we just closed our third fund of 40M Euro. We focus on companies that have a strong community and have investment potential, that usually means we expect to get 10x the money back. We are different from other venture capitals because we know open source and can give the companies much more than just money.
We try to see the investment from the founder's point of view and find what is best for both parts. The founders are an essential part of a company, since they usually are the heart and passion behind the company and its products. Other investors don't see it that way: they believe the founder is something that exists in the beginning and then real business people get to drive the company. That is not our approach. I personally had experience with investment companies, with MySQL, some good and some bad. We use this experience, so that the founders are satisfied in the end and not only during the process.
Katsikaros: Monty Program is an almost completely virtual company. What does that mean and what are the challenges of running a company with staff working remotely from all around the world?
Widenius: The most important issue is to find people that can actually work from home - not everyone can do that. It actually works better with people who have a girlfriend/boyfriend or who are married. Developers can easily work way too much, so it is important that they don't get crazy sitting home all day and not talking with people.
Another important thing in virtual companies are meetings. Since the daily contact is missing there is the need to associate each individual with the rest of the group. This also helps conflict resolution, since it's easy for two people, that haven't met before, to misunderstand each other over email or phone discussions only. That's why we are here now (in the Athens MariaDB developer meeting). We have two meetings each year, new locations preferably just to have some fun. We started in 1995 so that's a lot of meetings!
Moreover, it is important that people don't feel alone. What we did with MySQL and we are going to start again in Monty Program, is to have one expert whose job is to discuss with each employee and provide psychological support. These discussions are of course private, but this person can give some feedback to us and tell us if someone is not feeling well. That's something we stopped in MySQL and that was unfortunate.
Katsikaros: We heard a rumor that the company is employee-owned and that staff get a nice share in the profits of the company. Is this true?
Widenius: Yes. The idea is to create a company where everyone is treated as equals. With former MySQL employees we created a set of rules six years ago, and we use them today. We have published the company policy online; actually that was the very first thing we did for Monty Program, to share with the world that we are not doing it for the money. When we make profit, 50 percent of the profit goes to the employees and 50 percent is kept for the bad days. I am also working under the same rules as everyone else.
Katsikaros: How does Finnish / Scandanavian company culture differ to that of the UK or US?
Widenius: The employee owned company is quite new; for example, Harley Davidson has done something similar. However, treating people right in the working environment could vary from culture to culture. When we started we had a kind of Scandinavian culture and then we got managers who were not used to that, most of the from the US. Then things began to take a wrong turn and employees were treated more like slaves than human beings. And that's not very nice.
We now want to make sure that this will not happen again. This also applies to the business side of things. The rules ensure that everybody can be voted down. A company can't have a CEO that does ridiculous things, so the company must have the ability to vote him down.
Widenius: There are a couple of reason for these new systems. First, it's hard to get bigger and faster machines anymore, so there is the need for clusters. MySQL has a good replication system but not good enough, there are some limitations. In MariaDB, we have sped up replication but we still haven't solved all the bottlenecks - we are working on them.
The other reason is that you need more flexible schemas. One example is online shops: it's easy to create one with SQL but it's hard to store different kinds of items that have different attributes like a computer and a T-shirt. In this case, having a no-SQL database, that is just a key-value store, is an easy solution. You then can run into different problems, but still you can solve this one thing easily. To cover the need for no-SQL features, in MariaDB we added dynamic columns. Of course it will not be as good as a dedicated no-SQL solution, but it should be good enough for most cases. When it comes to the volume of data one handles, most companies are not in the level of Facebook, Google or Twitter, and want something that is really simple to develop and maintain, instead of getting an extra 10 or 20 percent speed.
Katsikaros: So what can we expect from MariaDB 5.6 and beyond?
Widenius: We'll spend our time on two areas. First, MariaDB will have everything MySQL 5.6 will have. Secondly, we will improve replication because it's on high demand - we are currently working on in it both 5.3 and 5.5. The release plan is still open so both the customers and the community is welcome to tell us if they need anything, and if we can put it in the timeframe we will do that.
Vangelis Katsikaros does web development and operations at Adzuna and is an intern with the Monty Program AB.