Open Development vs Making a Big SplashPeter Zaitsev
I find it very interesting how Sun does not get the very basic principle of true community Open Source development – you’ve got to give up on making a big splash.
Traditional close source company often develop product in the secret and when it comes out as a surprise for computers and making a big splash for the users. Does it remind you something ? Yes! this is exactly how Innodb Plugin was released last year or MySQL 5.4 performance improvements this year.
Community did not know about them and did not participate early in this efforts.
I believe if you want to learn true community respect, you’ve got to respect (and so involve) community. You should show your early and buggy code and let community play with it and complain. This is true Open Source development and it takes guts.
I should praise Drizzle for having code available from very early days. I should praise Monty for having Maria storage engine tree available from its early and buggy days. I should praise Falcon and PBXT teams which were not shy to show us multiple redesigns they had to go through. This earns my respect and this is how I think Open Source development should be done.
At Percona I think we’re doing relatively well – our trees are public and lauchpad and I do not think we had ever a project which was cooking internally for more than a month. As soon as we got something which was interesting enough to start playing, such as Xtrabackup we got it out, just stating this is very early code.
Google does not get very many points on this one – I think they are very obsessed with “everything Google does must be great” policies which prevents them from releasing code before it is complete and properly tested at least internally. Though I think Google do not position themselves as doing Open Source development but rather being kind enough to publicly share the development which is done internally. This is fair and I appreciate it.
So why Sun and Oracle are after big splashes ? Well I think this is the only way tradition companies know how to market the stuff. If project starts from single line of code and growths day by day to completion it is very hard to build excitement around it. There is no big news just a slow process.
I would argue however releasing certain code as Stable/GA should be enough of event for masses – it is not however enough for community which see it just as minor incremental development from Initial Alpha/Beta releases.