Prawo autorskiePrawo ITPrawo międzynarodoweUmowy

Java licencja komercyjna: co to znaczy ?

Java licencja komercyjna czyli pora na herbatę
Płatna Java – czy pora przerzucić się na herbatę?

W zeszłym roku światkiem IT wstrząsnęła straszna wieść, a imię jej: Java licencja komercyjna. O technicznych aspektach sprawy, pisał  między innymi pgs-soft.com oraz devrev.pl Amerykański koncern Oracle ogłosił, że zamierza skończyć z darmową licencją na Javę i od kwietnia  2019 licencja będzie już płatna. Jak powiedział, tak zrobił czym wprowadził jeszcze większe zamieszanie, ponieważ, jak to w przypadku Oracle’a bywa:  nic nie jest proste, ale jak zawsze jeśli nie wiadomo o co chodzi, chodzi o pieniądze. W tym wypadku olbrzymie, które chce zarobić gigant  znany z jednej z najagresywniejszych  strategii audytów licencyjnych na świecie.

JAVA LICENCJA KOMERCYJNA: CZY JAVA BĘDZIE JUŻ TERAZ PŁATNA?

 Odpowiedź brzmi: to zależy. Zanim się zastanowimy od czego, najpierw oświećmy niewtajemniczonych czym jest  Java.  Wcale nie tak prosto wytłumaczyć to laikowi, więc pozwoliłam sobie skonsultować  się w tej sprawie z panelem ekspertów.  Najkrócej rzecz ujmując Java jest wirtualną maszyną, która, po jej zainstalowaniu umożliwia użytkownikowi korzystanie z oprogramowania  napisanego w języku Java.   Nie masz maszyny, nie  uruchomisz oprogramowania. Sam język Java jest  jednym z najpopularniejszych języków programowania na świecie. Według indeksu TIOBE za maj 2019 jest  obecnie światowym numerem 1 zaś według PYPL Index (Popularity of Programming Language ), Java zajmuje obecnie  2 miejsce  jeśli chodzi o popularność języków programowania.  Różnice wynikają z zakresu analizy danych: PYLP analizuje  ilość  wyszukiwani  tutoriali (czyli po naszemu „podręczników”) do języka Java w wyszukiwarce Google podczas gdy  TIOBE analizuje też dane z innych wyszukiwarek. Kto chce, może sobie poczytać nieco obszerniej o indeksach popularności  języków  programowania  we wpisie Rafała Gdaka na Spider’s Web, ale programistów, zwłaszcza przyszłych, lojalnie ostrzegam: część tego wpisu  może  być dla Was frustrująco-dołująca.

Naturalnie  ani środowiska Javy (maszyny wirtualnej) ani  języka Java  nie wymyślił Oracle lecz nieistniejąca już Sun Microsystems. Firma przestała istnieć w 2010 roku, po tym jak przejął ją Oracle. W 9 lat po przejęciu  amerykański gigant zdecydował się skończyć z bezpłatną licencją na Javę.
  3 sierpnia 2018r. Oracle  udostępniło oficjalny cennik opłat licencyjnych za Javę SE (Java Standard Edition). Cennik  jest wyłącznie po angielsku, a wskazane w  nim ceny  obowiązują na całym świecie.   Jednocześnie  koncern wprowadził rozróżnienie używanie Javy z wyłączeniem  zastosowań  komercyjnych ( non-commercial use)  oraz używanie Javy w celach komercyjnych (commercial use).Od kwietnia 2019r.  płatna licencja  jest wymagana wyłącznie w przypadku  umów licencyjnych na Javę używaną w celach  komercyjnych czyli Javę SE. Jeśli sobie uświadomimy, że do tej pory licencja na Javę zawsze  była darmowa, niezależnie od tego czy  byłą używana w celach komercyjnych, czy nie. Decyzja Oracle’a : Java licencja komercyjna będzie płatna, to prawdziwie trzęsienie ziem. Nie tylko w kontekście przyzwyczajeń, ale przede wszystkim  w kontekście  planowania budżetów na IT na 2019 przez przedsiębiorców,  firmy i instytucje używające Javy w celach komercyjnych.  Oficjalny cennik  Oracle’a pojawił się  dopiero w sierpniu 2018r., w samym środku wakacyjnego sezonu urlopowego i na zaledwie 4 miesiące przed końcem 2018r. Już same  ramy czasowe narzucają ostre tempo  prac, żeby  w ogóle oszacować o  jakich dodatkowych kosztach związanych z płatnymi licencjami na Javę SE mowa. Jak się za chwilę przekonamy, pozory mogą mylić i 2,50 dolarów za miesięczną licencję od komputera/laptopa oraz 25 dolarów od procesora w najtańszej opcji przeznaczonej dla  najmniejszej ilości komputerów/laptopów/procesorów może się okazać  mocno złudna. I jest to jak najbardziej  zamierzone działanie Oracle’a.  Koncern pozwala sobie na taką zagrywkę nie pierwszy raz.

