Czy open source jest innowacyjne?

Słyszy się, że projekty open source nie są innowacyjne, tylko naśladowcze. Jest to z pewnością teza, w którą święcie wierzą producenci oprogramowania komercyjnego. Jeśli przyjrzeć się najbardziej znanym, wykorzystywanym dziś w przedsiębiorstwach rozwiązaniom open source, można by się skłaniać do takiego poglądu. Ale nie jest to regułą.

Słyszy się, że projekty open source nie są innowacyjne, tylko naśladowcze. Jest to z pewnością teza, w którą święcie wierzą producenci oprogramowania komercyjnego. Jeśli przyjrzeć się najbardziej znanym, wykorzystywanym dziś w przedsiębiorstwach rozwiązaniom open source, można by się skłaniać do takiego poglądu. Ale nie jest to regułą.

Czy open source jest innowacyjne?

Chociaż bazy danych open source są niewiarygodnie popularne nawet w różnego rodzaju zastosowaniach mission-critical, to ani MySQL, ani PostgreSQL nie mają w praktyce takiej funkcjonalności, jaką od lat oferują produkty IBM, Microsoft, Oracle czy Sybase.

Jako przykład można podać bazy danych. Chociaż bazy danych open source są niewiarygodnie popularne nawet w różnego rodzaju zastosowaniach mission-critical, to ani MySQL, ani PostgreSQL nie mają w praktyce takiej funkcjonalności, jaką od lat oferują produkty IBM, Microsoft, Oracle czy Sybase. Zestaw OpenOffice.org jest podobnym przykładem projektowania prowadzonego przez społeczność open source, którego jedynym realnym celem jest stworzenie bezpłatnego, opartego na standardach klonu Microsoft Office. Nawet Linux jest próbą przekonstruowania Uniksa w oprogramowanie bezpłatne.

Ale żaden z tych faktów nie podważa tego, że ruch open source wytyczył kilka własnych szlaków, unikając prostego naśladowania pakietów komercyjnych. Serwer webowy Apache jest tego najlepszym przykładem. Jest on najpopularniejszym serwerem webowym od 1995 r. Według statystyk Netcraft 62% wszystkich internetowych ośrodków WWW pracuje na platformie Apache. Dla porównania: Microsoft ISS obsługuje 31%.

Jednak przykład Microsoft Internet Explorer dowodzi, że zwykła popularność nie jest miarą najwyższej jakości czy funkcjonalności. Apache jest bardzo często domyślnym serwerem webowym instalowanym na większości serwerów linuksowych, ale jego sukces nie jest prostą pochodną jego znajomości lub braku konkurencji. Oferuje on bowiem stabilność, wysoką wydajność, bezpieczeństwo i robiącą wrażenie listę mechanizmów i rozszerzeń, które dają dużo więcej niż jego komercyjni konkurenci. Apache w praktyce kształtuje rynek serwerów webowych i ciągle jest liderem. Pomimo dalszego rozwoju IIS to Apache nadal będzie pakietem wiodącym, wymuszającym standardy, w ramach których pracować będą serwery webowe.

Dlaczego Apache odniósł taki sukces? Czy jest to jedyny przypadek, kiedy to społeczność open source była zdolna do antycypowania wymagań na produkt zanim komercyjni dostawcy to zaimplementowali? Mało prawdopodobne.

W przemyśle oprogramowania niezliczone rzesze projektantów, ludzi działających indywidualnie oraz firm eksperymentuje z metodami open source. Jednym z powodów jest to, że projekty prowadzone przez społeczność powalają na ciągły rozwój oprogramowania. Kiedy grupa projektantów zaczyna współpracować w trybie otwartym, każdy z nich zajmuje się swoimi problemami - w rezultacie powstaje oprogramowanie, które rozszerza te funkcjonalne obszary, które na ogół są pomijane w ofertach firmowych.

Przykłady tego rodzaju innowacyjnej współpracy można znaleźć w całej branży IT. Przytoczone w tym artykule pokazują, że oprogramowanie open source może nie tylko dorównywać możliwościami oprogramowaniu komercyjnemu, ale często jest nawet lepsze.

