MySQL Community Edition and Website Changes

I posted earlier about the MySQL announcement (see http://www.mysql.com/news-and-events/news/article_1171.html )and how I see it affecting Enterprise level users.

However, as someone who uses it for work other than my day job, some at the hobby level and some above that level, the Community edition is also important to me.

The way I see it, the changes are great for people who use the Community edition.

Wait, there will be 2 codebases, and they have not doubled their staff, so won’t there actually be less development? Are they expecting the community to write all the code for the Community edition?

Kind of. I do know that MySQL has been hiring lots of people, but I’m not an employee, so I have no idea of their growth. There will be 2 codebases, but that works out for the best for everyone. Now, there will be 2 priority lists — things that Enterprise customers really want, and things that Community users really want.

So Community users do not have to hear “Sorry, that’s not a priority, but if you pay us we’ll make it one.” Community users can get the features that are a priority for them, and Enterprise users can get the features that are a prioirty for them, too.

If a priority is high for Enterprise, and lower for Community, it can be developed in Enterprise first, and moved to Community. And, of course, vice versa. The part where the community coding comes in is that not only does MySQL have priorities for Community development, but if a user wants to submit something, they can, thus changing the priority order, because the work is mostly done, and all MySQL needs to do is integrate it.

But Community users do not have to suffer with a package that has more code (and thus is a bit bloatier) just because someone paid MySQL USD $1 million to extend the maximum table size to 1 terabyte. Nor do they have to wait for development on something like that to finish before other features get implemented.

The announcement also had some poor wording choices. The Community edition will be as stable and reliable as ever. The truth is that new features have bugs, and there will be more new features in Community than in Enterprise. As well, both Community and Enterprise are tested quite thoroughly. But Enterprise will be tested to enterprise-level standards — for example, throughput could be tested and MySQL could say “buy Enterprise! It can handle 10,000 queries per second!”

My company is using the Community Edition, and we have over 3600 queries per second being run — and that’s an AVERAGE. So there’s no question in my mind that the Community Edition is stable and reliable enough to be used at an “enterprise” level. That quality will NOT go away.

I’m not quite clear on what the licensing will be for the Enterprise and Community Editions, but I would think that MySQL will keep the ability to embed and redistribute both editions. I don’t know for sure, but I think it would be a bad business move not to.

I have had a few people come to me and say “Did you see the announcement? How could MySQL do this? They’re forcing everyone that’s not a hobbyist to buy the product!!!!” Everyone predicted the end of InnoDB when Oracle bought it — I said “it’s no big deal” (see http://sheeri.net/archives/38).

Similarly, this is not a loss for the MySQL community. It’s actually a gain for both Enterprise and Community users. I’m not a MySQL employee, so I don’t know everything that’s going on behind the scenes, but I have used and administered MySQL for over 5 years in real life situations and environments, and I can tell you that this is a win. We will hear lots less of “well, we could do that, but we’re programming something really big right now, so it will have to wait”.

As for the website changes, my one complaint is that at http://mysql.com/products/, the Community edition isn’t listed — there’s a link to the “Community” site that’s hard to miss on the right-hand side, and a menu item similar to “Products” at the top nav bar called “Community” — but it doesn’t seem consistent. Either you have “Products” and “Services” and you have a “Free download” section under “Products”, or you have a section with “Enterprise” and a section with “Community”….mixing the 2 is bad UI.

But if that’s the worst I have to say, then the changes are pretty good. And it’s more obvious that http://dev.mysql.com is for Community stuff….and when I went there, I found the polls….NEAT!

I posted earlier about the MySQL announcement (see http://www.mysql.com/news-and-events/news/article_1171.html )and how I see it affecting Enterprise level users.

However, as someone who uses it for work other than my day job, some at the hobby level and some above that level, the Community edition is also important to me.

The way I see it, the changes are great for people who use the Community edition.

Wait, there will be 2 codebases, and they have not doubled their staff, so won’t there actually be less development? Are they expecting the community to write all the code for the Community edition?

Kind of. I do know that MySQL has been hiring lots of people, but I’m not an employee, so I have no idea of their growth. There will be 2 codebases, but that works out for the best for everyone. Now, there will be 2 priority lists — things that Enterprise customers really want, and things that Community users really want.

So Community users do not have to hear “Sorry, that’s not a priority, but if you pay us we’ll make it one.” Community users can get the features that are a priority for them, and Enterprise users can get the features that are a prioirty for them, too.

If a priority is high for Enterprise, and lower for Community, it can be developed in Enterprise first, and moved to Community. And, of course, vice versa. The part where the community coding comes in is that not only does MySQL have priorities for Community development, but if a user wants to submit something, they can, thus changing the priority order, because the work is mostly done, and all MySQL needs to do is integrate it.

But Community users do not have to suffer with a package that has more code (and thus is a bit bloatier) just because someone paid MySQL USD $1 million to extend the maximum table size to 1 terabyte. Nor do they have to wait for development on something like that to finish before other features get implemented.

The announcement also had some poor wording choices. The Community edition will be as stable and reliable as ever. The truth is that new features have bugs, and there will be more new features in Community than in Enterprise. As well, both Community and Enterprise are tested quite thoroughly. But Enterprise will be tested to enterprise-level standards — for example, throughput could be tested and MySQL could say “buy Enterprise! It can handle 10,000 queries per second!”

My company is using the Community Edition, and we have over 3600 queries per second being run — and that’s an AVERAGE. So there’s no question in my mind that the Community Edition is stable and reliable enough to be used at an “enterprise” level. That quality will NOT go away.

I’m not quite clear on what the licensing will be for the Enterprise and Community Editions, but I would think that MySQL will keep the ability to embed and redistribute both editions. I don’t know for sure, but I think it would be a bad business move not to.

I have had a few people come to me and say “Did you see the announcement? How could MySQL do this? They’re forcing everyone that’s not a hobbyist to buy the product!!!!” Everyone predicted the end of InnoDB when Oracle bought it — I said “it’s no big deal” (see http://sheeri.net/archives/38).

Similarly, this is not a loss for the MySQL community. It’s actually a gain for both Enterprise and Community users. I’m not a MySQL employee, so I don’t know everything that’s going on behind the scenes, but I have used and administered MySQL for over 5 years in real life situations and environments, and I can tell you that this is a win. We will hear lots less of “well, we could do that, but we’re programming something really big right now, so it will have to wait”.

As for the website changes, my one complaint is that at http://mysql.com/products/, the Community edition isn’t listed — there’s a link to the “Community” site that’s hard to miss on the right-hand side, and a menu item similar to “Products” at the top nav bar called “Community” — but it doesn’t seem consistent. Either you have “Products” and “Services” and you have a “Free download” section under “Products”, or you have a section with “Enterprise” and a section with “Community”….mixing the 2 is bad UI.

But if that’s the worst I have to say, then the changes are pretty good. And it’s more obvious that http://dev.mysql.com is for Community stuff….and when I went there, I found the polls….NEAT!

MySQL Enterprise & Website Changes

OK, so I am excited. Yesterday MySQL announced MySQL Enterprise (http://www.mysql.com/news-and-events/news/article_1171.html). Now, I had not been so keen on MySQL Network — I had not realized the level of service MySQL will go to. Does Oracle or Microsoft offer schema review as part of a service package? I do not think so.

Basically, MySQL Enterprise is really a full suite of enterprise solutions for companies that need them. Many folks know how hard it can be to convince their boss that a DBA (or team of DBA’s) is needed. Many folks know how hard it is to be a DBA, and many folks know how hard it is to be a developer or sysadmin with DBA duties.

It’s easier to convince a company to spend money on a support contract than it is to spend money on headcount. And with MySQL, companies get so much for their money.

Oh, sure, there is what we already know — the enterprise binary, which is rigorously tested against enterprise-level demands. The “GA” or “Generally Available” (which will now be the “Community” edition) source code/binaries are tested for functionality, but not necessarily for things like throughput. (I have no idea if the Enterprise binary is tested for throughput, it’s just a good example of the kind of thing that people want in enterprise-level software).

There is also what anyone would expect from a support contract — access to updates, incident response (phone and web), emergency help, a knowledgebase, etc.

But looking at the features (http://mysql.com/products/enterprise/features.html), there’s a whole world of services that as far as I know, very few software companies are offering.

Let me say that again — MySQL offers features in their support contracts that very few other software companies offer. As far as I know, you cannot buy all of these from ANY of the enterprise-level database vendors.

MySQL offers consultative services, including schema reviews, performance tuning and SQL code reviews. Yes, that’s right, MySQL offers the service of reviewing your SQL queries, including procedures and server extensions.

The feature list can be seen here:

http://mysql.com/products/enterprise/features.html

All in all, very exciting for those who use MySQL in an enterprise-level capacity (which I do at work).

OK, so I am excited. Yesterday MySQL announced MySQL Enterprise (http://www.mysql.com/news-and-events/news/article_1171.html). Now, I had not been so keen on MySQL Network — I had not realized the level of service MySQL will go to. Does Oracle or Microsoft offer schema review as part of a service package? I do not think so.

Basically, MySQL Enterprise is really a full suite of enterprise solutions for companies that need them. Many folks know how hard it can be to convince their boss that a DBA (or team of DBA’s) is needed. Many folks know how hard it is to be a DBA, and many folks know how hard it is to be a developer or sysadmin with DBA duties.

It’s easier to convince a company to spend money on a support contract than it is to spend money on headcount. And with MySQL, companies get so much for their money.

Oh, sure, there is what we already know — the enterprise binary, which is rigorously tested against enterprise-level demands. The “GA” or “Generally Available” (which will now be the “Community” edition) source code/binaries are tested for functionality, but not necessarily for things like throughput. (I have no idea if the Enterprise binary is tested for throughput, it’s just a good example of the kind of thing that people want in enterprise-level software).

There is also what anyone would expect from a support contract — access to updates, incident response (phone and web), emergency help, a knowledgebase, etc.

But looking at the features (http://mysql.com/products/enterprise/features.html), there’s a whole world of services that as far as I know, very few software companies are offering.

Let me say that again — MySQL offers features in their support contracts that very few other software companies offer. As far as I know, you cannot buy all of these from ANY of the enterprise-level database vendors.

MySQL offers consultative services, including schema reviews, performance tuning and SQL code reviews. Yes, that’s right, MySQL offers the service of reviewing your SQL queries, including procedures and server extensions.

The feature list can be seen here:

http://mysql.com/products/enterprise/features.html

All in all, very exciting for those who use MySQL in an enterprise-level capacity (which I do at work).

Open Source Removes the Need for Warez . . . . ?

I was listening to Practical Web Design Magazine’s podcast on Free Web Designer’s Toolkit, and towards the end he said something along the lines of:

With all this great open source software, there’s no need to buy or crack expensive software anymore.

I thought it was an interesting statement. I do not believe WAREZ will ever go away, because many like to have the expensive software as a bragging right — or even boast that they have a cracked version.

However, it does keep the honest people honest. If you want to do some photo editing, you can use the GIMP. If you want to write a document, spreadsheet or presentation, you can use OpenOffice. And these programs are compatible; they can read and save in proprietary formats as well.

It is getting to the point where not only are there excellent open source programs for anything you want to do, there are also “good enough” open source (or closed, but freeware) programs for almost anything. For instance, I was looking into open source versions of money management software (such as Quicken) for corporations and I found some web-based versions, which is great for organizations that want to be able to share information without having multiple software licenses.

Stealing will never go away; however, with less stealing, companies will be able to focus more on the products. And perhaps they’ll realize that if they go open source, “stealing” becomes a different beast, depending on the pricing model. It’s much more difficult to steal a support contract, which may involve a serial # of a machine, than a software key. Or consulting support, for that matter.

What do you think?

I was listening to Practical Web Design Magazine’s podcast on Free Web Designer’s Toolkit, and towards the end he said something along the lines of:

With all this great open source software, there’s no need to buy or crack expensive software anymore.

I thought it was an interesting statement. I do not believe WAREZ will ever go away, because many like to have the expensive software as a bragging right — or even boast that they have a cracked version.

However, it does keep the honest people honest. If you want to do some photo editing, you can use the GIMP. If you want to write a document, spreadsheet or presentation, you can use OpenOffice. And these programs are compatible; they can read and save in proprietary formats as well.

It is getting to the point where not only are there excellent open source programs for anything you want to do, there are also “good enough” open source (or closed, but freeware) programs for almost anything. For instance, I was looking into open source versions of money management software (such as Quicken) for corporations and I found some web-based versions, which is great for organizations that want to be able to share information without having multiple software licenses.

Stealing will never go away; however, with less stealing, companies will be able to focus more on the products. And perhaps they’ll realize that if they go open source, “stealing” becomes a different beast, depending on the pricing model. It’s much more difficult to steal a support contract, which may involve a serial # of a machine, than a software key. Or consulting support, for that matter.

What do you think?

Open Source Business Model “Ratings”

Back when I posted How “Open” Do You Have To Be To Be Open Source?, Mårten Mickos e-mailed me asking what I thought of various models of charging for open source, and how I thought they ‘rated’.

Or should we just say “whatever business model, as long as it works and users get what they want”?

Q: Why should businesses charge at all?
A: Because people work hard and deserve to get paid for that work, and folks should give up a part of their own hard-earned money because they get value out of that work.

Q: But why do we need to be paid at all?
A: There are expenses to meet — business expenses, and every employee has personal expenses.

In an ideal world, there would be a free exchange of ideas, services and goods. Unfortunately, this only works for small models, such as a family where everyone pitches in. Communism on a larger scale tends to fail, because someone has to “play Root” and control what gets doled out and when.

As someone with strong socialist tendencies, I tend to feel that we should all try to provide for each other when we can. This is why I like open source very much. Imagine a car dealer giving you a car for free, and then charging for repairs and maintenance. Sure, you could think the dealer would be more likely to give you a bad car, so he could make lots of money, but that’s not the mentality behind open source.

So what models are good for open source? Whatever can keep the company going strong and keeping the overall spirit of open source — helping each other — alive. The license that embedded software end-users buy helps pay for the development that everyone benefits from, even application software end-users who do not buy a support contract.

Being a relative newcomer to the stage, but having some business sense, what would I do if I were designing a business model for an open source company? I think the spirit of open source suggests some kind of “giving back” — but how does one determine how much to give back? Who would be in charge of it? Would there be a certain number of questions on any forum or mailing list one would have to answer correctly? Or a certain number of related blog posts? What about a banner on the website that says “powered by”?

Having worked in development (that’s the fundraising type of development, not the coding type of development) I can say that many people use volunteer goods and services and give nothing back. I like to give time and/or money to organizations I find useful, for me or for others. I would hope that those who can, give back, in the ways they can.

However, of course, Marten needs to eat. So I think in the spirit of open source, any of the following are acceptable, so long as the source remains open and the company keeps the needs of the users in mind:

1) Suggesting donations.
2) Requiring licenses for commercial use (if you make money, you have to pass some along to us).
3) Requiring licenses for special types of usage (ie, embedded).
4) Requiring that the technology be visible (ie, banner “powered by…” on the website and explicit mention of the open source technology where appropriate). This model can be combined with a free model — for instance, “if you tell people you use us, it’s free. Otherwise, pay us.” This method appeals to me the most, but of course it would not work for all technologies or software.
5) Charging for support*
6) Charging for consulting*
7) Charging for packaging (ie, Linux with a library of rpms built that virtually guarantees compatibility)
8) “Lite” or “Express” versions of software for free, with full-featured versions for pay — “freeware” or “shareware”. Trial versions that expire do not count.