JAVA LICENCJA KOMERCYJNA – STRATEGIA INFORMACYJNA ORACLE

piwo- napój idealny do czytania  nowej licencji na Javę
Piwo czyli napój idealny do czytania nowej licencji na Javę

Zwróćmy uwagę na  bardzo przemyślaną strategię informacyjną Oracle’a jeśli idzie o Javę licencję komercyjną. Przede wszystkim  firma informuje o zmianie umowy licencyjnej. Z tym, że uwaga, informuje o tym nas swoich stronach. Więc jeśli jesteś dociekliwym użytkownikiem końcowym  to  możesz wejść na stronę Oracle’a i przeczytać, nową, zmienioną umowę licencyjną. wejdziesz i doczytasz, ale tutaj pojawiają się schody. Po pierwsze gdy zajdziemy na polską stronę Oracle’a to  w zasadzie nie znajdziemy niczego co  by sugerowało  w ogóle  istnienie tematu  Java licencja komercyjna i niekomercyjna.  Po wejściu w produkty,  po wybraniu Javy jesteśmy przekierowywani z automatu na amerykańską stronę firmy. Oczywiście wszystko jest już po angielsku włącznie z dokumentacją do Javy , ale wciąż   nie ma żadnego wyraźnej wskazówki, że  istnieje jakieś istotne finansowo  dla użytkownika końcowego rozróżnienie Java licencja komercyjna i  niekomercyjna. Oracle nas zbywa. Koncentruje się na  technicznych aspektach instalacji Javy SE ( płatnej wersji ) oraz wciąż bezpłatnej  Javy JDK.

Na szczęście Oracle  ma  stronę w języku polskim dedykowaną wyłącznie Javie.  Znajdziemy  tam piękne logo Javy czyli filiżankę z parującą kawą i …kolejny raz mnóstwo informacji technicznych.  Na szczęście jest  też zakładka „Pomoc”  i po kliknięciu w nią z lewej strony wyskakuje menu boczne- piąta kropka od góry  to „Pytania ogólne” i  dopiero  tutaj znajdziemy , to, czego szukamy, czyli Licencjonowanie i dystrybucja – często zadawane pytania  Długość  informacji nie powala.  O  tym, że jakaś wersja Javy jest płatna nie ma ani słowa,  nie ma też informacji o tym, że jest  jakieś rozróżnienie na  Java licencja komercyjna oraz  niekomercyjna za to mamy jakieś mgliste informacje o  tym, że dla „Odbiorców”  odpowiednia będzie Java JDK do użytku osobistego , ale jeśli jesteś firmą,  i tu pozwolę sobie zacytować :„Oracle zaleca zapoznanie się z mapą drogową dla wydań Java SE 8 i kolejnych oraz rozpoczęcie oceny bieżących wymagań związanych ze świadczeniem pomocy technicznej w zakresie technologii Java, w celu — w zależności od tego, co jest bardziej odpowiednie — migracji do nowszego bezpłatnego wydania albo uzyskania w odpowiednim czasie subskrypcji Java SE.

No i wszystko jasne, co nie? Dobrze, że chociaż jest jakaś mała, bo mała, ale jednak  sugestia, że  skoro  istnieje bezpłatna wersja  Javy   oraz tajemnicza Java SE, to może ta cała Java SE jest  płatna?

 Linki do umów licencyjnych dla wersji SE oraz JDK  znajdziemy  na tej samej stronie, z tym, że  oba dokumenty są już wyłącznie po angielsku.

Teraz podstawowe pytanie, co jeśli mamy już zainstalowaną Javę, do tej pory  całkowicie darmową niezależnie od tego  jak ją wykorzystujemy, i nadchodzi czas aktualizacji? Czy Oracle informuje nas jakoś  o zmianie warunków licencji i możliwości żądania wynagrodzenia, jeśli się okaże je jesteśmy komercyjnym użytkownikiem Javy? O odpłatności wprost nas absolutnie nie poinformuje, natomiast o zmianie warunków umowy licencyjnej już tak z tym, że  w taki sposób, iż bardzo łatwo tę informację przeoczyć.   Firma wykorzystuje  tutaj do bólu powszechnie znany fakt, iż mało kto wczytuje się w treść wyskakujących okienek przy aktualizacji oprogramowania. Z reguły  po prostu klikamy na  klawisze  „Next” , aż dojdziemy do „Install” i  instalujemy. W tym wypadku, jeśli zainstalujemy   aktualizację Javy, a okaże się, że jesteśmy  użytkownikiem  komercyjnym, to będziemy musieli zapłacić Oracle opłatę licencyjną zgodnie z cennikiem.  Okienko aktualizacji Javy  wygląda bardzo niewinnie. Spójrzmy poniżej (ramki i podkreślania – Prawstoria).