Otwarty kod ożywia Javę

Czy open source jest innowacyjne?

Serwer HTTP Apache oferuje stabilność, wysoką wydajność, bezpieczeństwo i robiącą wrażenie listę mechanizmów i rozszerzeń, które dają dużo więcej niż jego komercyjni konkurenci. Jego popularność potwierdzają statystyki Netcraft.

Nie ma najmniejszych wątpliwości, że open source jest wielkim dobrodziejstwem dla Javy. Organizacja JCP (Java Community Process), odpowiedzialna za rozwój języka i platformy Java, zdaje się to czynić w dość niespiesznym tempie. Ale Java jest przede wszystkim wiodącą platformą dla aplikacji w przedsiębiorstwach i jako taka powinna być rozwijana powoli, nawet mimo nawału potrzeb. Rozwiązanie jednego zestawu problemów kosztem tworzenia kolejnych nigdy nie jest dobrym pomysłem.

Jednak po drugiej stronie medalu jest społeczność open source, ze znaczną liczbą ważnych innowacji. Fundamentalne narzędzia dla przedsiębiorstw są dzisiaj rodem z open source: Ant (do budowania aplikacji), Hibernate (do utrwalania danych na dyskach), JUnit (do uruchamiania testów jednostek) i Maven (do ciągłej integracji) - nie wspominając o wielce szacownych środowiskach projektowych Eclipse i NetBeans oraz walidatorze kodu źródłowego PMD.

Czy open source jest innowacyjne?

Jedynym realnym celem OpenOffice.org jest stworzenie bezpłatnego, opartego na standardach klonu Microsoft Office.

Projektujący w Javie wykorzystują także kilka struktur open source, takich jak JSF (JavaServer Faces), Spring i Struts. Ponadto istnieją uznane zasobniki dla Javy: Apache Tomcat, Geronimo, Jetty, Jonas i Resin, nie mówiąc o mniejszych zasobnikach do użytku w formie wbudowanej. Open source jest olbrzymim stymulatorem wyobraźni i produktywności dla świata Javy.

Pomiędzy tymi dwoma prądami - JCP i open source - są trzej główni dostawcy technologii Javy dla przedsiębiorstw: BEA, IBM i Sun Microsystems, lokujący się na linii rozgraniczającej open source i kody zamknięte. Chociaż wiele narzędzi IBM jest "własnego chowu", to firma jest jednym z większych ofiarodawców na rzecz Javy i społeczności open source. BEA stała się bardzo aktywna ostatnio ze swoją strategią mieszaną, w ramach której jej własne narzędzia aktywnie wspierają produkty open source. Ponadto BEA jest donatorem kodu dla niektórych projektów open source.

Czy open source jest innowacyjne?

Nokia udostępniła swoją platformę aplikacyjną open source - Maemo, którą można znaleźć w urządzeniach typu embedded, takich jak Nokia 770 Internet tablet.

Sun pozostaje trochę z boku tego "rozdawnictwa". Zwolennicy open source naciskają Sun, aby poszedł w kierunku pełnego otwarcia kodów Java, mając nadzieję na przyspieszenie innowacji na tej platformie. Sun jednak z taką decyzją zwleka. Jest pewna logika w takim postępowaniu - głównie taka, że otwarcie kodu może rozdzielić Javę na wiele różnych wersji, co może pociągnąć utratę jej przenośności.

Stawia to Sun w niedogodnej pozycji, zważywszy na jej długotrwałe kontrybucje na rzecz open source. Sun pozostaje chyba jedyną firmą mającą własny system open source i kompletny zestaw typu "office". Co istotne, ma on wiele technologii open source Javy. Sun być może określi wreszcie termin, w którym zamierza otworzyć biblioteki Java i Java Virtual Machine, w uzupełnieniu otwarcia ośrodka webowego dla społeczności, gdzie projektanci mogą śledzić ten proces. (zob. ramka str. 41).

Czy tak wyzwolona w tym kierunku energia open source przyniesie korzyści Javie na dłuższą metę? Uwolnienie kodu Javy może skutkować znaczącymi rozszerzeniami tej platformy lub też doprowadzić do jej zniszczenia.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200