Stało się, co kiedyś stać się musiało. Oracle wymierzył mocne działa w kierunku firm zatrudniających Javowców, wymuszając na nich większe opłaty. Najprawdopodobniej rok 2023 wielu przedsiębiorców zapamięta jako ten, który zmienił technologię w ich firmach i to nie z potrzeby i chęci rozwoju, ale z konieczności i ze względu na wysokie koszty. Za Javę trzeba będzie zapłacić więcej, ponieważ już 15 maja wygasa dotychczasowy model licencjonowania i obowiązywać będzie nowa metryka licencyjna. Trudno przejść obok tej zmiany obojętnie.
Java jednym z topowych języków programowania
Nie trzeba być programistą, żeby wiedzieć, że Java od wielu lat jest w czołówce najpopularniejszych języków programowania, co potwierdzają dane indexu Tiobe. Na początku XXI wieku Java nie miała sobie równych, wyraźnie wyprzedzała konkurentów i to właśnie w tym języku kodowało najwięcej programistów. Trudno jednak powstrzymać rozwijającą się technologię i nawet nie próbujemy tego robić, więc z czasem Java przestała być jedynym liczącym się graczem w branży. Miała ustabilizowaną pozycję i rzeszę wiernych fanów, ale nawet to nie pomogło jej zatrzymać konkurentów daleko w tyle. Stopniowo zbliżały się do niej przede wszystkim Python, C i C++.
Aktualnie Java nie jest już top of the top, musiała ustąpić miejsca kolegom, ale nie została całkowicie zdegradowana. Wciąż zajmuje ona wysoką pozycję wśród najpopularniejszych języków programowania, a specjaliści nie rezygnują z niej w codziennej pracy, chociaż może już niedługo będą do tego zmuszeni.
Java znalazła swoje zastosowanie przede wszystkim przy tworzeniu backendu aplikacji internetowych. Preferują ją duże korporacje, czego przykładem są m.in. Netfilx, Amazon czy Gmail. Trzeba przyznać, że to zacne portfolio i Java ma, czym się pochwalić. Język jest stosunkowo łatwy i szybko można się go nauczyć, więc jest wybierana przez początkujących specjalistów. Jest również uniwersalna, przy jej pomocy można stworzyć zarówno program modułowy, jak i kod wielokrotnego użytku. Można ją łatwo przenosić z jednego systemu komputerowego do innego, nie jest zależna od platformy. Ma też całkiem dobre zabezpieczenia, czego nie można powiedzieć często o mniej popularnych językach programowania.
Właśnie dlatego Java (jeszcze) nie opuściła czołówki najpopularniejszych języków programowania. Po prostu jest ona przyjazna użytkownikom, również tym, którzy dopiero wkraczają na arenę IT. Dotychczas raczej ułatwiała życie programistom, niż je utrudniała, ale już wiemy, że nic nie trwa wiecznie i tak łatwo nie będzie. Oracle postanowił zmienić strategię cenową i teraz za Javę firmy zapłacą więcej. Na pewno już niejednego przedsiębiorcę mocno to zabolało.
Nowe zasady gry od Oracle
O nowym modelu licencyjnym dowiedzieliśmy się 23 stycznia 2023 roku, kiedy to Oracle opublikował zaktualizowaną wersję cennika. Można było przetrzeć oczy ze zdumienia, na jaki pomysł tym razem wpadło amerykańskie przedsiębiorstwo. Zmian nie ma dużo, ale są znaczne. Przede wszystkim nie można już zakupić dotychczasowych produktów, jak Java SE Desktop Subscription oraz Java SE Subscription. Zastąpił je jednolity produkt dla produktów desktopowych i serwerowych. Od teraz do dyspozycji użytkowników będzie Java SE Universal Subscription. W ramach licencji użytkownicy mogą korzystać m.in. z Java Management Service i Java SE Subscription Enterprise Performance Pack. Ale to nie wszystko, największa zmiana jest jednak w modelu rozliczenia.
Dotychczas obowiązywał model, który pozwalał na zakup licencji na użytkownika lub procesor. Zatem firma płaciła tylko za tych pracowników, którzy faktycznie korzystają z Javy. Można więc uznać, że to było fair i wszystkim to odpowiadało. Oracle chyba stwierdził jednak, że mu się to nie opłaca, a nawet że jest z tego powodu stratny. Nie wiemy jednak, czym się kierował, ale motywacja musiała być duża, ponieważ również nowa metryka licencyjna jest po ogromnej metamorfozie. Od 15 maja obowiązują nowe zasady rozliczenia. Teraz firma płacić będzie nie za faktycznych użytkowników Javy, ale za wszystkich pracowników organizacji, czyli nawet tych, którzy nie pracują na tym języku programowania. Zatem liczbę wymaganych licencji należy obliczyć w oparciu o sumę wszystkich pracowników i wszystkich pracowników podmiotów wspierających wewnętrzne procesy firmy.
No dobrze, ale kogo należałoby w takim razie nazwać pracownikiem? To osoba zatrudniona w przedsiębiorstwie na podstawię umowy o pracę. I w tym miejscu mogą pojawić się wątpliwości. Co ze specjalistami, którzy pracują dla organizacji na zasadach B2B, a więc mają własną działalność gospodarczą? Jak wiemy, jest ich całkiem dużo. Dobra wiadomość jest taka, że ich nowe zasady nie obowiązują, a więc nie trzeba ich uwzględniać przy obliczaniu liczby wymaganych licencji. Niektóre firmy odetchną trochę z ulgą.
Trzeba sobie wyjaśnić jeszcze jedną kwestię. Nowa metryka licencyjna nie obowiązuje dla oprogramowania dostarczanego w modelach ASFU, ESL i ISV. To zmiany wprowadzone jedynie dla płatnych wersji Javy typu Full Use.
Mocne uderzenie w budżet firm
Nie chodzi więc o zmianę w samej technologii a w sposobie licencjonowania Javy, czyli w centrum całego zamieszania stoją pieniądze, o które się przecież w biznesie rozchodzi najbardziej. Od stycznia, kiedy Oracle ogłosił zmiany, przedsiębiorcy już zdążyli sobie przeliczyć, ile będą ich kosztowały licencje na Javę i zapewne wielu z nich zadrżała warga. Jedno jest pewne – tanio nie będzie. Oracle podaje nawet konkretne kwoty!
Zatrudniając 28 000 pracowników, wśród których jest 23 000 pracowników stałych i tymczasowych oraz 5 000 wykonawców, konsultantów i agentów, trzeba będzie rocznie na licencję Java wydać USD 2.268.000,00. Imponująca kwota. Owszem to kalkulacje dla dużego przedsiębiorstwa, ale nawet jeśli liczba pracowników jest o połowę mniejsze, to ta kwota przekracza USD 1.000.000,00. Całą sytuację skomentował Craig Guarente, założyciel i dyrektor generalny doradcy ds. licencjonowania oprogramowania Palisade Compliance:
„Mamy jednego klienta, który ma subskrypcję Java, uniwersalną umowę licencyjną na Oracle Java, całą firmę, ale teraz z nowymi cenami ich koszt Java wzrasta 10-krotnie...”To ogromne wzrosty kosztów firmowych, które dla wielu przedsiębiorstw są po prostu nie do przeskoczenia. Trudno jest sobie wyobrazić, że przy wcześniejszych wydatkach na licencje na poziomie USD 50 000 trzeba będzie zapłacić teraz USD 500 000.
Oprócz tego Oracle wprowadził ograniczenia dotyczące maksymalnej liczby procesorów, na których może zostać zainstalowana lub uruchomiona Java. To 50 000 procesorów. A co jeśli w firmie jest ich więcej? Wtedy konieczny jest zakup dodatkowej licencji, a więc koszt Javy wzrasta jeszcze bardziej. Warto jednak wiedzieć, że do tego limitu nie liczymy programu Java w wersji desktopowej.
Roczne wydatki na licencję Java na pewno będą bardziej odczuwalne dla firm. Wystąpienie jednej płatnej wersji Javy w organizacji wymusza na niej zakup licencji na wszystkich pracowników. Czy Oracle czasem nie podjął bardzo ryzykownego kroku…
Kogo nie stać, postawi na zmiany
Już teraz ze względu na kryzys gospodarczy w wielu organizacjach doszło do cięcia kosztów. Szuka się oszczędności, czasem nie tylko po to, aby zarobić więcej, ale po to żeby przetrwać i utrzymać się na rynku. To okrutna i przykra rzeczywistość, która teraz nabiera jeszcze ciemniejszych barw. Co to może oznaczać dla firm, ale też samych specjalistów IT?
Zakładając, że koszty licencji Javy wzrastają kilkakrotnie, to wiele organizacji będzie szukało alternatywy. Z pewnością wiele z nich zdecyduje się na OpenJDK, czyli otwartą implementację języka programowania Java. Pod względem technicznym nie różni się ona wyraźnie od Oracle JDK, chociaż na pewno wersja płatna jest zauważalnie stabilniejsza i wydajniejsza, stąd decyzja firm o korzystaniu właśnie z niej. Poza tym wsparcie dla OpenJDK jest bardzo krótkie, co na pewno trzeba uznać za dużą wadę.
Jeśli chodzi jeszcze o zmiany po stronie samych organizacji związane z nową metryką licencyjną, to może się okazać, że firmy będą jeszcze bardziej zabiegać o zatrudnienie na podstawie B2B. Przypomnijmy, że takich pracowników nie uwzględnia się przy wyliczaniu liczby licencji, można więc dużo zaoszczędzić. Na pewno organizacje muszą się skoncentrować na dogłębnej analizie środowiska IT pod kątem poziomu wykorzystania Javy. Może się okazać, że najrozsądniej dla finansów firmy będzie migracja na rozwiązania OpenJDK.
Dla specjalistów IT również oznacza to niemałą rewolucję. Ci, którzy już pracują w firmach na Javie, będą zmuszeni bliżej zapoznać się z OpenJDK. Jest duże prawdopodobieństwo, że na rynku IT na znaczeniu zyskają specjaliści dobrze znający oba środowiska Javy. Powinni o tym pomyśleć też kandydaci poszukujący pracy, od których może się oczekiwać, że będą potrafili odnaleźć się w nowej rzeczywistości i pracować skutecznie na OpenJDK.
Duże firmy najprawdopodobniej sobie poradzą. Liczący się gracze, jak Netflix czy Amazon mogą dyktować warunki. Oracle musi być na to przygotowany, że albo ulegnie albo straci gigantycznego klienta. W mniej komfortowej sytuacji są małe organizacje, które raczej nie otrzymają od Oracle innej, korzystniejszej dla nich oferty, a utrzymanie licencji przy takich kosztach okaże się dla nich zbyt dużym wydatkiem i obciążeniem finansowym.
Nie ma odwrotu, Oracle już rozdał karty i postawił swoje warunki. Organizacje muszą się dostosować lub zmienić technologię – wybór nie jest łatwy, ale na pewno dyktować go będą pieniądze. Jeśli organizację stać, przystanie na propozycję Oracle, a jeśli nie, będzie zmuszona wprowadzić zmiany. To może Javę kosztować wysoką pozycję wśród języków programowania. Zapewne już wkrótce dowiemy się, jaki będzie jej los.