Java licencja komercyjna: okienko aktualizacji
A oto jak wygląda informacja Oracle’a o zmianie warunków licencji na Javę SE podczas aktualizacji

Naturalnie cały tekst jest po angielsku. Jest też jakaś informacja, że warunku  udzielania licencji na ten software uległy zmianie oraz link do aktualnej, zmienionej wersji umowy licencyjnej. Jeśli klikniemy w link, ukaże nam się tekst umowy po angielsku. Sama umowa jest krótka ale to pozory, o czym za chwile, poza tym nie ma w niej słowa o opłatach licencyjnych.  Poniżej linka do aktualnej wersji umowy licencyjnej znajdziemy informację, że ta wersja Javy Runtime, którą mamy jest przeznaczona wyłącznie do osobistego, niekomercyjnego  użytku ( personal (non-commercial) use), a jeśli masz zamiar używać Javy komercyjnie (commercial use), to potrzebna jest  osobna licencja. Słowa nie ma o tym, że  taka osobna licencja jest odpłatna.  Jeśli zaś klikniemy w „Install”, to będzie to równoznaczne z zaakceptowaniem warunków osobnej umowy licencyjnej.  I teraz pytanie brzmi o jaką umowę licencyjną chodzi? Oczywiście nie wynika to wprost z tekstu, ale nie ma wątpliwości : jak klikniecie w „Install”, to  jeśli jesteście użytkownikiem komercyjnym, Oracle zażąda  opłat licencyjnych.   W ten oto sposób jednym kliknięciem  można sobie załatwić  nie tylko aktualizację Javy, ale przede wszystkim  sporą dziurę  budżetową.

 JAK SIĘ  W TEJ SYTUACJI  BRONIĆ PRZED OPERACJĄ „JAVA LICENCJA KOMERCYJNA”?

Co w tej sytuacji zrobić? Nie klikać bezmyślnie, tylko przeanalizować swoją sytuację, czyli:

  • Po pierwsze ocenić, czy w myśl nowej umowy licencyjnej  na Javę jesteśmy  użytkownikami komercyjnymi i podpadamy w związku z tym pod wersję  Java licencja komercyjna czyli  płatna wersja Javy SE czy też  możemy jej dalej używać nieodpłatnie, a może wreszcie  najkorzystniejsze będzie  w ogóle zrezygnowanie z updatów Javy SE 8  i  możemy się przerzucić na którąś z darmowych licencji typu open source na Javę wciąż oferowanych przez Oracle (jeśli się okaże, że tak, to  zajrzyjmy do cennika). Jak już pisałam powyżej    3 sierpnia 2018r. Oracle  udostępniło oficjalny cennik opłat licencyjnych za Javę SE. Wciąż jest aktualny.
  • Cennik jest naturalnie częścią zmienionej umowy licencyjnej. Oczywiście jest wyłącznie po angielsku, ale spójrzmy na ceny i  przede wszystkim na definicje pod cennikiem . Wbrew pozorom nie są to  tylko definicje tego co  Oracle rozumie pod pojęciem  „Processor” oraz „Named User Plus”, ale również okazuje się, że każdy desktop  jest równoznaczny z serwerem, a do tego  jeszcze znajdziemy w definicjach dokładnie opisaną metodę obliczania  opłaty za procesory wraz z przykładem. Po zastosowaniu  się do definicji i metody obliczeniowej wskazanej przez Oracle’a może się okazać, że   te niewinne 2.5 USD za komputer i 25 USD za serwer, to tak  było  tylko na zachętę, bo miesięczna  opłata licencyjna będzie nas  znacznie drożej kosztowała.

Dopiero po takiej analizie sytuacji  możemy  podjąć świadomą decyzję, co dalej robić: aktualizujemy  tę Javę SE i  płacimy, czy też  może pasujemy i szukamy innych rozwiązań.

CO  TO ZNACZY, ŻE LICENCJA JEST KOMERCYJNA?