MySQL has a great model, in my opinion, because you can buy a license if required, you can buy support, you can buy consulting, you can buy training, and you can buy packaging (MySQL Network gets you a more thoroughly tested binary). However, they offer free webinars, free software, free forums and mailing lists….and free access to their developers, who appear on the lists and forums and fix the bugs tracked.

As much as I do not like to part with my hard-earned cash, most medium-to-large businesses can afford $600/year per server (that they want help with) for the most basic MySQL support. I will not bother comparing database software licensing or purchase pricing; that has been done many times over.

Mostly, I think any model that is actually in the spirit of open source (trial versions that expire are not, although I cannot imagine those would be open source, given that you could then change the code that expires the features) is OK, and one that does not charge excessively….although that, of course, is hard to define as well.

* provided that these are not required to get a working setup in place. For instance, if you need support or consulting to get the product working in the first place, that’s akin to just charging for the software.

Back when I posted How “Open” Do You Have To Be To Be Open Source?, Mårten Mickos e-mailed me asking what I thought of various models of charging for open source, and how I thought they ‘rated’.

Or should we just say “whatever business model, as long as it works and users get what they want”?

Q: Why should businesses charge at all?
A: Because people work hard and deserve to get paid for that work, and folks should give up a part of their own hard-earned money because they get value out of that work.

