Ataki na Javę nie ustają

To, czy Sun Microsystems utrzyma swoją pozycję, zdobycze i dochody z Javy, w większym stopniu zależy od niezależnych programistów niż od Microsoftu.

To, czy Sun Microsystems utrzyma swoją pozycję, zdobycze i dochody z Javy, w większym stopniu zależy od niezależnych programistów niż od Microsoftu.

Pryncypialne stanowisko Sun Microsystems w zakresie utrzymywania jednego źródła Javy nie jest już tak kategoryczne. Sun próbuje jednak zapobiec fragmentacji języka pod wpływem nacisków konkurencji, a jednocześnie zapewnić realizację wizji firmy "maszyna wirtualna na każdym procesorze".

Licencja na pisanie

W ciągu ostatnich kilkunastu miesięcy Java przeszła kilka poważnych zmian, z których najważniejsze to otwarcie procesu licencyjnego w modelu Sun Community Source Licencing (SCSL) i wprowadzenie nowej platformy Java 2 w grudniu 1998 r. Kod źródłowy Java 2 jest teraz dostępny bez ograniczeń (wystarczy ściągnąć z Internetu) i można go używać, modyfikować i przetwarzać do własnych celów. Użycie do celów komercyjnych jest jednak ograniczone warunkiem, że każdy produkt wykonany w Javie może być dystrybuowany dopiero po opłaceniu licencji na kod źródłowy i przejściu programu przez test certyfikacyjny Suna. "SCSL to nie to samo, co powszechnie dostępny kod źródłowy (jak w licencji GNU). SCSL to źródło stałych dochodów dla Suna. Otwiera również możliwości dla innowacji wprowadzanych przez niezależnych producentów oprogramowania, którzy nie muszą już oddawać swych osiągnięć firmie Sun. Oczekujemy, że nastąpi ogromny rozwój Javy" - twierdzą analitycy Gartner Group.

Model SCSL miał na celu ułagodzenie firm i osób tworzących kod w Javie, którzy w poprzednim modelu licencjonowania Javy musieli bezpłatnie przekazywać Sunowi wszystkie ulepszenia i zmiany kodu. Obecnie mogą zachować osiągnięcia i własność intelektualną dla siebie.

SCSL oznacza, że Sun nadal utrzymuje kontrolę nad Javą; może nie tak ostrą jak poprzednio, ale nadal silną. Firmie udało się już odeprzeć jeden atak na Javę. W styczniu br. amerykański komitet standaryzacyjny National Committee for Information Technology Standards (NCITS) odrzucił prośbę o przyznanie prawa do kontroli rozszerzeń czasu rzeczywistego Javy, wniesioną przez konsorcjum Java Real Time Working Group, zajmujące się zastosowaniami Java do obsługi urządzeń przemysłowych, sterujących, pomiarowych i in. Aktywny udział w pracach konsorcjum biorą m.in. Microsoft i Hewlett-Packard.

Czy Java jest COOL?

Korzystna dla Suna decyzja sądu w sporze o Javę z Microsoftem nie wykluczyła możliwości opracowania przez firmę z Redmond konkurencyjnego języka programowania, który nie będzie zawierał kodu źródłowego Java, ale będzie miał podobne (lub nawet takie same właściwości funkcjonalne). Microsoft zawsze starał się sprowadzić Javę do roli jeszcze jednego języka programowania, negując jej rolę platformy do osadzania aplikacji.

Sun twierdzi, że Microsoft usiłował stworzyć "zanieczyszczoną" wersję Javy za pomocą pakietu narzędziowego VisualJ++, zawierającego rozszerzenia niezgodne ze specyfikacją Java. Na przykład VJ++ zapewniał możliwość dostępu do funkcji systemu operacyjnego za pomocą modułu J/Direct, niezgodnego z wymaganiami Suna.

Na początku roku przedstawiciele Microsoftu dawali do zrozumienia, że planują stworzenie obiektowego języka programowania COOL o podobnych właściwościach do Javy, ale osadzonego wyłącznie na platformie Windows, nie wieloplatformowego. Pozwoliłoby to firmie zachować pozycję w dziedzinie aplikacji obiektowych, opartych na technologiach COM, COM+ i DCOM oraz interfejsie graficznym, konkurujących bezpośrednio z technologiami Java: RMI, JavaBeans i JFC.

Od tej enuncjacji nie pojawiły się informacje o języku COOL. Microsoft nie zdecydował się na wykupienie licencji Java 2 ani nie informuje programistów, którzy kupili VJ++, jaki będzie dalszy los tego narzędzia. Również w nowej wersji Internet Explorera 5 maszyna wirtualna Java nie jest instalowana automatycznie.

Powszechnie sądzi się, że jeśli nawet COOL się pojawi, to Microsoft będzie miał duże trudności z przekonaniem programistów do nowego języka. Pamiętajmy, że Java - mimo iż stała się przedmiotem powszechnego zainteresowania już w rok po pojawieniu się - zyskała status języka kwalifikującego się do tworzenia aplikacji dla przedsiębiorstwa dopiero po ok. 5 latach. Tymczasem programiści muszą tworzyć aplikacje, a obecnie nie ma lepszego narzędzia do tworzenia aplikacji przenośnych niż Java.

Atak z innej strony

Monopolowi Suna na Javę również zagraża Hewlett-Packard, który utrzymuje, że na jego serwerach pracuje kilkakrotnie więcej aplikacji w Javie niż na serwerach unixowego konkurenta.

HP stworzył własną wersję maszyny wirtualnej Java, przeznaczoną do wbudowania w urządzenia elektroniczne takie jak: drukarki, urządzenia pomiarowe i sterujące czy sprzęt medyczny. Maszynę można kupić od HP. Jednakże Sun liczy, że odeprze atak HP, opracowując trzy nowe wersje, coraz mniejsze "miniJavy" do wbudowania w urządzenia: PJava (Personal) i EJava (Embedded - do wbudowania) oraz KJava (Kernel - jądro).

Co na to GNU?

Zamknięte systemy operacyjne Unix zachęciły Linusa Thorwaldsa do opracowania Linuxa i udostępnienia go bezpłatnie całej społeczności programistów. Istnieje wiele równie potężnych programów dostępnych bezpłatnie w ramach tzw. licencji GNU, np. system składu elektronicznego TeX (plus Metafont do tworzenia krojów pisma), opracowany przez D.E. Knutha, używany do praktycznie wszystkich publikacji naukowych. Wielu programistów tworzy znakomite programy dla siebie i upowszechnia je za darmo.

Przed użytkownikami stoi ważne pytanie: czy pojawi się konkurencyjna wersja Java, zgodna ze specyfikacją Suna, ale nie wymagająca płacenia licencji, dostępna w ramach ruchu GNU? Coraz częściej można usłyszeć opinie, że przyszłość Javy zależy od programistów, niekoniecznie pracujących w firmach Sun lub Microsoft.