Java licencja komercyjna, co to znaczy? Zanim zaczniemy liczyć wysokość potencjalnej opłaty licencyjnej w ramach licencji komercyjnej na Javę warto sprawdzić czy potrzeba jest nam licencja komercyjna, czyli płatna, czy też nie. I na chłopski rozum mogłoby się wydawać, że prostą odpowiedź znajdziemy w   umowie licencyjnej Oracle na Javę SE . Nic bardziej mylnego.  Umowa jest  wyłącznie po angielsku, nowi tytuł Oracle Technology Network License Agreement for Oracle Java SE i wygląda bardzo niewinnie,  bo liczy sobie zaledwie  niecałe 4 strony tekstu. Oczywiście pozory mylą, ale po  kolei. Sprawdzamy czy jesteśmy „commercial user”  w rozumieniu tej umowy. Rzut oka na definicje użytych w niej terminów, i od razu klapa, bo  nie znajdziemy  tam zdefiniowanego pojęcia użytkownika komercyjnego   czy komercyjnego  użycia. O co chodzi? Ano, wszystkie umowy licencyjne Oracle’a są skonstruowane w  bardzo zawiły sposób.  Jeśli się wczytamy w te niecała 4 stroniczki tekstu   umowy  licencyjnej, to się okaże, że jej częścią  jest też  tzw. Licencing Information Manual dla Javy SE oraz inna dokumentacja dostarczona przez Oracle wraz z ich softwarem  lub zamieszona na stronach Oracle’a. Moi Państwo, w zależności od tego z jakich produktów Oracle korzystamy, w praktyce to oznacza, że nasza umowa licencyjna na Javę SE rozrasta się  do  co najmniej kilkuset jeśli  nie kilkunastu tysięcy stron tekstu. Dodam, że tekstu  bardzo trudnego, po części technicznego, po części prawnego wyłącznie po angielsku.  Umowy licencyjne i dokumentacja Oracle są na tyle trudne, że stanowią   nie lada wyzwanie dla amerykańskich prawników i informatyków.  Trudno znaleźć w nich  konkretne definicje, Oracle namiętnie też  miksuje pojęcia oraz cechy produktów, w tym na przykład  Java SE choć płatna ma pewne cechy  nieodpłatnej Javy JDK.  O tym jak koszmarnie trudne w odbiorze dla użytkownika są  umowy licencyjne i dokumentacja produktów Oracle można się przekonać czytając świetny artykuł na temat Oracle’a i jego planów wprowadzenia odpłatności na Javę  licencję komercyjną w Bloomberg Law z września 2018r. Lektura bardzo pouczająca, ale ostrzegam, że nie  najłatwiejsza.

Wracając do samej umowy licencyjnej na Javę SE, zgodnie z jej  pierwszym punktem License Rights and Restrictions” (Licencyjne prawa i ograniczenia) oraz informacjami zawartymi w  mapie drogowej Oracle dotyczącej dalszych planów co do Javy SE (Oracle Java SE Support Roadmap). I tak  na nieodpłatne aktualizacje Javy SE  mogą liczyć:

  • klienci używający Javy SE do osobistego użytku („Personal Use”),
  • klienci którzy używają jej dla celów testowo-rozwojowych („Development Use”)
  • wreszcie klienci, którzy mają  licencję na Javę SE w ramach innego obsługiwanego produktu udostępnionego na osobnej licencji.

Jak  długo  potrwa taki stan rzeczy,  nie wiadomo.  Zarówno „Development Use”  jak też  „Personal Use” został zdefiniowany w   umowie licencyjnej Oracle na Javę SE   i warto się z tymi definicjami zapoznać, bo jeśli  pod żadną nie podpadamy i nie  korzystamy z Javy SE w ramach licencji na inny produkt Oracle’a, to  jesteśmy użytkownikami komercyjnymi. Podpadamy pod  Java licencja komercyjna i płacimy za aktualizacje.

Przez “Użytek Osobisty” Oracle rozumie używanie programów przez osobę fizyczną wyłącznie na komputerze lub laptopie kontrolowanym przez taką osobę fizyczną i  wyłącznie po to żeby uruchamiać na nim Aplikacje Osobiste.  Same Aplikacje Osobiste to aplikacje uruchamiane na Javie SE zaprojektowane do użytku osobistego osoby fizycznej  takie jak gry  czy osobiste narzędzi mierzące wydajność.  Z kolei o  Development Use to  wszelkie  operacje związane z  wewnętrznym testowaniem programów i uruchomianych na platformie Javy aplikacji.  Do angielskich wersji  definicji można sobie zajrzeć w umowie. Tłumaczenie na polski może być chropawe, gdyż jest moje.