Q: But why do we need to be paid at all?
A: There are expenses to meet — business expenses, and every employee has personal expenses.

In an ideal world, there would be a free exchange of ideas, services and goods. Unfortunately, this only works for small models, such as a family where everyone pitches in. Communism on a larger scale tends to fail, because someone has to “play Root” and control what gets doled out and when.

As someone with strong socialist tendencies, I tend to feel that we should all try to provide for each other when we can. This is why I like open source very much. Imagine a car dealer giving you a car for free, and then charging for repairs and maintenance. Sure, you could think the dealer would be more likely to give you a bad car, so he could make lots of money, but that’s not the mentality behind open source.

So what models are good for open source? Whatever can keep the company going strong and keeping the overall spirit of open source — helping each other — alive. The license that embedded software end-users buy helps pay for the development that everyone benefits from, even application software end-users who do not buy a support contract.

Being a relative newcomer to the stage, but having some business sense, what would I do if I were designing a business model for an open source company? I think the spirit of open source suggests some kind of “giving back” — but how does one determine how much to give back? Who would be in charge of it? Would there be a certain number of questions on any forum or mailing list one would have to answer correctly? Or a certain number of related blog posts? What about a banner on the website that says “powered by”?

Having worked in development (that’s the fundraising type of development, not the coding type of development) I can say that many people use volunteer goods and services and give nothing back. I like to give time and/or money to organizations I find useful, for me or for others. I would hope that those who can, give back, in the ways they can.

