{"id":14259,"date":"2023-02-02T14:38:02","date_gmt":"2023-02-02T13:38:02","guid":{"rendered":"https:\/\/vived.io\/?p=14259"},"modified":"2023-02-03T10:23:55","modified_gmt":"2023-02-03T09:23:55","slug":"co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/","title":{"rendered":"Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ?  &#8211; JVM Weekly vol. 123"},"content":{"rendered":"\n<h2 id=\"1-oracle-wywraca-do-gory-nogami-pricing-javy\" data-num=1>1. Oracle wywraca do g\u00f3ry nogami pricing Javy<\/h2>\n\n\n\n<p>Java bardzo rzadko trafia na j\u0119zyki spo\u0142eczno\u015bci programistycznej. O ile nas interesowa\u0107 mog\u0105 nowe wersje JDK, zmiany w maszynie wirtualnej i inne wiadomo\u015bci z ekosystemu, to jednak kto\u015b &#8222;niezainwestowany&#8221; w ekosystem o Javie s\u0142yszy g\u0142\u00f3wnie w momencie internetowych &#8222;dram&#8221;. I takowa wydarzy\u0142a si\u0119 w\u0142a\u015bnie w zesz\u0142ym tygodniu. A wszystko przez to, \u017ce Oracle zdecydowa\u0142 si\u0119 zmieni\u0107 spos\u00f3b naliczania op\u0142at za swoje JDK.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/C2cF0nE.png\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Ostatni raz widzia\u0142em <a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">cokolwiek JVM-owego<\/a> na szczycie <a href=\"https:\/\/www.reddit.com\/r\/programming\/top\/\">\/r\/programming<\/a> przy okazji Log4Shell.<\/figcaption><\/figure><\/div>\n\n\n<p>Zacznijmy od fakt\u00f3w: 23 stycznia Oracle poinformowa\u0142, \u017ce <a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">zmienia model licencyjny Oracle JDK na Java SE Universal Subscription<\/a>. Nowy cennik, zamiast bazowa\u0107 na stanowiskach roboczych i procesorach, b\u0119dzie opiera\u0142 si\u0119 na ilo\u015bci pracownik\u00f3w zatrudnianych przez firm\u0119: w tych do 1000 pracownik\u00f3w op\u0142aty wynosi\u0107 b\u0119d\u0105 15$\/mc, dla wi\u0119kszych b\u0119dzie to 5,25$\/mc. Dla wielu (wi\u0119kszo\u015bci?) firm korzystaj\u0105cych z Oracle JDK oznacza\u0107 to b\u0119dzie olbrzymi wzrost koszt\u00f3w, poniewa\u017c w obliczeniach brani s\u0105 pod uwag\u0119 nie tylko programi\u015bci, ale wszyscy pracownicy firmy &#8211; tak\u017ce ci spoza dzia\u0142u IT, a tak\u017ce np. kontraktorzy.<\/p>\n\n\n\n<p>Pr\u00f3bowa\u0142em oszacowa\u0107, jak wygl\u0105da obecnie u\u017cycie poszczeg\u00f3lnych JDK, i uda\u0142o mi si\u0119 dogrzeba\u0107 do raportu <a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">State of the Java Ecosystem<\/a> opublikowanego przez New Relic. Z niego wynika, \u017ce popularno\u015bci Oracle JDK mocno przedostatnie lata spada\u0142a (75% w 2020 do 35% w 2022), wi\u0119c je\u015bli trend si\u0119 utrzyma\u0142, pocz\u0105tkiem 2023 b\u0119dziemy m\u00f3wi\u0107 o jeszcze mniejszych liczbach. Podejrzewam zreszt\u0105, \u017ce ostatnie zmiany pricingu tylko ten odp\u0142yw przyspiesz\u0105.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"440\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-1024x440.png\" alt=\"\" class=\"wp-image-14270\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-1024x440.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-300x129.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-768x330.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-1536x660.png 1536w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1.png 1809w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Tak w raporcie rozk\u0142ada si\u0119 u\u017cycie poszczeg\u00f3lnych Vendor\u00f3w<\/figcaption><\/figure>\n\n\n\n<p>Niestety, mam wra\u017cenie, \u017ce jeste\u015bmy tutaj w samonap\u0119dzaj\u0105cej si\u0119 spirali &#8211; pobawmy si\u0119 wi\u0119c najpierw w adwokata diab\u0142a. Skoro spada ilo\u015b\u0107 firm u\u017cywaj\u0105cych rozwi\u0105zania Oracle, a koszty rozwoju Javy pozostaj\u0105 sta\u0142e, oczywistym (cho\u0107 bolesnym) rozwi\u0105zaniem okazuje si\u0119 by\u0107 podniesienie cen, aby ca\u0142y biznes si\u0119 spina\u0142. Nale\u017cy te\u017c pami\u0119ta\u0107, \u017ce to nie jest tak, \u017ce do tej pory Oracle JDK by\u0142o za darmo. Model licencyjny zak\u0142ada\u0142 bowiem op\u0142at\u0119 za ka\u017cdy procesor i ka\u017cde stanowisko robocze, na kt\u00f3rym zainstalowany by\u0142 JDK. Istniej\u0105cy model, kt\u00f3ry uwa\u017cany by\u0142 za korzystniejszy i za kt\u00f3rym b\u0119dziemy t\u0119skni\u0107, by\u0142 do\u015b\u0107 zbli\u017cony do mocno krytykowanej w zesz\u0142ym roku zmiany licencji Akki, r\u00f3wnie\u017c wprowadzaj\u0105cej op\u0142aty per procesor.<\/p>\n\n\n\n<p>Zmiany nie b\u0119d\u0105 dotyczy\u0107 te\u017c ju\u017c p\u0142ac\u0105cych klient\u00f3w, kt\u00f3rzy b\u0119d\u0105 mogli si\u0119 rozlicza\u0107 na wsp\u00f3\u0142czesnych warunkach (aczkolwiek nie uda\u0142o mi si\u0119 dogrzeba\u0107, w jaki spos\u00f3b rozwi\u0105zane zostanie np. rozszerzenie licencji). Ko\u0144cz\u0105c na pozytywnej nucie, zapisy mog\u0105 by\u0107 teoretycznie korzystne dla niekt\u00f3rych firm, zw\u0142aszcza ma\u0142ych startup\u00f3w stricte technologicznych, posiadaj\u0105cych ma\u0142\u0105 ilo\u015b\u0107 pracownik\u00f3w. Enterprise trac\u0105 chyba w ka\u017cdej konfiguracji, ale mali, szybko skaluj\u0105cy si\u0119 mog\u0105 zyska\u0107 &#8211; aczkolwiek wbrew tej teorii mo\u017ce by\u0107 fakt wysokich op\u0142at per pracownik (15$\/mc) w firmach poni\u017cej 1000 zatrudnionych os\u00f3b.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/d24.jpg\" alt=\"\" width=\"353\" height=\"370\"\/><figcaption class=\"wp-element-caption\">Oracle to wsp\u00f3\u0142czesny Robin Hood, nie ma co.<\/figcaption><\/figure><\/div>\n\n\n<p>W dalszym ci\u0105gu jednak zapis: <\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Employee for Java SE Universal Subscription: is defined as (i) all of Your full-time, part-time, temporary employees, and (ii) all of the full-time employees, part-time employees and temporary employees of Your agents, contractors, outsourcers, and consultants that support Your internal business operations. The quantity of the licenses required is determined by the number of Employees and not just the actual number of employees that use the Programs<\/p>\n<\/blockquote>\n\n\n\n<p>jest do\u015b\u0107 przera\u017caj\u0105cy. Oracle JDK jest cz\u0119sto u\u017cywana przez firmy, kt\u00f3rych technologia nie jest core, a po prostu nap\u0119dza istniej\u0105cy biznes. Przypominam, \u017ce licencja bowiem bierze pod uwag\u0119 WSZYSTKICH pracownik\u00f3w, nie tylko tych bezpo\u015brednio zaanga\u017cowanych w technologi\u0119. Tego typu firmy, je\u015bli Oracle nie wprowadzi jakiej\u015b formy rycza\u0142tu, potencjalnie mog\u0105 spodziewa\u0107 si\u0119 najwy\u017cszego rachunku. Nathan Biggs z <a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a> i jego syntetyczne (ale nie jako\u015b mocno nierealistyczne) przyk\u0142ady pokazuj\u0105 olbrzymi wzrost koszt\u00f3w.<\/p>\n\n\n\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce Oracle nie jest jedynym dostawc\u0105 JDK, wi\u0119c ka\u017cdy chc\u0105cy u\u017cywa\u0107 Javy za darmo, mo\u017ce u\u017cy\u0107 np. Adoptium. W najgorszej sytuacji znajduj\u0105 si\u0119 firmy, kt\u00f3re ci\u0105gle nie zmigrowa\u0142y si\u0119 na najnowsze edycji JDK, przez co np. musz\u0105 p\u0142aci\u0107 dodatkowo za wsparcie takiego JDK 1.8. Je\u015bli jednak firma ma w miar\u0119 aktualny stack technologiczny, ale potrzebuje opcji p\u0142atnego supportu, to istnieje grono alternatywnych vendor\u00f3w.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4.png\" alt=\"\" class=\"wp-image-14277\" width=\"400\" height=\"225\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4.png 800w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4-300x169.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4-768x432.png 768w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><figcaption class=\"wp-element-caption\">Komunikat prosto z siedziby BellSoft i Azul<\/figcaption><\/figure><\/div>\n\n\n<p>Co jest smutne &#8211; wiedz\u0105 to co prawda ludzie znaj\u0105cy ekosystem Javy, ale dla szerokiego odbiorcy jest to stan mocno nieintuicyjny. W ko\u0144cu nie ma alternatywnych dystrybucji Go czy Rusta (albo s\u0105 statystycznie pomijalne). Dlatego mam obawy, \u017ce ca\u0142o\u015b\u0107 bardzo mocno wp\u0142ynie na reputacj\u0119 Javy jako j\u0119zyka, wida\u0107, \u017ce temat jest bardzo no\u015bny i odbija si\u0119 szerokim echem.<\/p>\n\n\n\n<p>A \u017ceby zako\u0144czy\u0107 czym\u015b akcjonowalnym &#8211; je\u017celi aktualnie w\u0142a\u015bnie stoicie przed decyzj\u0105, jakie kroki powzi\u0105\u0107 po wspomnianej zmianie pricingu, to najlepsze opracowanie dost\u0119pnych alternatyw znajdziecie na <a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">Oracle Java SE Universal Subscription FAQ<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">2022 State of the Java Ecosystem Report<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">Oracle changing Java licensing from per-processor to a multiplier of employee headcount &#8211; costs could go up singificantly<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/li>\n<\/ul>\n\n\n\n<h2 id=\"2-atomicjar-zgarnia-25-milionow-finansowania-i-odpala-testcontainers-cloud\" data-num=2>2. AtomicJar zgarnia 25 milion\u00f3w finansowania i odpala TestContainers Cloud<\/h2>\n\n\n\n<p>O ile w wypadku JavaScriptowych infrastrukturalnych projekt\u00f3w do\u015b\u0107 cz\u0119sto (a przynajmniej 2021 i 2022 nas w tym temacie dosy\u0107 rozpie\u015bci\u0142y) mamy do czynienia z og\u0142oszeniami nowych rund zewn\u0119trznego finansowania (Vercel, Deno), o tyle relatywnie rzadko s\u0142yszy si\u0119, aby jaka\u015b javowa biblioteka zak\u0142ada\u0142a w\u0142asn\u0105 chmur\u0119 (chyba, \u017ce bierzemy tutaj pod uwag\u0119 takiego Confluence i Kafk\u0119). Dlatego te\u017c ze sporym u\u015bmiechem przywita\u0142em zesz\u0142otygodniowe og\u0142oszenie od AtomicJar, w kt\u00f3rym to firma chwali\u0142a si\u0119 <a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">rund\u0105 finansowania na 25 milion\u00f3w dolar\u00f3w<\/a>. <\/p>\n\n\n\n<p>\u017beby przedstawi\u0107, na co maj\u0105 i\u015b\u0107 dane \u015brodki, warto przypomnie\u0107 sobie czym AtomicJar si\u0119 zajmuje. Kojarzycie TestContainers? Jest to biblioteka wspieraj\u0105ca dla JUnita, zapewniaj\u0105ca lekkie, jednorazowe instancje popularnych baz danych, przegl\u0105darek internetowych dla Selenium i og\u00f3lnie wszystkiego, co mo\u017cna \u0142atwo uruchomi\u0107 w kontenerze Dockera. Wprawdzie wiele os\u00f3b pewnie b\u0119dzie z\u017cyma\u0107 si\u0119 na uruchamianie kontener\u00f3w w testach jednostkowych, ale popularno\u015b\u0107 TestContainers udowadnia, jak bardzo cz\u0119sty jest to przypadek u\u017cycia.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"498\" height=\"280\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/w498.webp\" alt=\"\" class=\"wp-image-14265\"\/><figcaption class=\"wp-element-caption\">Po prostu nazwiemy nasze testy integracyjnymi.<\/figcaption><\/figure><\/div>\n\n\n<p>Pieni\u0105dze od inwestora maj\u0105 i\u015b\u0107 na dalszy rozw\u00f3j w\u0142asnego rozwi\u0105zanie Software-as-a-Service firmy &#8211; TestContainers Cloud. Pozwala ono na uruchamianie rzeczonych kontener\u00f3w nie na lokalnej maszynie, a w chmurze. Tw\u00f3rcy twierdz\u0105, \u017ce takie rozwi\u0105zanie uwalnia maszyny programist\u00f3w od zasobo\u017cernych proces\u00f3w, a tak\u017ce jest agnostyczne w stosunku do architektury (ca\u0142o\u015b\u0107 projektu zainspirowa\u0142 podobno pocz\u0105tkowy brak wsparcia dla ARM przez Dockera). I o ile ten drugi argument wydaje mi si\u0119 troch\u0119 naci\u0105gany, o tyle pierwszy nawet do mnie przemawia. Odpalenie ci\u0119\u017cszej suity test\u00f3w na komputerze z 16GB RAMu (a w niekt\u00f3rych przypadkach 32GB) w dzisiejszych czasach to obowi\u0105zkowa przerwa kawowa\u2026 <\/p>\n\n\n\n<p><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">Og\u0142oszeniu finansowania<\/a> towarzyszy te\u017c uruchomienie <a href=\"testcontainers.cloud\">otwartej wersji Beta us\u0142ugi TestContainers Cloud<\/a>. Nie pozostaje nic innego jak AtomicJar pogratulowa\u0107 i \u017cyczy\u0107 sukces\u00f3w \ud83c\udf89. Bardzo chcia\u0142bym, aby takie produkty jak ich nie by\u0142y potrzebne, ale niestety, bardzo s\u0105.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1024x538.png\" alt=\"\" class=\"wp-image-14263\" width=\"768\" height=\"404\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1024x538.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-300x158.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-768x403.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image.png 1200w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><figcaption class=\"wp-element-caption\">I tak, wiem, \u017ce pewnie w Waszych firmach testy odpalaj\u0105 si\u0119 szybko i piramidka jest zawsze dobrze odzwierciedlona, ale ja jako\u015b zwykle mia\u0142em okazj\u0119 pracowa\u0107 z projektami pisanymi przez ludzi, nie anio\u0142\u00f3w.<\/figcaption><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">AtomicJar Secures $25 Million in Series A Funding and Launches Public Beta of Testcontainers Cloud<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">A letter to the Testcontainers community<\/a><\/li>\n\n\n\n<li><a href=\"testcontainers.cloud\">testcontainers.cloud<\/a><\/li>\n<\/ul>\n\n\n\n<h2 id=\"3-co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm\" data-num=3>3. Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ?<\/h2>\n\n\n\n<p>A \u017ce ju\u017c w pierwszej sekcji udowodnili\u015bmy sobie, \u017ce statystyki u\u017cycia s\u0105 przydatne na sam koniec mam dla Was raport<\/p>\n\n\n\n<p>Co\u015b ostatnio JetBrains ma mocno przesuni\u0119ty cykl publikacyjny. Najpierw ko\u0144c\u00f3wk\u0105 musieli\u015bmy bardzo d\u0142ugo czeka\u0107 na to, aby firma wreszcie oficjalnie przyzna\u0142a si\u0119 do wydanego ko\u0144c\u00f3wk\u0105 roku Kotlina 1.8, a teraz w styczniu 2023 dostali\u015bmy ichniejszy <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">State of The Developer Ecosystem 2022<\/a>. Niby nic nie ma w tym dziwnego &#8211; w ko\u0144cu jak przy okazji AtomicJar por\u00f3wnywali\u015bmy ju\u017c do JavaScript\u00f3w, to du\u017ce raporty z tego ekosystemu te\u017c pojawi\u0142y si\u0119 dopiero w styczniu tego roku, to jednak State of Developer Ecosystem co roku publikowany by\u0142 jesieni\u0105. Przyznam, \u017ce czeka\u0142em na ten raport &#8211; o ile bowiem dotyka on szerszej grupy j\u0119zyk\u00f3w ni\u017c tylko te JVM-owe, to stanowi bardzo dobre \u017ar\u00f3d\u0142o statystyk, kt\u00f3rymi b\u0119d\u0119 m\u00f3g\u0142 szafowa\u0107 przez reszt\u0119 roku. <\/p>\n\n\n\n<p>Zagl\u0105dnijmy zatem do \u015brodka, co te\u017c ciekawego dzieje si\u0119 w j\u0119zykach JVM, a przynajmniej tych trzech zawartych w raporcie &#8211; swoje miejsce znalaz\u0142y w nim bowiem Java, Kotlin oraz Scala. Wybra\u0142em dla Was te, kt\u00f3re z mojej perspektywy by\u0142y najbardziej interesuj\u0105ce. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/wSgso5y.png\" alt=\"\" width=\"383\" height=\"579\"\/><\/figure><\/div>\n\n\n<p>Zacznijmy od statystyk u\u017cycia konkretnych wersji JDK. Mimo, \u017ce w momencie publikacji nie posiada\u0142a ju\u017c du\u017cego wsparcia, to jednak w dalszym ci\u0105gu JDK 8 jest kr\u00f3lem, je\u015bli chodzi o adopcje. Zauwa\u017cy\u0107 trzeba jednak powolne odchodzenie od tego wydania &#8211; zaliczy\u0142o ono bowiem spadek z 72% do 60%, a wi\u0119c o 12 punkt\u00f3w procentowych. Nie zmienia to faktu, \u017ce to w\u0142a\u015bnie starusie\u0144ka &#8222;\u00f3semka&#8221; pozostaje kr\u00f3lem je\u015bli chodzi o adopcje, i goniona jest przez JDK 11 (48%) oraz JDK 17 (30%). U\u017cycie wersji nie-LTS jest (pewnie zgodnie z planem) s\u0105 raczej homeopatyczne. Przypominam, \u017ce dane s\u0105 zbierane na pierwsz\u0105 po\u0142ow\u0119 2022, wi\u0119c sytuacja mog\u0142a si\u0119 jeszcze troch\u0119 zmieni\u0107<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/vkFGKLC.png\" alt=\"\" width=\"432\" height=\"444\"\/><\/figure><\/div>\n\n\n<p>Niepodzielnie rz\u0105dzi te\u017c Spring Boot i Spring MVC, ca\u0142a reszta stawki nie by\u0142a w stanie dobi\u0107 do 5% u\u017cycia. Dziwnym wyborem jest te\u017c umieszczenie w stawce JSF &#8211; troch\u0119 takie por\u00f3wnywanie jab\u0142ek do pomara\u0144czy. Ciekawe, czy bior\u0105c pod uwag\u0119 totaln\u0105 dominacje Springa, jego rezygnacja z JDK starszych ni\u017c JDK 17 wp\u0142ynie na State of The Developer Ecosystem 2023.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JbglhRw.png\" alt=\"\" width=\"937\" height=\"328\"\/><\/figure><\/div>\n\n\n<p>Powy\u017cszy wykres pokazuje, dlaczego lubi\u0119 tego typu statystyki. Bazuj\u0105c tylko na obecno\u015bci w dyskusji, wydawa\u0107 by si\u0119 mog\u0142o, \u017ce Gradle ju\u017c przej\u0105\u0142 ekosystem narz\u0119dzi do budowania projekt\u00f3w javowych. Okazuje si\u0119 jednak, \u017ce cho\u0107 Gradle rzeczywi\u015bcie przebi\u0142 granic\u0119 50% adopcji, to do starego, cichszego ostatnio Mavena jeszcze sporo mu brakuje.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ErmLOPD.png\" alt=\"\" width=\"536\" height=\"452\"\/><\/figure><\/div>\n\n\n<p>Je\u015bli chodzi o Kotlina, to najciekawsz\u0105 statystyk\u0105 jest chyba u\u017cycie j\u0119zyka w poszczeg\u00f3lnych \u015brodowiskach. Procentowo, adopcja mobilna (zar\u00f3wno Android, jak i MultiPlatform) ro\u015bnie bowiem w stosunku do tej serwerowej, kt\u00f3ra to jako jedyna zaliczy\u0142a spadki w punktach procentowych. Zastanawia\u0142em si\u0119, czy nie jest to efekt wi\u0119kszej bazy u\u017cytkownik\u00f3w, ale akurat ta mniej wi\u0119cej pokrywa si\u0119 z t\u0105 z zesz\u0142ego roku (bazuj\u0105c na danych o ilo\u015bci u\u017cytkownik\u00f3w jak i procencie z nich u\u017cywaj\u0105cych Kotlina, wed\u0142ug moich zgrubnych wylicze\u0144, zar\u00f3wno w 2021, jak i 2022 wzi\u0119\u0142o udzia\u0142 oko\u0142o ~4500 kotlinowc\u00f3w). Ciekawe, na ile jest to jednorazowa sytuacja czy bardziej regularny trend.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/mZDZc9A.png\" alt=\"\" width=\"458\" height=\"334\"\/><\/figure><\/div>\n\n\n<p>Na koniec sp\u00f3jrzmy sobie na Scal\u0119. W wypadku tego j\u0119zyka wyra\u017anie wida\u0107, \u017ce mamy do czynienia z raczej ju\u017c ustabilizowanymi przypadkami u\u017cycia, aczkolwiek nie a\u017c tak dominuj\u0105cymi jak Spring w wypadku Javy. Bazuj\u0105c na raporcie, je\u017celi kto\u015b ma w projekcie Scal\u0119, to z du\u017cym prawdopodobie\u0144stwem mo\u017cecie za\u0142o\u017cy\u0107, \u017ce u\u017cywa jej do Akki lub Sparka, a dodatkowo posiada w projekcie jaka\u015b bibliotek\u0119 wspieraj\u0105c\u0105 programowanie funkcyjne. Przynajmniej ja tak odczytuje powy\u017csze dane.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/4Ae1LiW.png\" alt=\"\" width=\"421\" height=\"491\"\/><\/figure><\/div>\n\n\n<p>Na ko\u0144cu za\u015b sp\u00f3jrzmy na adopcje poszczeg\u00f3lnych wersji Scali. Tutaj mam dobr\u0105 nowin\u0119 dla j\u0119zyka &#8211; wersja 3.0 zdecydowanie ro\u015bnie, wszystkie pozosta\u0142e wydania malej\u0105. Wyra\u017anie jednak wida\u0107, \u017ce wszystkie wersje od 2.11 w g\u00f3r\u0119 maj\u0105 ci\u0105gle spor\u0105 adopcj\u0119, proces b\u0119dzie jeszcze raczej trwa\u0107.<\/p>\n\n\n\n<p>Danych jest znacznie wi\u0119cej, pe\u0142ny raport znajdziecie na stronie <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/java\/\">The State of Developer Ecosystem 2022 &#8211; Java<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/kotlin\/\">The State of Developer Ecosystem 2022 &#8211; Kotlin<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/scala\/\">The State of Developer Ecosystem 2022 &#8211; Scala<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Dzisiaj b\u0119dzie du\u017co o pieni\u0105dzach &#8211; dosz\u0142o bowiem do zmiany pricingu Oracle JDK, a AtomicJar otrzyma\u0142 grub\u0105 rund\u0119 finansowania. Gwiazd\u0105 wydania jest jednak gar\u015b\u0107 statystyk pochodz\u0105cych ze State of Developer Ecosystem 2022 od JetBrains<\/p>\n","protected":false},"author":10,"featured_media":14280,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[23],"tags":[],"class_list":["post-14259","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jvm"],"acf":{"estimated_reading_time":"10","feature_image_blog":{"ID":14324,"id":14324,"title":"ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db","filename":"ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","filesize":2131474,"url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","link":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/arturskowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-2\/","alt":"","author":"10","description":"","caption":"","name":"arturskowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-2","status":"inherit","uploaded_to":14259,"date":"2023-02-03 09:23:03","modified":"2023-02-03 09:23:03","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/vived.io\/wp-includes\/images\/media\/default.png","width":1536,"height":1024,"sizes":{"thumbnail":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-150x150.png","thumbnail-width":150,"thumbnail-height":150,"medium":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-300x200.png","medium-width":300,"medium-height":200,"medium_large":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-768x512.png","medium_large-width":768,"medium_large-height":512,"large":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db-1024x683.png","large-width":1024,"large-height":683,"1536x1536":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","1536x1536-width":1536,"1536x1536-height":1024,"2048x2048":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","2048x2048-width":1536,"2048x2048-height":1024,"gform-image-choice-sm":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","gform-image-choice-sm-width":300,"gform-image-choice-sm-height":200,"gform-image-choice-md":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","gform-image-choice-md-width":400,"gform-image-choice-md-height":267,"gform-image-choice-lg":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ArturSkowronski_ai_calculating_statistics_85017180-ec50-4b3e-9be4-4c12691ce5db.png","gform-image-choice-lg-width":600,"gform-image-choice-lg-height":400}},"weekly_summary":true,"push_notification_image":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","feature_image_visible":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Co &quot;State of Developer Ecosystem 2022&quot; m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Co &quot;State of Developer Ecosystem 2022&quot; m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived\" \/>\n<meta property=\"og:description\" content=\"Dzisiaj b\u0119dzie du\u017co o pieni\u0105dzach - dosz\u0142o bowiem do zmiany pricingu Oracle JDK, a AtomicJar otrzyma\u0142 grub\u0105 rund\u0119 finansowania. Gwiazd\u0105 wydania jest jednak gar\u015b\u0107 statystyk pochodz\u0105cych ze State of Developer Ecosystem 2022 od JetBrains\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2023-02-02T13:38:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-03T09:23:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Artur Skowro\u0144ski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ? &#8211; JVM Weekly vol. 123\",\"datePublished\":\"2023-02-02T13:38:02+00:00\",\"dateModified\":\"2023-02-03T09:23:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\"},\"wordCount\":2097,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png\",\"articleSection\":[\"JVM\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\",\"url\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\",\"name\":\"Co \\\"State of Developer Ecosystem 2022\\\" m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png\",\"datePublished\":\"2023-02-02T13:38:02+00:00\",\"dateModified\":\"2023-02-03T09:23:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png\",\"width\":1200,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ? &#8211; JVM Weekly vol. 123\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vived.io\/pl\/#website\",\"url\":\"https:\/\/vived.io\/pl\/\",\"name\":\"Vived\",\"description\":\"platform empowering IT people and technology companies to synergic growth\",\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/vived.io\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/vived.io\/pl\/#organization\",\"name\":\"Vived\",\"url\":\"https:\/\/vived.io\/pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"width\":136,\"height\":45,\"caption\":\"Vived\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\",\"name\":\"Artur Skowro\u0144ski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g\",\"caption\":\"Artur Skowro\u0144ski\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Co \"State of Developer Ecosystem 2022\" m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/","og_locale":"pl_PL","og_type":"article","og_title":"Co \"State of Developer Ecosystem 2022\" m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived","og_description":"Dzisiaj b\u0119dzie du\u017co o pieni\u0105dzach - dosz\u0142o bowiem do zmiany pricingu Oracle JDK, a AtomicJar otrzyma\u0142 grub\u0105 rund\u0119 finansowania. Gwiazd\u0105 wydania jest jednak gar\u015b\u0107 statystyk pochodz\u0105cych ze State of Developer Ecosystem 2022 od JetBrains","og_url":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/","og_site_name":"Vived","article_published_time":"2023-02-02T13:38:02+00:00","article_modified_time":"2023-02-03T09:23:55+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","type":"image\/png"}],"author":"Artur Skowro\u0144ski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ? &#8211; JVM Weekly vol. 123","datePublished":"2023-02-02T13:38:02+00:00","dateModified":"2023-02-03T09:23:55+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/"},"wordCount":2097,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","articleSection":["JVM"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/","url":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/","name":"Co \"State of Developer Ecosystem 2022\" m\u00f3wi nam o Javie i JVM ? - JVM Weekly vol. 123 - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","datePublished":"2023-02-02T13:38:02+00:00","dateModified":"2023-02-03T09:23:55+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JVM-Weekly-1200x628_V2.png","width":1200,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/co-state-of-developer-ecosystem-2022-mowi-nam-o-javie-i-jvm-jvm-weekly-vol-123\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"Co &#8222;State of Developer Ecosystem 2022&#8221; m\u00f3wi nam o Javie i JVM ? &#8211; JVM Weekly vol. 123"}]},{"@type":"WebSite","@id":"https:\/\/vived.io\/pl\/#website","url":"https:\/\/vived.io\/pl\/","name":"Vived","description":"platform empowering IT people and technology companies to synergic growth","publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vived.io\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/vived.io\/pl\/#organization","name":"Vived","url":"https:\/\/vived.io\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","width":136,"height":45,"caption":"Vived"},"image":{"@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3","name":"Artur Skowro\u0144ski","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","caption":"Artur Skowro\u0144ski"}}]}},"blocks_vived":[{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>1. Oracle wywraca do g\u00f3ry nogami pricing Javy<\/h2>\n","innerContent":["\n<h2>1. Oracle wywraca do g\u00f3ry nogami pricing Javy<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Java bardzo rzadko trafia na j\u0119zyki spo\u0142eczno\u015bci programistycznej. O ile nas interesowa\u0107 mog\u0105 nowe wersje JDK, zmiany w maszynie wirtualnej i inne wiadomo\u015bci z ekosystemu, to jednak kto\u015b \"niezainwestowany\" w ekosystem o Javie s\u0142yszy g\u0142\u00f3wnie w momencie internetowych \"dram\". I takowa wydarzy\u0142a si\u0119 w\u0142a\u015bnie w zesz\u0142ym tygodniu. A wszystko przez to, \u017ce Oracle zdecydowa\u0142 si\u0119 zmieni\u0107 spos\u00f3b naliczania op\u0142at za swoje JDK.<\/p>\n","innerContent":["\n<p>Java bardzo rzadko trafia na j\u0119zyki spo\u0142eczno\u015bci programistycznej. O ile nas interesowa\u0107 mog\u0105 nowe wersje JDK, zmiany w maszynie wirtualnej i inne wiadomo\u015bci z ekosystemu, to jednak kto\u015b \"niezainwestowany\" w ekosystem o Javie s\u0142yszy g\u0142\u00f3wnie w momencie internetowych \"dram\". I takowa wydarzy\u0142a si\u0119 w\u0142a\u015bnie w zesz\u0142ym tygodniu. A wszystko przez to, \u017ce Oracle zdecydowa\u0142 si\u0119 zmieni\u0107 spos\u00f3b naliczania op\u0142at za swoje JDK.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/C2cF0nE.png\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Ostatni raz widzia\u0142em <a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">cokolwiek JVM-owego<\/a> na szczycie <a href=\"https:\/\/www.reddit.com\/r\/programming\/top\/\">\/r\/programming<\/a> przy okazji Log4Shell.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/C2cF0nE.png\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Ostatni raz widzia\u0142em <a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">cokolwiek JVM-owego<\/a> na szczycie <a href=\"https:\/\/www.reddit.com\/r\/programming\/top\/\">\/r\/programming<\/a> przy okazji Log4Shell.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zacznijmy od fakt\u00f3w: 23 stycznia Oracle poinformowa\u0142, \u017ce <a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">zmienia model licencyjny Oracle JDK na Java SE Universal Subscription<\/a>. Nowy cennik, zamiast bazowa\u0107 na stanowiskach roboczych i procesorach, b\u0119dzie opiera\u0142 si\u0119 na ilo\u015bci pracownik\u00f3w zatrudnianych przez firm\u0119: w tych do 1000 pracownik\u00f3w op\u0142aty wynosi\u0107 b\u0119d\u0105 15$\/mc, dla wi\u0119kszych b\u0119dzie to 5,25$\/mc. Dla wielu (wi\u0119kszo\u015bci?) firm korzystaj\u0105cych z Oracle JDK oznacza\u0107 to b\u0119dzie olbrzymi wzrost koszt\u00f3w, poniewa\u017c w obliczeniach brani s\u0105 pod uwag\u0119 nie tylko programi\u015bci, ale wszyscy pracownicy firmy - tak\u017ce ci spoza dzia\u0142u IT, a tak\u017ce np. kontraktorzy.<\/p>\n","innerContent":["\n<p>Zacznijmy od fakt\u00f3w: 23 stycznia Oracle poinformowa\u0142, \u017ce <a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">zmienia model licencyjny Oracle JDK na Java SE Universal Subscription<\/a>. Nowy cennik, zamiast bazowa\u0107 na stanowiskach roboczych i procesorach, b\u0119dzie opiera\u0142 si\u0119 na ilo\u015bci pracownik\u00f3w zatrudnianych przez firm\u0119: w tych do 1000 pracownik\u00f3w op\u0142aty wynosi\u0107 b\u0119d\u0105 15$\/mc, dla wi\u0119kszych b\u0119dzie to 5,25$\/mc. Dla wielu (wi\u0119kszo\u015bci?) firm korzystaj\u0105cych z Oracle JDK oznacza\u0107 to b\u0119dzie olbrzymi wzrost koszt\u00f3w, poniewa\u017c w obliczeniach brani s\u0105 pod uwag\u0119 nie tylko programi\u015bci, ale wszyscy pracownicy firmy - tak\u017ce ci spoza dzia\u0142u IT, a tak\u017ce np. kontraktorzy.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pr\u00f3bowa\u0142em oszacowa\u0107, jak wygl\u0105da obecnie u\u017cycie poszczeg\u00f3lnych JDK, i uda\u0142o mi si\u0119 dogrzeba\u0107 do raportu <a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">State of the Java Ecosystem<\/a> opublikowanego przez New Relic. Z niego wynika, \u017ce popularno\u015bci Oracle JDK mocno przedostatnie lata spada\u0142a (75% w 2020 do 35% w 2022), wi\u0119c je\u015bli trend si\u0119 utrzyma\u0142, pocz\u0105tkiem 2023 b\u0119dziemy m\u00f3wi\u0107 o jeszcze mniejszych liczbach. Podejrzewam zreszt\u0105, \u017ce ostatnie zmiany pricingu tylko ten odp\u0142yw przyspiesz\u0105.<\/p>\n","innerContent":["\n<p>Pr\u00f3bowa\u0142em oszacowa\u0107, jak wygl\u0105da obecnie u\u017cycie poszczeg\u00f3lnych JDK, i uda\u0142o mi si\u0119 dogrzeba\u0107 do raportu <a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">State of the Java Ecosystem<\/a> opublikowanego przez New Relic. Z niego wynika, \u017ce popularno\u015bci Oracle JDK mocno przedostatnie lata spada\u0142a (75% w 2020 do 35% w 2022), wi\u0119c je\u015bli trend si\u0119 utrzyma\u0142, pocz\u0105tkiem 2023 b\u0119dziemy m\u00f3wi\u0107 o jeszcze mniejszych liczbach. Podejrzewam zreszt\u0105, \u017ce ostatnie zmiany pricingu tylko ten odp\u0142yw przyspiesz\u0105.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"id":14270,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-1024x440.png\" alt=\"\" class=\"wp-image-14270\"\/><figcaption class=\"wp-element-caption\">Tak w raporcie rozk\u0142ada si\u0119 u\u017cycie poszczeg\u00f3lnych Vendor\u00f3w<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1-1024x440.png\" alt=\"\" class=\"wp-image-14270\"\/><figcaption class=\"wp-element-caption\">Tak w raporcie rozk\u0142ada si\u0119 u\u017cycie poszczeg\u00f3lnych Vendor\u00f3w<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Niestety, mam wra\u017cenie, \u017ce jeste\u015bmy tutaj w samonap\u0119dzaj\u0105cej si\u0119 spirali - pobawmy si\u0119 wi\u0119c najpierw w adwokata diab\u0142a. Skoro spada ilo\u015b\u0107 firm u\u017cywaj\u0105cych rozwi\u0105zania Oracle, a koszty rozwoju Javy pozostaj\u0105 sta\u0142e, oczywistym (cho\u0107 bolesnym) rozwi\u0105zaniem okazuje si\u0119 by\u0107 podniesienie cen, aby ca\u0142y biznes si\u0119 spina\u0142. Nale\u017cy te\u017c pami\u0119ta\u0107, \u017ce to nie jest tak, \u017ce do tej pory Oracle JDK by\u0142o za darmo. Model licencyjny zak\u0142ada\u0142 bowiem op\u0142at\u0119 za ka\u017cdy procesor i ka\u017cde stanowisko robocze, na kt\u00f3rym zainstalowany by\u0142 JDK. Istniej\u0105cy model, kt\u00f3ry uwa\u017cany by\u0142 za korzystniejszy i za kt\u00f3rym b\u0119dziemy t\u0119skni\u0107, by\u0142 do\u015b\u0107 zbli\u017cony do mocno krytykowanej w zesz\u0142ym roku zmiany licencji Akki, r\u00f3wnie\u017c wprowadzaj\u0105cej op\u0142aty per procesor.<\/p>\n","innerContent":["\n<p>Niestety, mam wra\u017cenie, \u017ce jeste\u015bmy tutaj w samonap\u0119dzaj\u0105cej si\u0119 spirali - pobawmy si\u0119 wi\u0119c najpierw w adwokata diab\u0142a. Skoro spada ilo\u015b\u0107 firm u\u017cywaj\u0105cych rozwi\u0105zania Oracle, a koszty rozwoju Javy pozostaj\u0105 sta\u0142e, oczywistym (cho\u0107 bolesnym) rozwi\u0105zaniem okazuje si\u0119 by\u0107 podniesienie cen, aby ca\u0142y biznes si\u0119 spina\u0142. Nale\u017cy te\u017c pami\u0119ta\u0107, \u017ce to nie jest tak, \u017ce do tej pory Oracle JDK by\u0142o za darmo. Model licencyjny zak\u0142ada\u0142 bowiem op\u0142at\u0119 za ka\u017cdy procesor i ka\u017cde stanowisko robocze, na kt\u00f3rym zainstalowany by\u0142 JDK. Istniej\u0105cy model, kt\u00f3ry uwa\u017cany by\u0142 za korzystniejszy i za kt\u00f3rym b\u0119dziemy t\u0119skni\u0107, by\u0142 do\u015b\u0107 zbli\u017cony do mocno krytykowanej w zesz\u0142ym roku zmiany licencji Akki, r\u00f3wnie\u017c wprowadzaj\u0105cej op\u0142aty per procesor.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zmiany nie b\u0119d\u0105 dotyczy\u0107 te\u017c ju\u017c p\u0142ac\u0105cych klient\u00f3w, kt\u00f3rzy b\u0119d\u0105 mogli si\u0119 rozlicza\u0107 na wsp\u00f3\u0142czesnych warunkach (aczkolwiek nie uda\u0142o mi si\u0119 dogrzeba\u0107, w jaki spos\u00f3b rozwi\u0105zane zostanie np. rozszerzenie licencji). Ko\u0144cz\u0105c na pozytywnej nucie, zapisy mog\u0105 by\u0107 teoretycznie korzystne dla niekt\u00f3rych firm, zw\u0142aszcza ma\u0142ych startup\u00f3w stricte technologicznych, posiadaj\u0105cych ma\u0142\u0105 ilo\u015b\u0107 pracownik\u00f3w. Enterprise trac\u0105 chyba w ka\u017cdej konfiguracji, ale mali, szybko skaluj\u0105cy si\u0119 mog\u0105 zyska\u0107 - aczkolwiek wbrew tej teorii mo\u017ce by\u0107 fakt wysokich op\u0142at per pracownik (15$\/mc) w firmach poni\u017cej 1000 zatrudnionych os\u00f3b.<\/p>\n","innerContent":["\n<p>Zmiany nie b\u0119d\u0105 dotyczy\u0107 te\u017c ju\u017c p\u0142ac\u0105cych klient\u00f3w, kt\u00f3rzy b\u0119d\u0105 mogli si\u0119 rozlicza\u0107 na wsp\u00f3\u0142czesnych warunkach (aczkolwiek nie uda\u0142o mi si\u0119 dogrzeba\u0107, w jaki spos\u00f3b rozwi\u0105zane zostanie np. rozszerzenie licencji). Ko\u0144cz\u0105c na pozytywnej nucie, zapisy mog\u0105 by\u0107 teoretycznie korzystne dla niekt\u00f3rych firm, zw\u0142aszcza ma\u0142ych startup\u00f3w stricte technologicznych, posiadaj\u0105cych ma\u0142\u0105 ilo\u015b\u0107 pracownik\u00f3w. Enterprise trac\u0105 chyba w ka\u017cdej konfiguracji, ale mali, szybko skaluj\u0105cy si\u0119 mog\u0105 zyska\u0107 - aczkolwiek wbrew tej teorii mo\u017ce by\u0107 fakt wysokich op\u0142at per pracownik (15$\/mc) w firmach poni\u017cej 1000 zatrudnionych os\u00f3b.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":353,"height":370},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/d24.jpg\" alt=\"\" width=\"353\" height=\"370\"\/><figcaption class=\"wp-element-caption\">Oracle to wsp\u00f3\u0142czesny Robin Hood, nie ma co.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/d24.jpg\" alt=\"\" width=\"353\" height=\"370\"\/><figcaption class=\"wp-element-caption\">Oracle to wsp\u00f3\u0142czesny Robin Hood, nie ma co.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>W dalszym ci\u0105gu jednak zapis: <\/p>\n","innerContent":["\n<p>W dalszym ci\u0105gu jednak zapis: <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/quote","attrs":[],"innerBlocks":[{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Employee for Java SE Universal Subscription: is defined as (i) all of Your full-time, part-time, temporary employees, and (ii) all of the full-time employees, part-time employees and temporary employees of Your agents, contractors, outsourcers, and consultants that support Your internal business operations. The quantity of the licenses required is determined by the number of Employees and not just the actual number of employees that use the Programs<\/p>\n","innerContent":["\n<p>Employee for Java SE Universal Subscription: is defined as (i) all of Your full-time, part-time, temporary employees, and (ii) all of the full-time employees, part-time employees and temporary employees of Your agents, contractors, outsourcers, and consultants that support Your internal business operations. The quantity of the licenses required is determined by the number of Employees and not just the actual number of employees that use the Programs<\/p>\n"]}],"innerHTML":"\n<blockquote class=\"wp-block-quote\"><\/blockquote>\n","innerContent":["\n<blockquote class=\"wp-block-quote\">",null,"<\/blockquote>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>jest do\u015b\u0107 przera\u017caj\u0105cy. Oracle JDK jest cz\u0119sto u\u017cywana przez firmy, kt\u00f3rych technologia nie jest core, a po prostu nap\u0119dza istniej\u0105cy biznes. Przypominam, \u017ce licencja bowiem bierze pod uwag\u0119 WSZYSTKICH pracownik\u00f3w, nie tylko tych bezpo\u015brednio zaanga\u017cowanych w technologi\u0119. Tego typu firmy, je\u015bli Oracle nie wprowadzi jakiej\u015b formy rycza\u0142tu, potencjalnie mog\u0105 spodziewa\u0107 si\u0119 najwy\u017cszego rachunku. Nathan Biggs z <a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a> i jego syntetyczne (ale nie jako\u015b mocno nierealistyczne) przyk\u0142ady pokazuj\u0105 olbrzymi wzrost koszt\u00f3w.<\/p>\n","innerContent":["\n<p>jest do\u015b\u0107 przera\u017caj\u0105cy. Oracle JDK jest cz\u0119sto u\u017cywana przez firmy, kt\u00f3rych technologia nie jest core, a po prostu nap\u0119dza istniej\u0105cy biznes. Przypominam, \u017ce licencja bowiem bierze pod uwag\u0119 WSZYSTKICH pracownik\u00f3w, nie tylko tych bezpo\u015brednio zaanga\u017cowanych w technologi\u0119. Tego typu firmy, je\u015bli Oracle nie wprowadzi jakiej\u015b formy rycza\u0142tu, potencjalnie mog\u0105 spodziewa\u0107 si\u0119 najwy\u017cszego rachunku. Nathan Biggs z <a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a> i jego syntetyczne (ale nie jako\u015b mocno nierealistyczne) przyk\u0142ady pokazuj\u0105 olbrzymi wzrost koszt\u00f3w.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce Oracle nie jest jedynym dostawc\u0105 JDK, wi\u0119c ka\u017cdy chc\u0105cy u\u017cywa\u0107 Javy za darmo, mo\u017ce u\u017cy\u0107 np. Adoptium. W najgorszej sytuacji znajduj\u0105 si\u0119 firmy, kt\u00f3re ci\u0105gle nie zmigrowa\u0142y si\u0119 na najnowsze edycji JDK, przez co np. musz\u0105 p\u0142aci\u0107 dodatkowo za wsparcie takiego JDK 1.8. Je\u015bli jednak firma ma w miar\u0119 aktualny stack technologiczny, ale potrzebuje opcji p\u0142atnego supportu, to istnieje grono alternatywnych vendor\u00f3w.<\/p>\n","innerContent":["\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce Oracle nie jest jedynym dostawc\u0105 JDK, wi\u0119c ka\u017cdy chc\u0105cy u\u017cywa\u0107 Javy za darmo, mo\u017ce u\u017cy\u0107 np. Adoptium. W najgorszej sytuacji znajduj\u0105 si\u0119 firmy, kt\u00f3re ci\u0105gle nie zmigrowa\u0142y si\u0119 na najnowsze edycji JDK, przez co np. musz\u0105 p\u0142aci\u0107 dodatkowo za wsparcie takiego JDK 1.8. Je\u015bli jednak firma ma w miar\u0119 aktualny stack technologiczny, ale potrzebuje opcji p\u0142atnego supportu, to istnieje grono alternatywnych vendor\u00f3w.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":14277,"width":400,"height":225,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4.png\" alt=\"\" class=\"wp-image-14277\" width=\"400\" height=\"225\"\/><figcaption class=\"wp-element-caption\">Komunikat prosto z siedziby BellSoft i Azul<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-4.png\" alt=\"\" class=\"wp-image-14277\" width=\"400\" height=\"225\"\/><figcaption class=\"wp-element-caption\">Komunikat prosto z siedziby BellSoft i Azul<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Co jest smutne - wiedz\u0105 to co prawda ludzie znaj\u0105cy ekosystem Javy, ale dla szerokiego odbiorcy jest to stan mocno nieintuicyjny. W ko\u0144cu nie ma alternatywnych dystrybucji Go czy Rusta (albo s\u0105 statystycznie pomijalne). Dlatego mam obawy, \u017ce ca\u0142o\u015b\u0107 bardzo mocno wp\u0142ynie na reputacj\u0119 Javy jako j\u0119zyka, wida\u0107, \u017ce temat jest bardzo no\u015bny i odbija si\u0119 szerokim echem.<\/p>\n","innerContent":["\n<p>Co jest smutne - wiedz\u0105 to co prawda ludzie znaj\u0105cy ekosystem Javy, ale dla szerokiego odbiorcy jest to stan mocno nieintuicyjny. W ko\u0144cu nie ma alternatywnych dystrybucji Go czy Rusta (albo s\u0105 statystycznie pomijalne). Dlatego mam obawy, \u017ce ca\u0142o\u015b\u0107 bardzo mocno wp\u0142ynie na reputacj\u0119 Javy jako j\u0119zyka, wida\u0107, \u017ce temat jest bardzo no\u015bny i odbija si\u0119 szerokim echem.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A \u017ceby zako\u0144czy\u0107 czym\u015b akcjonowalnym - je\u017celi aktualnie w\u0142a\u015bnie stoicie przed decyzj\u0105, jakie kroki powzi\u0105\u0107 po wspomnianej zmianie pricingu, to najlepsze opracowanie dost\u0119pnych alternatyw znajdziecie na <a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/p>\n","innerContent":["\n<p>A \u017ceby zako\u0144czy\u0107 czym\u015b akcjonowalnym - je\u017celi aktualnie w\u0142a\u015bnie stoicie przed decyzj\u0105, jakie kroki powzi\u0105\u0107 po wspomnianej zmianie pricingu, to najlepsze opracowanie dost\u0119pnych alternatyw znajdziecie na <a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">Oracle Java SE Universal Subscription FAQ<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.oracle.com\/java\/technologies\/java-se-subscription-faq.html\">Oracle Java SE Universal Subscription FAQ<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/houseofbrick.com\/blog\/oracle-java-pricing\/\">House of Bricks dokona\u0142 pierwszych wylicze\u0144<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">2022 State of the Java Ecosystem Report<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/newrelic.com\/resources\/report\/2022-state-of-java-ecosystem\">2022 State of the Java Ecosystem Report<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">Oracle changing Java licensing from per-processor to a multiplier of employee headcount - costs could go up singificantly<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.reddit.com\/r\/programming\/comments\/10q3aoa\/oracle_changing_java_licensing_from_perprocessor\/\">Oracle changing Java licensing from per-processor to a multiplier of employee headcount - costs could go up singificantly<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/whichjdk.com\/\">whichjdk.com<\/a><\/li>\n"]}],"innerHTML":"\n<ul>\n\n\n\n\n\n\n\n<\/ul>\n","innerContent":["\n<ul>",null,"\n\n",null,"\n\n",null,"\n\n",null,"\n\n",null,"<\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>2. AtomicJar zgarnia 25 milion\u00f3w finansowania i odpala TestContainers Cloud<\/h2>\n","innerContent":["\n<h2>2. AtomicJar zgarnia 25 milion\u00f3w finansowania i odpala TestContainers Cloud<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>O ile w wypadku JavaScriptowych infrastrukturalnych projekt\u00f3w do\u015b\u0107 cz\u0119sto (a przynajmniej 2021 i 2022 nas w tym temacie dosy\u0107 rozpie\u015bci\u0142y) mamy do czynienia z og\u0142oszeniami nowych rund zewn\u0119trznego finansowania (Vercel, Deno), o tyle relatywnie rzadko s\u0142yszy si\u0119, aby jaka\u015b javowa biblioteka zak\u0142ada\u0142a w\u0142asn\u0105 chmur\u0119 (chyba, \u017ce bierzemy tutaj pod uwag\u0119 takiego Confluence i Kafk\u0119). Dlatego te\u017c ze sporym u\u015bmiechem przywita\u0142em zesz\u0142otygodniowe og\u0142oszenie od AtomicJar, w kt\u00f3rym to firma chwali\u0142a si\u0119 <a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">rund\u0105 finansowania na 25 milion\u00f3w dolar\u00f3w<\/a>. <\/p>\n","innerContent":["\n<p>O ile w wypadku JavaScriptowych infrastrukturalnych projekt\u00f3w do\u015b\u0107 cz\u0119sto (a przynajmniej 2021 i 2022 nas w tym temacie dosy\u0107 rozpie\u015bci\u0142y) mamy do czynienia z og\u0142oszeniami nowych rund zewn\u0119trznego finansowania (Vercel, Deno), o tyle relatywnie rzadko s\u0142yszy si\u0119, aby jaka\u015b javowa biblioteka zak\u0142ada\u0142a w\u0142asn\u0105 chmur\u0119 (chyba, \u017ce bierzemy tutaj pod uwag\u0119 takiego Confluence i Kafk\u0119). Dlatego te\u017c ze sporym u\u015bmiechem przywita\u0142em zesz\u0142otygodniowe og\u0142oszenie od AtomicJar, w kt\u00f3rym to firma chwali\u0142a si\u0119 <a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">rund\u0105 finansowania na 25 milion\u00f3w dolar\u00f3w<\/a>. <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>\u017beby przedstawi\u0107, na co maj\u0105 i\u015b\u0107 dane \u015brodki, warto przypomnie\u0107 sobie czym AtomicJar si\u0119 zajmuje. Kojarzycie TestContainers? Jest to biblioteka wspieraj\u0105ca dla JUnita, zapewniaj\u0105ca lekkie, jednorazowe instancje popularnych baz danych, przegl\u0105darek internetowych dla Selenium i og\u00f3lnie wszystkiego, co mo\u017cna \u0142atwo uruchomi\u0107 w kontenerze Dockera. Wprawdzie wiele os\u00f3b pewnie b\u0119dzie z\u017cyma\u0107 si\u0119 na uruchamianie kontener\u00f3w w testach jednostkowych, ale popularno\u015b\u0107 TestContainers udowadnia, jak bardzo cz\u0119sty jest to przypadek u\u017cycia.<\/p>\n","innerContent":["\n<p>\u017beby przedstawi\u0107, na co maj\u0105 i\u015b\u0107 dane \u015brodki, warto przypomnie\u0107 sobie czym AtomicJar si\u0119 zajmuje. Kojarzycie TestContainers? Jest to biblioteka wspieraj\u0105ca dla JUnita, zapewniaj\u0105ca lekkie, jednorazowe instancje popularnych baz danych, przegl\u0105darek internetowych dla Selenium i og\u00f3lnie wszystkiego, co mo\u017cna \u0142atwo uruchomi\u0107 w kontenerze Dockera. Wprawdzie wiele os\u00f3b pewnie b\u0119dzie z\u017cyma\u0107 si\u0119 na uruchamianie kontener\u00f3w w testach jednostkowych, ale popularno\u015b\u0107 TestContainers udowadnia, jak bardzo cz\u0119sty jest to przypadek u\u017cycia.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":14265,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/w498.webp\" alt=\"\" class=\"wp-image-14265\"\/><figcaption class=\"wp-element-caption\">Po prostu nazwiemy nasze testy integracyjnymi.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/w498.webp\" alt=\"\" class=\"wp-image-14265\"\/><figcaption class=\"wp-element-caption\">Po prostu nazwiemy nasze testy integracyjnymi.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pieni\u0105dze od inwestora maj\u0105 i\u015b\u0107 na dalszy rozw\u00f3j w\u0142asnego rozwi\u0105zanie Software-as-a-Service firmy - TestContainers Cloud. Pozwala ono na uruchamianie rzeczonych kontener\u00f3w nie na lokalnej maszynie, a w chmurze. Tw\u00f3rcy twierdz\u0105, \u017ce takie rozwi\u0105zanie uwalnia maszyny programist\u00f3w od zasobo\u017cernych proces\u00f3w, a tak\u017ce jest agnostyczne w stosunku do architektury (ca\u0142o\u015b\u0107 projektu zainspirowa\u0142 podobno pocz\u0105tkowy brak wsparcia dla ARM przez Dockera). I o ile ten drugi argument wydaje mi si\u0119 troch\u0119 naci\u0105gany, o tyle pierwszy nawet do mnie przemawia. Odpalenie ci\u0119\u017cszej suity test\u00f3w na komputerze z 16GB RAMu (a w niekt\u00f3rych przypadkach 32GB) w dzisiejszych czasach to obowi\u0105zkowa przerwa kawowa\u2026 <\/p>\n","innerContent":["\n<p>Pieni\u0105dze od inwestora maj\u0105 i\u015b\u0107 na dalszy rozw\u00f3j w\u0142asnego rozwi\u0105zanie Software-as-a-Service firmy - TestContainers Cloud. Pozwala ono na uruchamianie rzeczonych kontener\u00f3w nie na lokalnej maszynie, a w chmurze. Tw\u00f3rcy twierdz\u0105, \u017ce takie rozwi\u0105zanie uwalnia maszyny programist\u00f3w od zasobo\u017cernych proces\u00f3w, a tak\u017ce jest agnostyczne w stosunku do architektury (ca\u0142o\u015b\u0107 projektu zainspirowa\u0142 podobno pocz\u0105tkowy brak wsparcia dla ARM przez Dockera). I o ile ten drugi argument wydaje mi si\u0119 troch\u0119 naci\u0105gany, o tyle pierwszy nawet do mnie przemawia. Odpalenie ci\u0119\u017cszej suity test\u00f3w na komputerze z 16GB RAMu (a w niekt\u00f3rych przypadkach 32GB) w dzisiejszych czasach to obowi\u0105zkowa przerwa kawowa\u2026 <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">Og\u0142oszeniu finansowania<\/a> towarzyszy te\u017c uruchomienie <a href=\"testcontainers.cloud\">otwartej wersji Beta us\u0142ugi TestContainers Cloud<\/a>. Nie pozostaje nic innego jak AtomicJar pogratulowa\u0107 i \u017cyczy\u0107 sukces\u00f3w \ud83c\udf89. Bardzo chcia\u0142bym, aby takie produkty jak ich nie by\u0142y potrzebne, ale niestety, bardzo s\u0105.<\/p>\n","innerContent":["\n<p><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">Og\u0142oszeniu finansowania<\/a> towarzyszy te\u017c uruchomienie <a href=\"testcontainers.cloud\">otwartej wersji Beta us\u0142ugi TestContainers Cloud<\/a>. Nie pozostaje nic innego jak AtomicJar pogratulowa\u0107 i \u017cyczy\u0107 sukces\u00f3w \ud83c\udf89. Bardzo chcia\u0142bym, aby takie produkty jak ich nie by\u0142y potrzebne, ale niestety, bardzo s\u0105.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":14263,"width":768,"height":404,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1024x538.png\" alt=\"\" class=\"wp-image-14263\" width=\"768\" height=\"404\"\/><figcaption class=\"wp-element-caption\">I tak, wiem, \u017ce pewnie w Waszych firmach testy odpalaj\u0105 si\u0119 szybko i piramidka jest zawsze dobrze odzwierciedlona, ale ja jako\u015b zwykle mia\u0142em okazj\u0119 pracowa\u0107 z projektami pisanymi przez ludzi, nie anio\u0142\u00f3w.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/image-1024x538.png\" alt=\"\" class=\"wp-image-14263\" width=\"768\" height=\"404\"\/><figcaption class=\"wp-element-caption\">I tak, wiem, \u017ce pewnie w Waszych firmach testy odpalaj\u0105 si\u0119 szybko i piramidka jest zawsze dobrze odzwierciedlona, ale ja jako\u015b zwykle mia\u0142em okazj\u0119 pracowa\u0107 z projektami pisanymi przez ludzi, nie anio\u0142\u00f3w.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">AtomicJar Secures $25 Million in Series A Funding and Launches Public Beta of Testcontainers Cloud<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.businesswire.com\/news\/home\/20230125005298\/en\/AtomicJar-Secures-25-Million-in-Series-A-Funding-and-Launches-Public-Beta-of-Testcontainers-Cloud\">AtomicJar Secures $25 Million in Series A Funding and Launches Public Beta of Testcontainers Cloud<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">A letter to the Testcontainers community<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.atomicjar.com\/2023\/01\/letter-to-the-testcontainers-community\/\">A letter to the Testcontainers community<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"testcontainers.cloud\">testcontainers.cloud<\/a><\/li>\n","innerContent":["\n<li><a href=\"testcontainers.cloud\">testcontainers.cloud<\/a><\/li>\n"]}],"innerHTML":"\n<ul>\n\n\n\n<\/ul>\n","innerContent":["\n<ul>",null,"\n\n",null,"\n\n",null,"<\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>3. Co \"State of Developer Ecosystem 2022\" m\u00f3wi nam o Javie i JVM ?<\/h2>\n","innerContent":["\n<h2>3. Co \"State of Developer Ecosystem 2022\" m\u00f3wi nam o Javie i JVM ?<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A \u017ce ju\u017c w pierwszej sekcji udowodnili\u015bmy sobie, \u017ce statystyki u\u017cycia s\u0105 przydatne na sam koniec mam dla Was raport<\/p>\n","innerContent":["\n<p>A \u017ce ju\u017c w pierwszej sekcji udowodnili\u015bmy sobie, \u017ce statystyki u\u017cycia s\u0105 przydatne na sam koniec mam dla Was raport<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Co\u015b ostatnio JetBrains ma mocno przesuni\u0119ty cykl publikacyjny. Najpierw ko\u0144c\u00f3wk\u0105 musieli\u015bmy bardzo d\u0142ugo czeka\u0107 na to, aby firma wreszcie oficjalnie przyzna\u0142a si\u0119 do wydanego ko\u0144c\u00f3wk\u0105 roku Kotlina 1.8, a teraz w styczniu 2023 dostali\u015bmy ichniejszy <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">State of The Developer Ecosystem 2022<\/a>. Niby nic nie ma w tym dziwnego - w ko\u0144cu jak przy okazji AtomicJar por\u00f3wnywali\u015bmy ju\u017c do JavaScript\u00f3w, to du\u017ce raporty z tego ekosystemu te\u017c pojawi\u0142y si\u0119 dopiero w styczniu tego roku, to jednak State of Developer Ecosystem co roku publikowany by\u0142 jesieni\u0105. Przyznam, \u017ce czeka\u0142em na ten raport - o ile bowiem dotyka on szerszej grupy j\u0119zyk\u00f3w ni\u017c tylko te JVM-owe, to stanowi bardzo dobre \u017ar\u00f3d\u0142o statystyk, kt\u00f3rymi b\u0119d\u0119 m\u00f3g\u0142 szafowa\u0107 przez reszt\u0119 roku. <\/p>\n","innerContent":["\n<p>Co\u015b ostatnio JetBrains ma mocno przesuni\u0119ty cykl publikacyjny. Najpierw ko\u0144c\u00f3wk\u0105 musieli\u015bmy bardzo d\u0142ugo czeka\u0107 na to, aby firma wreszcie oficjalnie przyzna\u0142a si\u0119 do wydanego ko\u0144c\u00f3wk\u0105 roku Kotlina 1.8, a teraz w styczniu 2023 dostali\u015bmy ichniejszy <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">State of The Developer Ecosystem 2022<\/a>. Niby nic nie ma w tym dziwnego - w ko\u0144cu jak przy okazji AtomicJar por\u00f3wnywali\u015bmy ju\u017c do JavaScript\u00f3w, to du\u017ce raporty z tego ekosystemu te\u017c pojawi\u0142y si\u0119 dopiero w styczniu tego roku, to jednak State of Developer Ecosystem co roku publikowany by\u0142 jesieni\u0105. Przyznam, \u017ce czeka\u0142em na ten raport - o ile bowiem dotyka on szerszej grupy j\u0119zyk\u00f3w ni\u017c tylko te JVM-owe, to stanowi bardzo dobre \u017ar\u00f3d\u0142o statystyk, kt\u00f3rymi b\u0119d\u0119 m\u00f3g\u0142 szafowa\u0107 przez reszt\u0119 roku. <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zagl\u0105dnijmy zatem do \u015brodka, co te\u017c ciekawego dzieje si\u0119 w j\u0119zykach JVM, a przynajmniej tych trzech zawartych w raporcie - swoje miejsce znalaz\u0142y w nim bowiem Java, Kotlin oraz Scala. Wybra\u0142em dla Was te, kt\u00f3re z mojej perspektywy by\u0142y najbardziej interesuj\u0105ce. <\/p>\n","innerContent":["\n<p>Zagl\u0105dnijmy zatem do \u015brodka, co te\u017c ciekawego dzieje si\u0119 w j\u0119zykach JVM, a przynajmniej tych trzech zawartych w raporcie - swoje miejsce znalaz\u0142y w nim bowiem Java, Kotlin oraz Scala. Wybra\u0142em dla Was te, kt\u00f3re z mojej perspektywy by\u0142y najbardziej interesuj\u0105ce. <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":383,"height":579},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/wSgso5y.png\" alt=\"\" width=\"383\" height=\"579\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/wSgso5y.png\" alt=\"\" width=\"383\" height=\"579\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zacznijmy od statystyk u\u017cycia konkretnych wersji JDK. Mimo, \u017ce w momencie publikacji nie posiada\u0142a ju\u017c du\u017cego wsparcia, to jednak w dalszym ci\u0105gu JDK 8 jest kr\u00f3lem, je\u015bli chodzi o adopcje. Zauwa\u017cy\u0107 trzeba jednak powolne odchodzenie od tego wydania - zaliczy\u0142o ono bowiem spadek z 72% do 60%, a wi\u0119c o 12 punkt\u00f3w procentowych. Nie zmienia to faktu, \u017ce to w\u0142a\u015bnie starusie\u0144ka \"\u00f3semka\" pozostaje kr\u00f3lem je\u015bli chodzi o adopcje, i goniona jest przez JDK 11 (48%) oraz JDK 17 (30%). U\u017cycie wersji nie-LTS jest (pewnie zgodnie z planem) s\u0105 raczej homeopatyczne. Przypominam, \u017ce dane s\u0105 zbierane na pierwsz\u0105 po\u0142ow\u0119 2022, wi\u0119c sytuacja mog\u0142a si\u0119 jeszcze troch\u0119 zmieni\u0107<\/p>\n","innerContent":["\n<p>Zacznijmy od statystyk u\u017cycia konkretnych wersji JDK. Mimo, \u017ce w momencie publikacji nie posiada\u0142a ju\u017c du\u017cego wsparcia, to jednak w dalszym ci\u0105gu JDK 8 jest kr\u00f3lem, je\u015bli chodzi o adopcje. Zauwa\u017cy\u0107 trzeba jednak powolne odchodzenie od tego wydania - zaliczy\u0142o ono bowiem spadek z 72% do 60%, a wi\u0119c o 12 punkt\u00f3w procentowych. Nie zmienia to faktu, \u017ce to w\u0142a\u015bnie starusie\u0144ka \"\u00f3semka\" pozostaje kr\u00f3lem je\u015bli chodzi o adopcje, i goniona jest przez JDK 11 (48%) oraz JDK 17 (30%). U\u017cycie wersji nie-LTS jest (pewnie zgodnie z planem) s\u0105 raczej homeopatyczne. Przypominam, \u017ce dane s\u0105 zbierane na pierwsz\u0105 po\u0142ow\u0119 2022, wi\u0119c sytuacja mog\u0142a si\u0119 jeszcze troch\u0119 zmieni\u0107<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":432,"height":444},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/vkFGKLC.png\" alt=\"\" width=\"432\" height=\"444\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/vkFGKLC.png\" alt=\"\" width=\"432\" height=\"444\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Niepodzielnie rz\u0105dzi te\u017c Spring Boot i Spring MVC, ca\u0142a reszta stawki nie by\u0142a w stanie dobi\u0107 do 5% u\u017cycia. Dziwnym wyborem jest te\u017c umieszczenie w stawce JSF - troch\u0119 takie por\u00f3wnywanie jab\u0142ek do pomara\u0144czy. Ciekawe, czy bior\u0105c pod uwag\u0119 totaln\u0105 dominacje Springa, jego rezygnacja z JDK starszych ni\u017c JDK 17 wp\u0142ynie na State of The Developer Ecosystem 2023.<\/p>\n","innerContent":["\n<p>Niepodzielnie rz\u0105dzi te\u017c Spring Boot i Spring MVC, ca\u0142a reszta stawki nie by\u0142a w stanie dobi\u0107 do 5% u\u017cycia. Dziwnym wyborem jest te\u017c umieszczenie w stawce JSF - troch\u0119 takie por\u00f3wnywanie jab\u0142ek do pomara\u0144czy. Ciekawe, czy bior\u0105c pod uwag\u0119 totaln\u0105 dominacje Springa, jego rezygnacja z JDK starszych ni\u017c JDK 17 wp\u0142ynie na State of The Developer Ecosystem 2023.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":937,"height":328},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JbglhRw.png\" alt=\"\" width=\"937\" height=\"328\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/JbglhRw.png\" alt=\"\" width=\"937\" height=\"328\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Powy\u017cszy wykres pokazuje, dlaczego lubi\u0119 tego typu statystyki. Bazuj\u0105c tylko na obecno\u015bci w dyskusji, wydawa\u0107 by si\u0119 mog\u0142o, \u017ce Gradle ju\u017c przej\u0105\u0142 ekosystem narz\u0119dzi do budowania projekt\u00f3w javowych. Okazuje si\u0119 jednak, \u017ce cho\u0107 Gradle rzeczywi\u015bcie przebi\u0142 granic\u0119 50% adopcji, to do starego, cichszego ostatnio Mavena jeszcze sporo mu brakuje.<\/p>\n","innerContent":["\n<p>Powy\u017cszy wykres pokazuje, dlaczego lubi\u0119 tego typu statystyki. Bazuj\u0105c tylko na obecno\u015bci w dyskusji, wydawa\u0107 by si\u0119 mog\u0142o, \u017ce Gradle ju\u017c przej\u0105\u0142 ekosystem narz\u0119dzi do budowania projekt\u00f3w javowych. Okazuje si\u0119 jednak, \u017ce cho\u0107 Gradle rzeczywi\u015bcie przebi\u0142 granic\u0119 50% adopcji, to do starego, cichszego ostatnio Mavena jeszcze sporo mu brakuje.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":536,"height":452},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ErmLOPD.png\" alt=\"\" width=\"536\" height=\"452\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/ErmLOPD.png\" alt=\"\" width=\"536\" height=\"452\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Je\u015bli chodzi o Kotlina, to najciekawsz\u0105 statystyk\u0105 jest chyba u\u017cycie j\u0119zyka w poszczeg\u00f3lnych \u015brodowiskach. Procentowo, adopcja mobilna (zar\u00f3wno Android, jak i MultiPlatform) ro\u015bnie bowiem w stosunku do tej serwerowej, kt\u00f3ra to jako jedyna zaliczy\u0142a spadki w punktach procentowych. Zastanawia\u0142em si\u0119, czy nie jest to efekt wi\u0119kszej bazy u\u017cytkownik\u00f3w, ale akurat ta mniej wi\u0119cej pokrywa si\u0119 z t\u0105 z zesz\u0142ego roku (bazuj\u0105c na danych o ilo\u015bci u\u017cytkownik\u00f3w jak i procencie z nich u\u017cywaj\u0105cych Kotlina, wed\u0142ug moich zgrubnych wylicze\u0144, zar\u00f3wno w 2021, jak i 2022 wzi\u0119\u0142o udzia\u0142 oko\u0142o ~4500 kotlinowc\u00f3w). Ciekawe, na ile jest to jednorazowa sytuacja czy bardziej regularny trend.<\/p>\n","innerContent":["\n<p>Je\u015bli chodzi o Kotlina, to najciekawsz\u0105 statystyk\u0105 jest chyba u\u017cycie j\u0119zyka w poszczeg\u00f3lnych \u015brodowiskach. Procentowo, adopcja mobilna (zar\u00f3wno Android, jak i MultiPlatform) ro\u015bnie bowiem w stosunku do tej serwerowej, kt\u00f3ra to jako jedyna zaliczy\u0142a spadki w punktach procentowych. Zastanawia\u0142em si\u0119, czy nie jest to efekt wi\u0119kszej bazy u\u017cytkownik\u00f3w, ale akurat ta mniej wi\u0119cej pokrywa si\u0119 z t\u0105 z zesz\u0142ego roku (bazuj\u0105c na danych o ilo\u015bci u\u017cytkownik\u00f3w jak i procencie z nich u\u017cywaj\u0105cych Kotlina, wed\u0142ug moich zgrubnych wylicze\u0144, zar\u00f3wno w 2021, jak i 2022 wzi\u0119\u0142o udzia\u0142 oko\u0142o ~4500 kotlinowc\u00f3w). Ciekawe, na ile jest to jednorazowa sytuacja czy bardziej regularny trend.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":458,"height":334},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/mZDZc9A.png\" alt=\"\" width=\"458\" height=\"334\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/mZDZc9A.png\" alt=\"\" width=\"458\" height=\"334\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Na koniec sp\u00f3jrzmy sobie na Scal\u0119. W wypadku tego j\u0119zyka wyra\u017anie wida\u0107, \u017ce mamy do czynienia z raczej ju\u017c ustabilizowanymi przypadkami u\u017cycia, aczkolwiek nie a\u017c tak dominuj\u0105cymi jak Spring w wypadku Javy. Bazuj\u0105c na raporcie, je\u017celi kto\u015b ma w projekcie Scal\u0119, to z du\u017cym prawdopodobie\u0144stwem mo\u017cecie za\u0142o\u017cy\u0107, \u017ce u\u017cywa jej do Akki lub Sparka, a dodatkowo posiada w projekcie jaka\u015b bibliotek\u0119 wspieraj\u0105c\u0105 programowanie funkcyjne. Przynajmniej ja tak odczytuje powy\u017csze dane.<\/p>\n","innerContent":["\n<p>Na koniec sp\u00f3jrzmy sobie na Scal\u0119. W wypadku tego j\u0119zyka wyra\u017anie wida\u0107, \u017ce mamy do czynienia z raczej ju\u017c ustabilizowanymi przypadkami u\u017cycia, aczkolwiek nie a\u017c tak dominuj\u0105cymi jak Spring w wypadku Javy. Bazuj\u0105c na raporcie, je\u017celi kto\u015b ma w projekcie Scal\u0119, to z du\u017cym prawdopodobie\u0144stwem mo\u017cecie za\u0142o\u017cy\u0107, \u017ce u\u017cywa jej do Akki lub Sparka, a dodatkowo posiada w projekcie jaka\u015b bibliotek\u0119 wspieraj\u0105c\u0105 programowanie funkcyjne. Przynajmniej ja tak odczytuje powy\u017csze dane.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","width":421,"height":491},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/4Ae1LiW.png\" alt=\"\" width=\"421\" height=\"491\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/02\/4Ae1LiW.png\" alt=\"\" width=\"421\" height=\"491\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Na ko\u0144cu za\u015b sp\u00f3jrzmy na adopcje poszczeg\u00f3lnych wersji Scali. Tutaj mam dobr\u0105 nowin\u0119 dla j\u0119zyka - wersja 3.0 zdecydowanie ro\u015bnie, wszystkie pozosta\u0142e wydania malej\u0105. Wyra\u017anie jednak wida\u0107, \u017ce wszystkie wersje od 2.11 w g\u00f3r\u0119 maj\u0105 ci\u0105gle spor\u0105 adopcj\u0119, proces b\u0119dzie jeszcze raczej trwa\u0107.<\/p>\n","innerContent":["\n<p>Na ko\u0144cu za\u015b sp\u00f3jrzmy na adopcje poszczeg\u00f3lnych wersji Scali. Tutaj mam dobr\u0105 nowin\u0119 dla j\u0119zyka - wersja 3.0 zdecydowanie ro\u015bnie, wszystkie pozosta\u0142e wydania malej\u0105. Wyra\u017anie jednak wida\u0107, \u017ce wszystkie wersje od 2.11 w g\u00f3r\u0119 maj\u0105 ci\u0105gle spor\u0105 adopcj\u0119, proces b\u0119dzie jeszcze raczej trwa\u0107.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Danych jest znacznie wi\u0119cej, pe\u0142ny raport znajdziecie na stronie <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a>.<\/p>\n","innerContent":["\n<p>Danych jest znacznie wi\u0119cej, pe\u0142ny raport znajdziecie na stronie <a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a>.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/\">The State of Developer Ecosystem 2022<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/java\/\">The State of Developer Ecosystem 2022 - Java<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/java\/\">The State of Developer Ecosystem 2022 - Java<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/kotlin\/\">The State of Developer Ecosystem 2022 - Kotlin<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/kotlin\/\">The State of Developer Ecosystem 2022 - Kotlin<\/a><\/li>\n"]},{"blockName":"core\/list-item","attrs":[],"innerBlocks":[],"innerHTML":"\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/scala\/\">The State of Developer Ecosystem 2022 - Scala<\/a><\/li>\n","innerContent":["\n<li><a href=\"https:\/\/www.jetbrains.com\/lp\/devecosystem-2022\/scala\/\">The State of Developer Ecosystem 2022 - Scala<\/a><\/li>\n"]}],"innerHTML":"\n<ul>\n\n\n\n\n\n<\/ul>\n","innerContent":["\n<ul>",null,"\n\n",null,"\n\n",null,"\n\n",null,"<\/ul>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/14259","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/comments?post=14259"}],"version-history":[{"count":19,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/14259\/revisions"}],"predecessor-version":[{"id":14326,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/14259\/revisions\/14326"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media\/14280"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=14259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=14259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=14259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}