Żeby  było jeszcze ciekawiej i mniej przejrzyście, to  w zasadzie z treści  umowy licencyjnej na Javę  SE  trudno wywnioskować, że jak  nie korzystamy w zakresie innym niż wskazanym w punkcie  License Rights and Restrictions” (Licencyjne prawa i ograniczenia), będziemy za aktualizacje płacić. Co prawda ostatnie zdanie tego punktu  stwierdza, że jeśli planujemy korzystać z Javy SE w inny sposób lub w innym celu  niż wskazany w umowie, to musimy uzyskać od Oracle inną licencję zezwalającą  na taki  użytek. No i jeszcze mamy cały punkt w umowie poświęcony kodom źródłowym dla software typu  open source ( czyli bezpłatnego ), który sugeruje, że Oracle udziela jeszcze jakichś niepłatnych licencji, ale prawda jest taka, że z  samych tych  niecałych 4 stroniczek trudno coś wywnioskować o odpłatności.  Tylko, że jak już  wspominałam, nasza umowa licencyjna wcale nie liczy sobie 4 stron, tylko rozrasta się  o dobrych kilkaset. , a jej częścią  jest też  tzw. Licencing Information Manual dla Javy SE oraz inna dokumentacja dostarczona przez Oracle wraz z ich softwarem  lub zamieszona na stronach Oracle’a.  Jest to ultra pojemna kategoria, pod którą podpada absolutnie wszystko włącznie z cennikiem, mapą drogową oraz informacjami na stronach Oracle’a o  tym, że commercial use   na Javę SE będzie od tej pory odpłatny.

Tylko, że wciąż nie wiemy czym  dla Oracle’s jest commercial use czyli kiedy właściwie jest potrzebna licencja komercyjna? Z umowy licencyjnej w jej obecnej wersji wiemy tylko, i to do tego mocno mgliście, co na pewno nie jest   traktowane przez Oracle jako commercial use Javy SE.

Jak pamiętamy częścią naszej umowy licencyjnej jest też  Licencing Information Manual dla odpowiedniej wersji Javy SE . W obecnie obowiązującej wersji z czerwca 2018.r dokument liczy sobie 335 stron i naturalnie jest dostępny wyłącznie po angielsku, a na stronie drugiej  znajdziemy informację, że wszelkie cechy Javy  wskazane w  tabeli poniżej  oznaczone jako  nie dostępne dla „Oracle Java SE”   w ramach licencji na  wciąż bezpłatną Javę  w wersji binarnej są jej  „Funkcjami Komercyjnymi” (Commercial Features).  W tekście wygląda to jak poniżej.

Commercial Features in Jaba
Fragment Licencing Manula na Javę czyli jedyne miejsce gdzie Oracle daje wskazówkę co uważa za „Funkcje Komercyjne” Javy.

Tak naprawdę dopiero treść tabeli w Manualu  daje wgląd w to, co Oracle uważa za „ Funkcję Komercyjną”  i w związku z tym możemy też wnioskować, że jeśli  używamy, którejś z tych funkcji,  używamy Javy SE dla celów komercyjnych  i podpadamy pod  Javę licencja komercyjna, która musimy wykupić zgodnie z cennikiem.

Czy w związku z tym teść  umowy licencyjnej, którą, przypominam, AKCEPTUJEMY JEDNYM KLIKNIĘCIEM jest jasna ? Ależ oczywiście, że nie  i  jest to moim zdaniem absolutnie celowa strategia Oracle’a , bo  sytuacja jest dużo bardziej zagmatwana o czym już  w „następnym odcinku”.

W tym miejscu pozwolę sobie tylko zauważyć, że każda umowa licencyjna Oracle’a  jest interpretowana zgodnie z prawem stanu Kalifornia  a sądem właściwym do rozpatrywania sporów mogących z niej  wyniknąć jest  oczywiście sąd kalifornijski  właściwy dla siedziby  głównej Oracle. Kto jeszcze nie wiem czym taki zapis pachnie, odsyłam do mojego wpisu na temat  zapisów w umowie dotyczących  wyboru prawa i sądu przez strony.

We wszystkich umowach licencyjnych Oracle’a  też niepozornie wyglądający zapis o  możliwości przeprowadzenia przez firmę audytu u klienta w celu sprawdzenia czy produkty są wykorzystywane zgodnie z licencją.   O  tym czego się możemy spodziewać w ramach  takiego audytu i jak się do  niego przygotować, już w  następnym wpisie

Pozdrawiam, Prawstoria

Powiązane artykuły

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Back to top button