However, of course, Marten needs to eat. So I think in the spirit of open source, any of the following are acceptable, so long as the source remains open and the company keeps the needs of the users in mind:

1) Suggesting donations.
2) Requiring licenses for commercial use (if you make money, you have to pass some along to us).
3) Requiring licenses for special types of usage (ie, embedded).
4) Requiring that the technology be visible (ie, banner “powered by…” on the website and explicit mention of the open source technology where appropriate). This model can be combined with a free model — for instance, “if you tell people you use us, it’s free. Otherwise, pay us.” This method appeals to me the most, but of course it would not work for all technologies or software.
5) Charging for support*
6) Charging for consulting*
7) Charging for packaging (ie, Linux with a library of rpms built that virtually guarantees compatibility)
8) “Lite” or “Express” versions of software for free, with full-featured versions for pay — “freeware” or “shareware”. Trial versions that expire do not count.

MySQL has a great model, in my opinion, because you can buy a license if required, you can buy support, you can buy consulting, you can buy training, and you can buy packaging (MySQL Network gets you a more thoroughly tested binary). However, they offer free webinars, free software, free forums and mailing lists….and free access to their developers, who appear on the lists and forums and fix the bugs tracked.

As much as I do not like to part with my hard-earned cash, most medium-to-large businesses can afford $600/year per server (that they want help with) for the most basic MySQL support. I will not bother comparing database software licensing or purchase pricing; that has been done many times over.

Mostly, I think any model that is actually in the spirit of open source (trial versions that expire are not, although I cannot imagine those would be open source, given that you could then change the code that expires the features) is OK, and one that does not charge excessively….although that, of course, is hard to define as well.

* provided that these are not required to get a working setup in place. For instance, if you need support or consulting to get the product working in the first place, that’s akin to just charging for the software.