All of this talk of Drizzle (a fork of the MySQL server by Brian and Monty) has reminded me of a topic I have wanted to discuss for quite some time…
One of the things that sets MySQL apart (in, IMHO, a very bad way) from other Open Source database projects/products such as PostgreSQL (license) and Firebird (license) is that the MySQL documentation is NOT Open Source. The MySQL documentation is and always has been copyright MySQL AB, and “… use of this documentation, in whole or in part, in another publication, requires the prior written consent from an authorized representative of MySQL AB”. This presents a major impediment to forking the server: who wants to re-write many hundreds of pages of documentation on things that haven’t even changed? Even if you’re OK with all of your new code being GPL (and anyone forking ought to be), and never being able to dual license or re-license your MySQL fork (oh well), you will have to start with no documentation, or publish an errata against the official MySQL documentation (which will only go so far).
Does this mean that MySQL is not really Open Source? I would say not exactly, although I could probably be convinced either way. Others may say yes. But it does go a long way to making the point that some things may not be quite as “open” as they initially appear. What do you think? Can a piece of software really be Open Source while its primary/only documentation is not? Did you know that the MySQL documentation was not Open Source?
That is exactly the reason why debian does not ship the MySQL documentation. The MySQL manpages had the same problem until 5.0.51.
I believe that the issue that self-identified Free Software developers have with the term Open Source is that in their opinion just having access to the source code is not enough. RMS has said that “Free Software requires free documentation”. So MySQL is Open Source, but perhaps there’s more involved than just source access.
In MySQL’s defense, I don’t believe that FOSS techniques really work for documentation: Wikis and other attempts to get drive-by docs in the same way as projects get drive-by patches don’t produce high-quality docs, and docs currently can’t be updated as fast as the code (tools issues). The only projects with good standard docs develop their docs alongside their code, and have strong links between developers and document maintainers (often a core developer is a documentation writer).
This has been discussed on the drizzle mailing list and a wikia wiki has been setup to start handling documentation efforts. I have been very forward about my wish to see this work under a creative common effort.
Here is the thing though… if you want it, you are going to have to help write it. There is no assigned folks from Sun that will work on this at the moment. So any of you who believe this is needed are going to have to put some effort behind it.
I do have to wonder, if you’re scrapping half the features, reorganizing the code, etc., AND you have to completely rewrite all of the documentation on top of that, why start with MySQL as a base for Drizzle at all, as opposed to e.g. PostgreSQL?
I’m just having trouble seeing Drizzle as a viable project, given the current climate, despite my desire to contribute to it in the form of making all my dreams come true re. features and stability.
The “thing is” that we shouldn’t have to write it. MySQL may be ‘open source’, but it isn’t ‘open software’. With all the talk recently of proprietary extensions, the documentation licensing issues, the whole ‘enterprise’ vs ‘community’ debacle, well, MySQL has totally shown that they are not ‘Open Software’ company.
Yes, I knew the documentation was not Free, and no I never liked it. But let me say that the MySQL docs are really amazing. (Although the search feature is not.)
I don’t think that the earlier commenter’s statement about docs devel being slower than code devel is necessarily true, though I would trust that if told so by a member of the docs team. They have a pretty sweet setup as I understand.
Eric Bergen » Sun’s official support for Drizzle means more than just code.
This is a similar problem as the Firebird project suffers from. The base documentation stems from the Interbase area and is copyrighted. The Firebird team is working hard to re-create the manual, but it’s a huge effort and until it’s finished, finding a specific information is really hard.