В течение на години OpenOffice.org беше стопанисван и развиван от Sun Microsystems. Което беше хубаво – фирмата наливаше в него хиляди часове квалифициран програмистки труд, и продуктът на практика настигна почти монополния Microsoft Office. Но беше и лошо. Защото политиката на Sun на строг контрол върху продукта изискваше контрибуторите да се отказват от авторското си право върху техните парчета код, в полза на Sun, дори без трудът им да бъде платен. А и защото “контролът заради контрол” върху приемания код нерядко водеше до това чудесни приноси да не бъдат включвани, просто заради корпоративната политика.
Нещата започнаха да се разчупват, когато Sun лицензира кода на OpenOffice.org под няколко пермисивни лиценза, между тях и LGPL. Само по себе си това не промени политиката на прием, но позволи на Novell да създаде набор допълнения към кода на пакета – така нареченият Go-oo. (Същото име се използва понякога и за пакета, компилиран с тези добавки, но по-често се използва оригиналното.) Доста бързо много популярни дистрибуции – Debian, Mandriva, Ubuntu, Gentoo и пр. – започнаха да използват частично или изцяло Go-oo версията.
Със закупуването на Sun от Oracle се появиха съмнения – доколко Oracle ще продължи да инвестира в свободен софтуер. Хора, които познават компанията, изказаха съмнения. Някои ходове на Oracle (например обявяването на ODF плъгина на Oracle за платен) ги засилиха. А OpenOffice.org е един от ключовите пакети в свободния софтуер. Без него функционалността на свободния софтуер ще бъде сериозно увредена. Затова и започна търсене на алтернативи.
Преди няколко дни (на 28 септември, да бъда по-точен) част от общността зад OpenOffice.org създаде фондация, наречена The Document Foundation. Сред тях са Novell, RedHat, Canonical и Google. Целта й е да осигури развитие на пакета, което да не е зависимо от никоя отделна компания, и да не изисква прехвърляне на авторски права. Oracle, които сега са формално притежатели на кода, бяха поканени да станат членове на фондацията, и да й прехвърлят търговската марка OpenOffice.org. (Не зная дали ще се съгласят, и дали изобщо ще коментират поканата. Ще видим.)
Фондациите и сродните им общности засега се показват като най-успешната форма за подкрепа и развиване на свободен софтуер. Ядрото Linux се развива от общност, под егидата и с частичното финансиране на фондация. Проектът GNU – също. Голям брой успешни дистрибуции се съставят от фондации или общности. При тях рискът собственикът, който притежава проекта, да промени по някаква причина приоритетите си и да внесе нежелани промени в проекта, клони към нулата.
Затова много се надявам Oracle да приеме поканата, да се присъедини към фондацията и да й прехвърли марката OpenOffice.org. Ако това не се случи, проектът ще бъде развиван под провизорното име LibreOffice. (Лицензът LGPL позволява това.) И вероятно бързо ще надмине като функционалност пакета на Oracle, и ще им демонстрира колко по-изгоден е изборът да се присъединят.
Един друг софтуер, който при закупуването на Sun попадна под контрола на Oracle, е най-популярната свободна база данни – MySQL. Отначало опасенията за съществуването й бяха големи, тъй като тя е пряк конкурент на основния продукт на Oracle – едноименната база данни. От корпорацията се опитаха да ги успокоят, като казаха, че двете бази данни са насочени към различни пазарни сегменти, и много повече се допълват, отколкото се конкурират. Аналитиците в общността обаче продължиха да са скептични, с аргумента, че Oracle вероятно ще забави или спре инкорпорирането на нови възможности от висока класа в MySQL, а може би дори постепенно ще изостави развиването на свободния клон на пакета, и ще развива само комерсиалния. (Двойният лиценз, под който е MySQL, го позволява.)
MySQL не е толкова ключово критичен за екосистемата на свободния софтуер, защото има сравнително сериозен конкурент там – базата данни PostgreSQL. Въпреки това обаче, ако пакетът бъде “закрит”, щетите ще са огромни. Тъй като той е ключов елемент от стека LAMP (Linux / Apache / MySQL / Perl,Python or PHP), ще се наложи огромна част от съществуващите уебсайтове да бъдат пренаписани, и доверието в свободния софтуер ще бъде сериозно подкопано. Затова за опазването възникнаха два проекта.
Единият се нарича Drizzle, и представлява доста орязана версия на MySQL 6.0. Поддържа се от общност от програмисти. Целта му е да бъде по-компактен и по-пъргав от MySQL. Има и някои предимства, но липсващите възможности не му позволяват да бъде “drop-in” замяна на MySQL в обозримото бъдеще.
Другият се нарича MariaDB, и е движен от фирма, основана от създателя на MySQL – Михаел Видениус. Наскоро след продаването на MySQL на Sun, Монти (както е по-известен) напуска Sun, организира нова фирма и се заема да пише точна замяна на MySQL. Целта е продуктът да бъде поддържан от общност, и да се разпространява под лиценза GPL. Към момента стабилната му версия е 5.1.50, и е на практика съвместима замяна на MySQL 5.1. Целта на проекта е да пуска успоредно с MySQL версии, които да са негови съвместими замени.
… Не зная дали Oracle ще се окаже такава заплаха за свободния софтуер под негов контрол, каквато изглежда към момента. Може би да. Може би не.
Но се радвам да видя, че общността вече взема мерки подобни заплахи да бъдат елиминирани. А тези мерки са най-сигурната гаранция, че заплахите, дори ако съществуват, няма да имат изгода да опитат да се реализират.
Спете спокойно, деца. Винаги ще има утре. 🙂
По време на УебТех конференцията тази година (2010) във Велико Търново, Монти обясни, че е напуснал Sun точно поради разногласията с Oracle за развитие на MySQL. Не си спомням точно, но е имало готови модули, които трябвало да се пуснат в поредната версия, но от Oracle са отказали или нещо такова. Имало е и големи проблеми с комуникацията между екипите и всичко това с идеята за бъдещето развитие на MySQL. Основната идея на Монти е MariaDB да бъде drop-in replacement, но пак по негова препоръка, все още не трябва да се използва в production среда.
OpenOffice не вярвам да пострада. Встрани е от бизнеса на Oracle, и всеки има интерес да се покаже добър от време на време. Така че, ако не го подпомагат активно, поне няма да му пречат.
С MySQL нещата стоят по съвсем друг начин, защото е конкурент на основния им бизнес. Колкото и да приказват, че били насочени към различни пазарни сегменти, не е баш съвсем така. И ако MySQL продължи да се развива, сегментите току виж бързо станали по-малко различни 🙂
Ако аз бях Oracle, щях тихомълком да преча на развитието на MySQL до нивото на пряк конкурент.
Има ли официално изявление на Oracle по отношение на MySQL? А може би Oracle иска малките клиенти, които няма пари за Oracle? Тогава Oracle ще им продава приложения, базирани на MySQL? А и отворения софтуер се нуждае от пари, за да го има. MySQL не наедря ли достатъчно, така че и разходите по съществуването на проекта да са големи?
Може би това е естественото развитие на (свободния) софтуер – отначало да е свободен, а да може да стане първоначалното натрупване, а като наедрее, да бъде поет от професионален мениждмънт, и пак да си остане отворен. Поризводните бизнеси от този софтуер обаче могат да си носят печалбите.
Какъв е дяла на PostgreSQL спрямо MySQL? Аз имам впечатление, че където има PostgreSQL го има и MySQL, но обратното не е вярно.
Надявам се MySQL да не “умре” — няма да е добре за милионите PHP/MySQL уебсайтове…
@jwalker: Софтуерът не е като материалните стоки. Страшно лесно е да се направи някакъв Oracle Lite, примерно – няколко дни рязане на възможности, и един-два месеца тестване от шепа хора. Хем ще е по-естествен преход към “пълния” Oracle. Така че мисля, че Oracle просто изчакват известно време, за да се забравят съмненията на Еврокомисията дали те ще развиват MySQL (ако бяха решили, че няма да стане, щяха да забранят купуването на Sun). Силно скептичен съм, че Oracle имат реално намерение да развиват MySQL, още повече пък като отворен. Точно същото важи и за всички други свободни проекти, които купиха със Sun.
А най-тъжното е, че Oracle не са зли или демонични. Просто си гледат интереса. (Твърде големите корпорации се интересуват не толкова от пари, колкото от власт – тоест, от контрол. Проекти като MySQL носят пари, но ограничават контрола.) Затова и мисля, че поемането на свободни проекти от професионален мениджмънт може да не е удачна идея – професионалният мениджмънт пък търси начини за уедряване, това му е работата. Стигне ли до особено големите нива (а в софтуера това е особено лесно – кеф ти растеж, кеф ти сливания, кеф ти продаване на някой бабанко), пък се задейства проблемът, че свободата на проекта пречи на контрола, който е най-важен за мегакорпорацията.
PostgreSQL е, уви, доста по-малко разпространен от MySQL.
@Michel: Именно. А оттам нататък и за много-много други неща.
Не съм съгласен, че милиони уебсайтове ще бъдат пренаписани. Ако възникнат лицензионни проблеми, на теория те би трябвало да бъдат пренаписани, но няма да бъдат. Факт е, че дори да се ползва MySQL 4.0 за цял портал (вместо 5.x или 6.x), е твърде малко вероятно тези системи да разчитат на по-тежките и трудни за development черти на тази БД.
Дори и днес да бъде замразена разработката на MySQL, биха минали години, докато някой изобщо забележи, че неговата БД има нужда от ъпгрейд. Трябва едва ли не всички останали да въведат няколко много нови и много силни екстри, за да може някой среден админ на средно порталче за техно музика в Холандия (примерно) да се замисли за първи път дали неговата БД не е остаряла. Пример за такава екстра е БД от “военен” тип — т.е. изтриването да е невъзможно от нея, всичко е на принципа на version control (при сайтове където сигурността трябва да е висока, като онлайн банкиране или пък ъпдейтване на GIS БД от упълномощени лица). Или нещо като 8 пъти ускорение на сложни заявки, които ползват 5+ таблици (а е тъжен факт, че доста CMS хич не си играят и cross-reference-ват като луди). Едва тогава нашият среден админ БИ МОГЪЛ да се замисли. От друга страна, ако сайта му върви прилично, ако си има добро community, а оплакванията се свеждат до 4-5 гневни имейла на месец… тогава защо да се безпокои да ъпгрейдва?
Мисля, че изложих мисълта си — инерцията се побеждава трудно (да не би светът да е спрял да пиратства музика и филми?). Така че за мен случаят MySQL представлява по-скоро един публичен случай, който хората следят повече като барометър на световната битка “затворен/платен срещу отворен/безплатен софтуер”, отколкото от реално безпокойство, че едни X% от интернет ще трябва да се пренапишат, защото всички знаем, че това няма да стане. 😉
И винаги ще се съглася, че реакцията на мастодонти като Oracle към подобна ситуация би била емблематична и за останалите големи компании. И винаги ще се съглася, че щом Open Community-то взима бързи мерки, това е много окуражаващо за всички нас, които ги подкрепяме, макар и най-вече мълчаливо и без реално да им помагаме. 🙁