{"id":16893,"date":"2023-10-26T09:15:43","date_gmt":"2023-10-26T07:15:43","guid":{"rendered":"https:\/\/vived.io\/?p=16893"},"modified":"2023-10-26T09:16:25","modified_gmt":"2023-10-26T07:16:25","slug":"duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/","title":{"rendered":"Du\u017ce zmiany w leadershipie Kotlina:  Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152"},"content":{"rendered":"\n<h2 id=\"1-wywiad-z-brianem-goetzem-na-temat-przeszlosci-terazniejszosci-i-przyszlosci-javy\" data-num=1>1. Wywiad z Brianem Goetzem na temat przesz\u0142o\u015bci, tera\u017aniejszo\u015bci i przysz\u0142o\u015bci Javy<\/h2>\n\n\n\n<p>Wywiady nale\u017c\u0105 do moich najbardziej ulubionych rodzaj\u00f3w materia\u0142\u00f3w, kt\u00f3re na szcz\u0119\u015bcie dzi\u0119ki popularno\u015bci podcast\u00f3w s\u0105 obecnie bardziej powszechne ni\u017c kiedykolwiek wcze\u015bniej. Umo\u017cliwiaj\u0105 one autentyczne spotkanie r\u00f3\u017cnych perspektyw, nawet gdy prowadz\u0105cy s\u0142u\u017cy g\u0142\u00f3wnie jako &#8222;proxy&#8221; dla w\u0105tpliwo\u015bci s\u0142uchaczy. Te interakcje (zw\u0142aszcza jak wywiad jest dobrze prowadzony) utrudniaj\u0105 ukrycie s\u0142abszych stron omawianych koncepcji czy rozwi\u0105za\u0144 &#8211; szczeg\u00f3lnie w por\u00f3wnaniu z tekstami pisanymi, kt\u00f3re zazwyczaj s\u0105 filtrowane przez pryzmat jednego tw\u00f3rcy i bardzo \u0142atwo uciec w nich od niewygodnych pyta\u0144&#8230; no bo wiecie, nie ma pyta\u0144.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"680\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12.png\" alt=\"\" class=\"wp-image-16921\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12.png 680w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12-300x300.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12-150x150.png 150w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption class=\"wp-element-caption\">Oczywi\u015bcie, je\u015bli s\u0105 dobrze przeprowadzone i dziennikarze robi\u0105 swoj\u0105 robot\u0119.<\/figcaption><\/figure><\/div>\n\n\n<p>Dlatego dzisiaj chcia\u0142em rozpocz\u0105\u0107 od wywiadu z Brianem Goetzem z oficjalnego kana\u0142u Java, w kt\u00f3ry zag\u0142\u0119bia si\u0119 w r\u00f3\u017cne aspekty j\u0119zyka, racjonalizuj\u0105c niekt\u00f3re decyzje. Rozpoczyna od om\u00f3wienia konwencji nazywania getter\u00f3w i setter\u00f3w w rekordach Java, sugeruj\u0105c odej\u015bcie od przestarza\u0142ej konwencji Java Bean. W miar\u0119 rozwoju rozmowy Goetz omawia zalety niemutowalno\u015bci, podkre\u015blaj\u0105c pu\u0142apki zwi\u0105zane z nadmiernym poleganiem na mutacji stanu. Dyskusje obejmuj\u0105 r\u00f3wnie\u017c potencja\u0142 typ\u00f3w Union w Javie, wyzwania, jakie mog\u0105 wprowadzi\u0107, oraz delikatn\u0105 r\u00f3wnowag\u0119 mi\u0119dzy w\u0142\u0105czaniem wyj\u0105tk\u00f3w do API Stream.<\/p>\n\n\n\n<p>W drugiej cz\u0119\u015bci wywiadu Goetz bada zaawansowane koncepcje Javy i nadchodz\u0105ce funkcje. Omawia tam potencja\u0142 na automatyzacj\u0119 opakowywania i delegowania metod, sugeruj\u0105c, \u017ce jest to rozwa\u017cane dla przysz\u0142ych wersji Javy. Wa\u017cn\u0105 cz\u0119\u015bci\u0105 wywiadu jest te\u017c delikatny balans mi\u0119dzy ryzykiem, a zyskiem p\u0142yn\u0105cym z nowych funkcji Preview, gdzie Goetz podpiera si\u0119 trwaj\u0105cym Projekt Valhalla. Ko\u0144cz\u0105c wywiad, Goetz omawia perspektywy na wdro\u017cenie natywnej struktury tabeli danych w Javie, co pozwoli\u0142oby wej\u015b\u0107 na rejony mocno zarezerwowane dla rozwi\u0105za\u0144 pokroju pythonowych Pandas i NumPy, i wyra\u017caj\u0105c optymizm co do przysz\u0142ego znaczenia Javy w rozwoju gier i edukacji.<\/p>\n\n\n\n<p>Jak widzicie, masa mi\u0119ska. Bardzo polecam zapozna\u0107 si\u0119 z unikaln\u0105 perspektyw\u0105 cz\u0142owieka, kt\u00f3ry stoi za rozwojem sporego kawa\u0142ka Javy:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"Brian Goetz Answers Your Java Questions\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/mE4iTvxLTC4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<h2 id=\"2-roman-elizarov-odchodzi-z-jetbrains-i-konczy-swoja-prace-nad-kotlinem\" data-num=2>2. Roman Elizarov odchodzi z JetBrains i ko\u0144czy swoj\u0105 prac\u0119 nad Kotlinem<\/h2>\n\n\n\n<p>W \u015bwiecie Kotlina pi\u0105tkowym popo\u0142udniem gruchn\u0119\u0142a Roman Elizarov, lead projektu, og\u0142osi\u0142 swoje odej\u015bcie z JetBrains z powod\u00f3w osobistych, ko\u0144cz\u0105c w ten spos\u00f3b r\u00f3wnie\u017c swoj\u0105 prac\u0119 nad j\u0119zykiem. Po\u017cegnanie odby\u0142o si\u0119 seri\u0105 tweet\u00f3w, w kt\u00f3rych wyra\u017caj\u0105c wdzi\u0119czno\u015b\u0107 za mo\u017cliwo\u015b\u0107 pracy nad Kotlinem i podkre\u015blaj\u0105c swoje wielkie uznanie dla spo\u0142eczno\u015bci Kotlina.<\/p>\n\n\n\n<p>Dowiedzieli\u015bmy si\u0119 te\u017c kto w przysz\u0142o\u015bci stanie za sterami j\u0119zyka &#8211; <a href=\"https:\/\/twitter.com\/@MZarechenskiy\">Mikhail Zarechenskiy<\/a>, wcze\u015bniej pracuj\u0105cy za kulisami w JetBrains, zostanie g\u0142\u00f3wnym projektantem Kotlina. Kluczowe zmiany w zespole obejmuj\u0105 te\u017c <a href=\"https:\/\/twitter.com\/hhariri\">Hadi Hariri<\/a>, kt\u00f3rego mo\u017cecie zna\u0107 jako Co-hosta podcastu <a href=\"https:\/\/talkingkotlin.com\">Talking Kotlin<\/a> &#8211; przejmie on teraz wi\u0119cej obowi\u0105zk\u00f3w poza dzia\u0142aniami promocyjnymi i jego zaanga\u017cowaniem w KotlinConf. R\u00f3wnie\u017c drugi prowadz\u0105cy Talking Kotlin, <a href=\"https:\/\/twitter.com\/sebi_io\">Sebastian Aigner<\/a>, b\u0119dzie odgrywa\u0107 teraz wa\u017cniejsz\u0105 rol\u0119 w Kotlin Foundation, szczeg\u00f3lnie w wsparciu inicjatyw szerszego ekosystemu Kotlin. <a href=\"@HeyTolstoy\">Egor Tolstoy<\/a> dalej za\u015b&nbsp;b\u0119dzie kierowa\u0107 zespo\u0142em od strony Product Managementu .<\/p>\n\n\n\n<p>Prywata: w tym miejscu chcia\u0142bym wyrazi\u0107 moj\u0105 szczery wdzi\u0119czno\u015b\u0107 za wp\u0142yw, jaki Roman Elizarov mia\u0142 na moj\u0105 drog\u0119 zawodow\u0105. To jego publikacje sprawi\u0142y, \u017ce wci\u0105gn\u0105\u0142 mnie \u015bwiat JVM Runtime i projektowania j\u0119zyk\u00f3w programowania &#8211; w naci\u0105gany spos\u00f3b jest wi\u0119c to osoba, kt\u00f3ra jest w zwi\u0105zku z tym &#8222;ojcem chrzestnym&#8221; tego newslettera.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"338\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/solid-snake-salute.gif\" alt=\"\" class=\"wp-image-16905\"\/><figcaption class=\"wp-element-caption\">Jestem pewien, \u017ce Roman Elizarov tego nie czyta, ale kiedy przechodzi do swoich kolejnych przedsi\u0119wzi\u0119\u0107, \u017cycz\u0119 mu tylko najlepszego \ud83d\ude47.<\/figcaption><\/figure><\/div>\n\n\n<h2 id=\"3-release-radar\" data-num=3>3. Release Radar<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Helidon 4.0<\/h3>\n\n\n\n<p>Helidon 4 zosta\u0142 oficjalnie wydany, staj\u0105c si\u0119 pierwszym na \u015bwiecie frameworkiem do mikroserwis\u00f3w opartym o wirtualne w\u0105tki. G\u0142\u00f3wn\u0105&nbsp;zmian\u0105 przychodz\u0105c\u0105 z wydaniem jest wi\u0119c oczywi\u015bcie zast\u0105pienie Netty now\u0105 implementacj\u0105 serwera o nazwie N\u00edma. N\u00edma zosta\u0142 zaprojektowany tak, aby w pe\u0142ni wykorzystywa\u0107 wirtualne w\u0105tki Java 21, umo\u017cliwiaj\u0105c ka\u017cdemu requestowi dzia\u0142anie na dedykowanym wirtualnym w\u0105tku. Upraszcza to proces wykonywania blokuj\u0105cych operacji i zapewnia wysoki poziom wsp\u00f3\u0142bie\u017cno\u015bci, eliminuj\u0105c w ten spos\u00f3b potrzeb\u0119 skomplikowanego kodu asynchronicznego, co zwi\u0119ksza wydajno\u015b\u0107, zw\u0142aszcza (wed\u0142ug doniesie\u0144 samych tw\u00f3rc\u00f3w) w Helidon MP. Oznacza to r\u00f3wnie\u017c, \u017ce doczekali\u015bmy si\u0119 pierwszego framework wymagaj\u0105cego do dzia\u0142ania Java 21&#8230; wydanej zaledwie miesi\u0105c temu.<\/p>\n\n\n\n<p>Helidon SE, stanowi\u0105cy podstawowy zestaw API dla Helidon, r\u00f3wnie\u017c przeszed\u0142 spor\u0105 transformacj\u0119. Adopcja wirtualnych w\u0105tk\u00f3w umo\u017cliwi\u0142a przej\u015bcie od asynchronicznych API do blokuj\u0105cych (a\u017c si\u0119 sam dziwie pisz\u0105c to zdanie). Ta zmiana upraszcza kod, czyni\u0105c go \u0142atwiejszym w pisaniu, utrzymaniu i zrozumieniu &#8211; daje nam to przedsmak tego, co czeka pewnie w przysz\u0142o\u015bci ca\u0142y ekosystem. Osoby korzystaj\u0105ce z Helidon 3 SE b\u0119d\u0105 musia\u0142y niestety znacznie dostosowa\u0107 sw\u00f3j kod do zaktualizowanych API. Chocia\u017c mo\u017ce to wymaga\u0107 pewnego pocz\u0105tkowego wysi\u0142ku, korzy\u015bci w postaci zwi\u0119kszonej wydajno\u015bci i prostoty kodu wydaj\u0105 si\u0119 tego warte. Oficjalny przewodnik aktualizacji dostarcza wskaz\u00f3wek dotycz\u0105cych migracji aplikacji do odnowionego Helidon 4 SE.<\/p>\n\n\n\n<p>Najnowsza wersja Helidon obs\u0142uguje r\u00f3wnie\u017c MicroProfile 6.0. Ponadto wydanie towarzyszy oficjalny przewodnik aktualizacji dedykowany dla Helidon 4 MP, pomagaj\u0105cy u\u017cytkownikom w nawigacji po zmianach i zapewniaj\u0105cy p\u0142ynne przej\u015bcie.<\/p>\n\n\n\n<p>Ca\u0142o\u015b\u0107 to \u015bwie\u017cynka (news mia\u0142 miejsce dopiero wczoraj), kt\u00f3rej pewnie jeszcze w przysz\u0142o\u015bci po\u015bwi\u0119cimy miejsce &#8211; po ocenie jak nowe podej\u015bcie sprawdzi si\u0119 w akcji.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10.png\" alt=\"\" class=\"wp-image-16907\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10.png 500w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10-300x300.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10-150x150.png 150w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><figcaption class=\"wp-element-caption\">Nie martw si\u0119 Netty, dalej mamy Ci\u0119 w sercu<\/figcaption><\/figure><\/div>\n\n\n<p>A jak ju\u017c dotkn\u0119li\u015bmy tematu Microprofile&#8230;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/microprofile.io\/2023\/10\/16\/microprofile-6-1-released\/\">Microprofile 6.1<\/a><\/h3>\n\n\n\n<p>MicroProfile z zaprezentowa\u0142a wydanie MicroProfile 6.1. Zaktualizowana wersja w pe\u0142ni integruje si\u0119 z Jakarta EE 10 Core Profile. Wydanie samo w sobie nie wprowadzi\u0142o \u017cadnych nowych API, za to pojawi\u0142y drobne ulepszenia w konfiguracji MicroProfile, metrykach i telemetrii. Poni\u017csza grafika pokazuje pe\u0142n\u0105 list\u0119 zmian.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"393\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-1024x393.png\" alt=\"\" class=\"wp-image-16903\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-1024x393.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-300x115.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-768x295.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9.png 1536w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>MicroProfile 6.1 wymaga Java SE 11, a je\u017celi kto\u015b chcia\u0142by go spr\u00f3bowa\u0107 ju\u017c dzi\u015b &#8211; Open Liberty 23.0.0.10-beta jest pierwsz\u0105 zgodn\u0105 implementacj\u0105. No c\u00f3\u017c, dla odwa\u017cnych.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/inside.java\/2023\/10\/18\/announcing-vscode-extension\/\">Oficjalne rozszerzenie Javy dla Visual Studio Code od Oracle<\/a><\/h3>\n\n\n\n<p>Oracle opublikowa\u0142o oficjalne rozszerzenia Javy dla Visual Studio Code, co mo\u017cna uzna\u0107 za zauwa\u017cenie rosn\u0105cej popularno\u015bci Visual Studio Code jako alternatywy dla klasycznych IDE. Mimo \u017ce Java posiada specjalizowane IDE (jak cho\u0107by Intellij), znaczna liczba programist\u00f3w Java, w tym cho\u0107by studenci i ci, dla kt\u00f3rych jest to nie-wiod\u0105cy j\u0119zyk, preferuje dzisiaj VS Code. \u017beby daleko nie szuka\u0107 &#8211; u mnie te\u017c stanowi form\u0119 scyzoryka szwajcarskiego.<\/p>\n\n\n\n<p>Pierwsza wersja zawiera funkcje takie jak auto-uzupe\u0142nianie, pod\u015bwietlanie b\u0142\u0119d\u00f3w, wsparcie dla debugowania oraz kompatybilno\u015b\u0107 z projektami Gradle i Maven. Jeszcze ciekawsze rzeczy dziej\u0105 si\u0119 jednak pod mask\u0105. Podstaw\u0105 tego rozszerzenia do VS Code jest bowiem serwer j\u0119zyka, kt\u00f3ry komunikuje si\u0119 z IDE za pomoc\u0105 protoko\u0142u <code>Language Server Protocol<\/code>. Serwer j\u0119zyka Java od Oracle&#8217;a bazuje na tym u\u017cywanym w projekcie Apache Netbeans i wykorzystuje kompilator <code>javac<\/code> z OpenJDK JDK. Gwarantuje to szybkie wsparcie dla nowych funkcji JDK w VS Code. Co wi\u0119cej, podczas gdy rozw\u00f3j serwera j\u0119zyka b\u0119dzie kontynuowany w ramach projektu Apache NetBeans, rozszerzenie do VS Code b\u0119dzie cz\u0119\u015bci\u0105 odr\u0119bnego projektu open source.<\/p>\n\n\n\n<p>Dla tych, kt\u00f3rzy nie wiedz\u0105, protok\u00f3\u0142 Language Server Protocol (LSP) to standaryzowany protok\u00f3\u0142 komunikacji mi\u0119dzy narz\u0119dziami programistycznymi (takimi jak \u015brodowiska programistyczne lub IDE) a serwerami j\u0119zyka, kt\u00f3re dostarczaj\u0105 funkcjonalno\u015bci specyficzne dla danego j\u0119zyka, takie jak uzupe\u0142nianie kodu, sprawdzanie b\u0142\u0119d\u00f3w i refaktoryzacja. Dzi\u0119ki LSP narz\u0119dzia mog\u0105 obs\u0142ugiwa\u0107 wiele j\u0119zyk\u00f3w programowania, nie implementuj\u0105c funkcji specyficznych dla danego j\u0119zyka, a pojedynczy serwer j\u0119zyka mo\u017cna wykorzysta\u0107 w wielu narz\u0119dziach. Jest to wi\u0119c spora szansa dla nowych IDE, kt\u00f3re nie musz\u0105 ca\u0142ego wsparcia tworzy\u0107 od zera.<\/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\/10\/image-11-1024x471.png\" alt=\"\" class=\"wp-image-16910\" style=\"width:728px;height:335px\" width=\"728\" height=\"335\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-11-1024x471.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-11-300x138.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-11-768x353.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-11.png 1312w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/><figcaption class=\"wp-element-caption\">Dla tych co ju\u017c nie znaj\u0105 &#8211; to zielone po \u015brodku to \u015bwi\u0119tej pami\u0119ci Atom.<\/figcaption><\/figure><\/div>\n\n\n<p>PS: Temat jest mi bliski, bo w mojej firmie &#8211; VirtusLab &#8211; rozwijamy <a href=\"https:\/\/scalameta.org\/metals\/\">serwer j\u0119zyka<\/a> dla Scali &#8211; Metals.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"http:\/\/wildfly.org\/news\/2023\/10\/18\/WildFly30-Released\/\">WildFly 30<\/a><\/h3>\n\n\n\n<p>Swoj\u0105 premier\u0119 mia\u0142 te\u017c okr\u0105g\u0142y WildFly 30. Mimo \u017ce oficjalna rekomendacja to nadal JDK 17 lub 11, znacz\u0105ca cz\u0119\u015b\u0107 tego wydania zosta\u0142a po\u015bwi\u0119cona integracji z Java SE 21. Najnowsza wersja przechodzi na tej wersji testy certyfikacyjne zar\u00f3wno Jakarta EE 10 Core Profile, jak i Microprofile. Wraz z coraz wi\u0119kszym naciskiem na JDK 21 przewiduje si\u0119, \u017ce WildFly 30 mo\u017ce by\u0107 ostatnim, kt\u00f3re wspiera JDK 11.<\/p>\n\n\n\n<p>Dodatkowo, wraz z przyj\u015bciem WildFly 30 nast\u0105pi\u0142a zmiana licencji z Lesser General Public License 2.1 na Apache Software License 2.0, podsumowuj\u0105c w ten spos\u00f3b d\u0142ugoletni\u0105 \u015bcie\u017ck\u0119. Przej\u015bcie z Lesser General Public License 2.1 (LGPL 2.1) na Apache Software License 2.0 (ASL 2.0) oznacza przej\u015bcie z licencji &#8222;s\u0142abej&#8221; copyleft na bardziej liberaln\u0105. Podczas gdy LGPL 2.1 pozwala na \u0142\u0105czenie z oprogramowaniem w\u0142asno\u015bciowym, ale wymaga, aby modyfikacje licencjonowanego oprogramowania by\u0142y wydawane na tej samej licencji LGPL 2.1, ASL 2.0 pozwala u\u017cytkownikom swobodnie u\u017cywa\u0107, modyfikowa\u0107 i dystrybuowa\u0107 oprogramowanie, w tym w\u0142\u0105czanie go do projekt\u00f3w w\u0142asno\u015bciowych, bez obowi\u0105zku ujawniania modyfikacji czy pochodnych prac. Wa\u017cne jest jednak, aby zaznaczy\u0107, \u017ce WildFly korzysta z wielu bibliotek komponent\u00f3w na r\u00f3\u017cnych licencjach open-source, a zmiana licencji dotyczy tylko cz\u0119\u015bci z nich.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Eclipse Temurin JDK 21<\/h3>\n\n\n\n<p>To ju\u017c tak bardziej w formie wzmianki &#8211; nareszcie doczekali\u015bmy si\u0119 <a href=\"https:\/\/adoptium.net\/en-GB\/temurin\/releases\/\">wariantu JDK 21 wydawanego<\/a> przez Eclipse Foundation, b\u0119d\u0105cego spadkobierc\u0105 starego AdoptOpenJDK. Podejrzewam, \u017ce sporo os\u00f3b na niego czeka\u0142o.<\/p>\n\n\n\n<p>Ciekawe s\u0105 <a href=\"https:\/\/adoptium.net\/en-GB\/blog\/2023\/09\/temurin21-delay\/\">kulisy ponad miesi\u0119cznego op\u00f3\u017anienia<\/a> w stosunku do pozosta\u0142ych wersji. Mimo przeprowadzenia test\u00f3w i weryfikacji kodu \u017ar\u00f3d\u0142owego OpenJDK 21 GA, oficjalne wydanie Temurin 21 napotka\u0142o na op\u00f3\u017anienia spowodowane now\u0105 umow\u0105 licencyjn\u0105 dotycz\u0105c\u0105 test\u00f3w Java 21 TCK, kt\u00f3ra zosta\u0142a wprowadzona kr\u00f3tko przed GA OpenJDK 21. W zwi\u0105zku z tym Fundacja Eclipse musia\u0142a dok\u0142adnie oceni\u0107 i zaakceptowa\u0107 t\u0119 aktualizowan\u0105 umow\u0119. Przez pewien czas dost\u0119pne by\u0142y jedynie wersje wczesnego dost\u0119pu, kt\u00f3re nie by\u0142y zalecane do u\u017cytku produkcyjnego. Jednak do 9 pa\u017adziernika 2023 roku Adoptium otrzyma\u0142o Java Technology Compatibility Kit (TCK) dla Java 21, zapewniaj\u0105c jej zgodno\u015b\u0107 ze specyfikacj\u0105 Java. Przeprowadzenie wszystkich test\u00f3w TCK zaj\u0119\u0142o troch\u0119 czasu, ale finalna wersja trafi\u0142a w nasze r\u0119ce.<\/p>\n\n\n\n<h2 id=\"a-na-koniec-dwie-interesujace-strony\" data-num=4>A na koniec dwie interesuj\u0105ce strony<\/h2>\n\n\n\n<p><a href=\"https:\/\/rss.xlit.app\/updates\">https:\/\/rss.xlit.app\/updates<\/a> &#8211; Ostatnimi czasy wpad\u0142em na konto <a href=\"https:\/\/twitter.com\/Jepupdates\">Twitterowe<\/a> (i towarzysz\u0105cy mu RSS), kt\u00f3re pozwalaj\u0105 na \u015bledzenie nowo pojawiaj\u0105cych si\u0119 JEP-\u00f3w, ca\u0142o\u015b\u0107 stworzona przez <a href=\"https:\/\/twitter.com\/a_ghasemi\">Alireza Ghasemi<\/a>. Nic rewolucyjnego, ale je\u015bli chcecie mie\u0107 pewno\u015b\u0107, \u017ce nie przegapicie \u017cadnego nowego materia\u0142u &#8211; narz\u0119dzie pozwala \u015bledzi\u0107 list\u0119 ju\u017c od stanu Draft.<\/p>\n\n\n\n<p><a href=\"https:\/\/awesomejava.resamvi.io\/\">awesomejava.resamvi.io<\/a> &#8211; kojarzycie listy Awesome, zbieraj\u0105ce najwa\u017cniejsze narz\u0119dzia dla developer\u00f3w lub interesuj\u0105ce materia\u0142y, wszystko b\u0119d\u0105c kurowanymi przez spo\u0142eczno\u015b\u0107. Ich ilo\u015b\u0107 jest tak du\u017ca, \u017ce powsta\u0142y ju\u017c meta-listy (jak <a href=\"https:\/\/github.com\/sindresorhus\/awesome\">Awesome Awesome<\/a>, kt\u00f3ra zbli\u017ca si\u0119 do 300 000 gwiazdek na GitHubie ) czy potrzeby alternatywnych sposob\u00f3w przegl\u0105dania. Takim czym\u015b jest <code>awesomejava.resamvi.io<\/code>. Zawiera ona bowiem oficjaln\u0105 (na ile oficjalna mo\u017ce by\u0107 lista awesome) edycje Javow\u0105, ale z ma\u0142ym twistem &#8211; ot\u00f3\u017c ka\u017cda z kategorii zosta\u0142a posortowana pod wzgl\u0119dem wspomnianych ju\u017c &#8222;gwiazdek&#8217;. Wiem, \u017ce dla wielu os\u00f3b jest to istotne kryterium (i wcale nie najgorsze proxy do podejmowania decyzji), dlatego je\u015bli do tej pory odbijali\u015bcie si\u0119 od &#8222;awesome list&#8221;, dajcie szanse tej nowej prezentacji idei.<\/p>\n\n\n\n<p>PS: Troch\u0119 out-of-scope, ale polecam r\u00f3wnie\u017c <a href=\"https:\/\/github.com\/ByteByteGoHq\/system-design-101\">system-design-101<\/a>, nowe repozytorium materia\u0142\u00f3w od ByteByteGo. Jest naprawd\u0119 \u015bwietne, zw\u0142aszcza jak kto\u015b potrzebuje powt\u00f3rki przed rekrutacj\u0105, ale nie tylko \ud83d\ude42<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong>A na koniec troch\u0119 prywatnych wra\u017ce\u0144 z ostatnich woja\u017cy<\/strong><\/p>\n\n\n\n<p>Zar\u00f3wno Geecon, jak i EclipseCon by\u0142y rewelacyjnymi imprezami, kt\u00f3re mam odwiedzi\u0107 za rok. Pozna\u0142em tam nie tylko wielu fantastycznych ludzi, ale r\u00f3wnie\u017c mog\u0142em spojrze\u0107 na nasz ekosystem z nieco innej perspektywy. Odkry\u0142em na przyk\u0142ad, \u017ce niemiecka spo\u0142eczno\u015b\u0107 Java, iJUG, konsekwentnie publikuje fizyczny magazyn papierowy &#8222;Java aktuell&#8221; od 2010 roku \ud83d\ude33.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-1024x768.png\" alt=\"\" class=\"wp-image-16896\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-1024x768.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-300x225.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-768x576.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-1536x1152.png 1536w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Zdecydowanie bardzo fajny dodatek do mojej kolekcji gad\u017cet\u00f3w Java.<\/figcaption><\/figure>\n\n\n\n<p>PS3: Odkry\u0142em te\u017c na nowo moj\u0105 dawn\u0105 pasj\u0119 do naklejek na laptopy. Niczego nie \u017ca\u0142uje.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"698\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-1024x698.png\" alt=\"\" class=\"wp-image-16899\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-1024x698.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-300x204.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-768x524.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-1536x1047.png 1536w, https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Je\u015bli jeste\u015bcie ciekawi co ciekawego dzia\u0142o si\u0119 na EclipseCon &#8211; <a href=\"https:\/\/twitter.com\/ivar_grimstad\">Ivar Grimstad, Developer Advocate Jakarty EE<\/a>, podzieli\u0142 si\u0119  wra\u017ceniami <a href=\"https:\/\/www.agilejava.eu\/2023\/10\/20\/eclipsecon-2023\/\">na swoim blogu<\/a>. Niestety, nie znalaz\u0142em \u017cadnego opracowania GeeCon Prague, a sam dotar\u0142em tylko na drugi dzie\u0144&#8230;  m\u00f3j samolot op\u00f3\u017ani\u0142 si\u0119 prawie 5 godzin.<\/p>\n\n\n\n<p>I tym weso\u0142o-smutnym akcentem \u017cegnam si\u0119! Do zobaczenia w nast\u0119pnej edycji, ju\u017c mam nadzieje w regularnym trybie. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Po tygodniowej nieobecno\u015bci zwi\u0105zanej z konferencjami dzisiaj mam dla Was wywiad, par\u0119 bardzo dobrych releas\u00f3w, oraz pewne po\u017cegnanie.<\/p>\n","protected":false},"author":10,"featured_media":16917,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[23],"tags":[],"class_list":["post-16893","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jvm"],"acf":{"estimated_reading_time":"10","feature_image_blog":{"ID":16918,"id":16918,"title":"JVM Weekly 1200x628_V2","filename":"JVM-Weekly-1200x628_V2-2.png","filesize":511143,"url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","link":"https:\/\/vived.io\/pl\/jvm-weekly-1200x628_v2-59-2\/","alt":"","author":"10","description":"","caption":"","name":"jvm-weekly-1200x628_v2-59-2","status":"inherit","uploaded_to":0,"date":"2023-10-26 06:58:50","modified":"2023-10-26 06:58:50","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/vived.io\/wp-includes\/images\/media\/default.png","width":1200,"height":628,"sizes":{"thumbnail":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2-150x150.png","thumbnail-width":150,"thumbnail-height":150,"medium":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2-300x157.png","medium-width":300,"medium-height":157,"medium_large":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2-768x402.png","medium_large-width":768,"medium_large-height":402,"large":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2-1024x536.png","large-width":1024,"large-height":536,"1536x1536":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","1536x1536-width":1200,"1536x1536-height":628,"2048x2048":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","2048x2048-width":1200,"2048x2048-height":628,"gform-image-choice-sm":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","gform-image-choice-sm-width":300,"gform-image-choice-sm-height":157,"gform-image-choice-md":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","gform-image-choice-md-width":400,"gform-image-choice-md-height":209,"gform-image-choice-lg":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","gform-image-choice-lg-width":600,"gform-image-choice-lg-height":314}},"weekly_summary":true,"push_notification_image":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.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>Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - 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\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - Vived\" \/>\n<meta property=\"og:description\" content=\"Po tygodniowej nieobecno\u015bci zwi\u0105zanej z konferencjami dzisiaj mam dla Was wywiad, par\u0119 bardzo dobrych releas\u00f3w, oraz pewne po\u017cegnanie.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-26T07:15:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-26T07:16:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.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\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152\",\"datePublished\":\"2023-10-26T07:15:43+00:00\",\"dateModified\":\"2023-10-26T07:16:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\"},\"wordCount\":2202,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png\",\"articleSection\":[\"JVM\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\",\"url\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\",\"name\":\"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png\",\"datePublished\":\"2023-10-26T07:15:43+00:00\",\"dateModified\":\"2023-10-26T07:16:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png\",\"width\":1200,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152\"}]},{\"@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":"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - 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\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/","og_locale":"pl_PL","og_type":"article","og_title":"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - Vived","og_description":"Po tygodniowej nieobecno\u015bci zwi\u0105zanej z konferencjami dzisiaj mam dla Was wywiad, par\u0119 bardzo dobrych releas\u00f3w, oraz pewne po\u017cegnanie.","og_url":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/","og_site_name":"Vived","article_published_time":"2023-10-26T07:15:43+00:00","article_modified_time":"2023-10-26T07:16:25+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.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\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152","datePublished":"2023-10-26T07:15:43+00:00","dateModified":"2023-10-26T07:16:25+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/"},"wordCount":2202,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","articleSection":["JVM"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/","url":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/","name":"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152 - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","datePublished":"2023-10-26T07:15:43+00:00","dateModified":"2023-10-26T07:16:25+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/JVM-Weekly-1200x628_V2-2.png","width":1200,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/duze-zmiany-w-leadershipie-kotlina-jvm-weekly-vol-152\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"Du\u017ce zmiany w leadershipie Kotlina: Roman Elizarov odchodzi z JetBrains \u2013 JVM Weekly vol. 152"}]},{"@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 class=\"wp-block-heading\">1. Wywiad z Brianem Goetzem na temat przesz\u0142o\u015bci, tera\u017aniejszo\u015bci i przysz\u0142o\u015bci Javy<\/h2>\n","innerContent":["\n<h2 class=\"wp-block-heading\">1. Wywiad z Brianem Goetzem na temat przesz\u0142o\u015bci, tera\u017aniejszo\u015bci i przysz\u0142o\u015bci Javy<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wywiady nale\u017c\u0105 do moich najbardziej ulubionych rodzaj\u00f3w materia\u0142\u00f3w, kt\u00f3re na szcz\u0119\u015bcie dzi\u0119ki popularno\u015bci podcast\u00f3w s\u0105 obecnie bardziej powszechne ni\u017c kiedykolwiek wcze\u015bniej. Umo\u017cliwiaj\u0105 one autentyczne spotkanie r\u00f3\u017cnych perspektyw, nawet gdy prowadz\u0105cy s\u0142u\u017cy g\u0142\u00f3wnie jako \"proxy\" dla w\u0105tpliwo\u015bci s\u0142uchaczy. Te interakcje (zw\u0142aszcza jak wywiad jest dobrze prowadzony) utrudniaj\u0105 ukrycie s\u0142abszych stron omawianych koncepcji czy rozwi\u0105za\u0144 - szczeg\u00f3lnie w por\u00f3wnaniu z tekstami pisanymi, kt\u00f3re zazwyczaj s\u0105 filtrowane przez pryzmat jednego tw\u00f3rcy i bardzo \u0142atwo uciec w nich od niewygodnych pyta\u0144... no bo wiecie, nie ma pyta\u0144.<\/p>\n","innerContent":["\n<p>Wywiady nale\u017c\u0105 do moich najbardziej ulubionych rodzaj\u00f3w materia\u0142\u00f3w, kt\u00f3re na szcz\u0119\u015bcie dzi\u0119ki popularno\u015bci podcast\u00f3w s\u0105 obecnie bardziej powszechne ni\u017c kiedykolwiek wcze\u015bniej. Umo\u017cliwiaj\u0105 one autentyczne spotkanie r\u00f3\u017cnych perspektyw, nawet gdy prowadz\u0105cy s\u0142u\u017cy g\u0142\u00f3wnie jako \"proxy\" dla w\u0105tpliwo\u015bci s\u0142uchaczy. Te interakcje (zw\u0142aszcza jak wywiad jest dobrze prowadzony) utrudniaj\u0105 ukrycie s\u0142abszych stron omawianych koncepcji czy rozwi\u0105za\u0144 - szczeg\u00f3lnie w por\u00f3wnaniu z tekstami pisanymi, kt\u00f3re zazwyczaj s\u0105 filtrowane przez pryzmat jednego tw\u00f3rcy i bardzo \u0142atwo uciec w nich od niewygodnych pyta\u0144... no bo wiecie, nie ma pyta\u0144.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":16921,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12.png\" alt=\"\" class=\"wp-image-16921\"\/><figcaption class=\"wp-element-caption\">Oczywi\u015bcie, je\u015bli s\u0105 dobrze przeprowadzone i dziennikarze robi\u0105 swoj\u0105 robot\u0119.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-12.png\" alt=\"\" class=\"wp-image-16921\"\/><figcaption class=\"wp-element-caption\">Oczywi\u015bcie, je\u015bli s\u0105 dobrze przeprowadzone i dziennikarze robi\u0105 swoj\u0105 robot\u0119.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dlatego dzisiaj chcia\u0142em rozpocz\u0105\u0107 od wywiadu z Brianem Goetzem z oficjalnego kana\u0142u Java, w kt\u00f3ry zag\u0142\u0119bia si\u0119 w r\u00f3\u017cne aspekty j\u0119zyka, racjonalizuj\u0105c niekt\u00f3re decyzje. Rozpoczyna od om\u00f3wienia konwencji nazywania getter\u00f3w i setter\u00f3w w rekordach Java, sugeruj\u0105c odej\u015bcie od przestarza\u0142ej konwencji Java Bean. W miar\u0119 rozwoju rozmowy Goetz omawia zalety niemutowalno\u015bci, podkre\u015blaj\u0105c pu\u0142apki zwi\u0105zane z nadmiernym poleganiem na mutacji stanu. Dyskusje obejmuj\u0105 r\u00f3wnie\u017c potencja\u0142 typ\u00f3w Union w Javie, wyzwania, jakie mog\u0105 wprowadzi\u0107, oraz delikatn\u0105 r\u00f3wnowag\u0119 mi\u0119dzy w\u0142\u0105czaniem wyj\u0105tk\u00f3w do API Stream.<\/p>\n","innerContent":["\n<p>Dlatego dzisiaj chcia\u0142em rozpocz\u0105\u0107 od wywiadu z Brianem Goetzem z oficjalnego kana\u0142u Java, w kt\u00f3ry zag\u0142\u0119bia si\u0119 w r\u00f3\u017cne aspekty j\u0119zyka, racjonalizuj\u0105c niekt\u00f3re decyzje. Rozpoczyna od om\u00f3wienia konwencji nazywania getter\u00f3w i setter\u00f3w w rekordach Java, sugeruj\u0105c odej\u015bcie od przestarza\u0142ej konwencji Java Bean. W miar\u0119 rozwoju rozmowy Goetz omawia zalety niemutowalno\u015bci, podkre\u015blaj\u0105c pu\u0142apki zwi\u0105zane z nadmiernym poleganiem na mutacji stanu. Dyskusje obejmuj\u0105 r\u00f3wnie\u017c potencja\u0142 typ\u00f3w Union w Javie, wyzwania, jakie mog\u0105 wprowadzi\u0107, oraz delikatn\u0105 r\u00f3wnowag\u0119 mi\u0119dzy w\u0142\u0105czaniem wyj\u0105tk\u00f3w do API Stream.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>W drugiej cz\u0119\u015bci wywiadu Goetz bada zaawansowane koncepcje Javy i nadchodz\u0105ce funkcje. Omawia tam potencja\u0142 na automatyzacj\u0119 opakowywania i delegowania metod, sugeruj\u0105c, \u017ce jest to rozwa\u017cane dla przysz\u0142ych wersji Javy. Wa\u017cn\u0105 cz\u0119\u015bci\u0105 wywiadu jest te\u017c delikatny balans mi\u0119dzy ryzykiem, a zyskiem p\u0142yn\u0105cym z nowych funkcji Preview, gdzie Goetz podpiera si\u0119 trwaj\u0105cym Projekt Valhalla. Ko\u0144cz\u0105c wywiad, Goetz omawia perspektywy na wdro\u017cenie natywnej struktury tabeli danych w Javie, co pozwoli\u0142oby wej\u015b\u0107 na rejony mocno zarezerwowane dla rozwi\u0105za\u0144 pokroju pythonowych Pandas i NumPy, i wyra\u017caj\u0105c optymizm co do przysz\u0142ego znaczenia Javy w rozwoju gier i edukacji.<\/p>\n","innerContent":["\n<p>W drugiej cz\u0119\u015bci wywiadu Goetz bada zaawansowane koncepcje Javy i nadchodz\u0105ce funkcje. Omawia tam potencja\u0142 na automatyzacj\u0119 opakowywania i delegowania metod, sugeruj\u0105c, \u017ce jest to rozwa\u017cane dla przysz\u0142ych wersji Javy. Wa\u017cn\u0105 cz\u0119\u015bci\u0105 wywiadu jest te\u017c delikatny balans mi\u0119dzy ryzykiem, a zyskiem p\u0142yn\u0105cym z nowych funkcji Preview, gdzie Goetz podpiera si\u0119 trwaj\u0105cym Projekt Valhalla. Ko\u0144cz\u0105c wywiad, Goetz omawia perspektywy na wdro\u017cenie natywnej struktury tabeli danych w Javie, co pozwoli\u0142oby wej\u015b\u0107 na rejony mocno zarezerwowane dla rozwi\u0105za\u0144 pokroju pythonowych Pandas i NumPy, i wyra\u017caj\u0105c optymizm co do przysz\u0142ego znaczenia Javy w rozwoju gier i edukacji.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Jak widzicie, masa mi\u0119ska. Bardzo polecam zapozna\u0107 si\u0119 z unikaln\u0105 perspektyw\u0105 cz\u0142owieka, kt\u00f3ry stoi za rozwojem sporego kawa\u0142ka Javy:<\/p>\n","innerContent":["\n<p>Jak widzicie, masa mi\u0119ska. Bardzo polecam zapozna\u0107 si\u0119 z unikaln\u0105 perspektyw\u0105 cz\u0142owieka, kt\u00f3ry stoi za rozwojem sporego kawa\u0142ka Javy:<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/www.youtube.com\/watch?v=mE4iTvxLTC4","type":"video","providerNameSlug":"youtube","responsive":true,"className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=mE4iTvxLTC4\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=mE4iTvxLTC4\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2 class=\"wp-block-heading\">2. Roman Elizarov odchodzi z JetBrains i ko\u0144czy swoj\u0105 prac\u0119 nad Kotlinem<\/h2>\n","innerContent":["\n<h2 class=\"wp-block-heading\">2. Roman Elizarov odchodzi z JetBrains i ko\u0144czy swoj\u0105 prac\u0119 nad Kotlinem<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>W \u015bwiecie Kotlina pi\u0105tkowym popo\u0142udniem gruchn\u0119\u0142a Roman Elizarov, lead projektu, og\u0142osi\u0142 swoje odej\u015bcie z JetBrains z powod\u00f3w osobistych, ko\u0144cz\u0105c w ten spos\u00f3b r\u00f3wnie\u017c swoj\u0105 prac\u0119 nad j\u0119zykiem. Po\u017cegnanie odby\u0142o si\u0119 seri\u0105 tweet\u00f3w, w kt\u00f3rych wyra\u017caj\u0105c wdzi\u0119czno\u015b\u0107 za mo\u017cliwo\u015b\u0107 pracy nad Kotlinem i podkre\u015blaj\u0105c swoje wielkie uznanie dla spo\u0142eczno\u015bci Kotlina.<\/p>\n","innerContent":["\n<p>W \u015bwiecie Kotlina pi\u0105tkowym popo\u0142udniem gruchn\u0119\u0142a Roman Elizarov, lead projektu, og\u0142osi\u0142 swoje odej\u015bcie z JetBrains z powod\u00f3w osobistych, ko\u0144cz\u0105c w ten spos\u00f3b r\u00f3wnie\u017c swoj\u0105 prac\u0119 nad j\u0119zykiem. Po\u017cegnanie odby\u0142o si\u0119 seri\u0105 tweet\u00f3w, w kt\u00f3rych wyra\u017caj\u0105c wdzi\u0119czno\u015b\u0107 za mo\u017cliwo\u015b\u0107 pracy nad Kotlinem i podkre\u015blaj\u0105c swoje wielkie uznanie dla spo\u0142eczno\u015bci Kotlina.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dowiedzieli\u015bmy si\u0119 te\u017c kto w przysz\u0142o\u015bci stanie za sterami j\u0119zyka - <a href=\"https:\/\/twitter.com\/@MZarechenskiy\">Mikhail Zarechenskiy<\/a>, wcze\u015bniej pracuj\u0105cy za kulisami w JetBrains, zostanie g\u0142\u00f3wnym projektantem Kotlina. Kluczowe zmiany w zespole obejmuj\u0105 te\u017c <a href=\"https:\/\/twitter.com\/hhariri\">Hadi Hariri<\/a>, kt\u00f3rego mo\u017cecie zna\u0107 jako Co-hosta podcastu <a href=\"https:\/\/talkingkotlin.com\">Talking Kotlin<\/a> - przejmie on teraz wi\u0119cej obowi\u0105zk\u00f3w poza dzia\u0142aniami promocyjnymi i jego zaanga\u017cowaniem w KotlinConf. R\u00f3wnie\u017c drugi prowadz\u0105cy Talking Kotlin, <a href=\"https:\/\/twitter.com\/sebi_io\">Sebastian Aigner<\/a>, b\u0119dzie odgrywa\u0107 teraz wa\u017cniejsz\u0105 rol\u0119 w Kotlin Foundation, szczeg\u00f3lnie w wsparciu inicjatyw szerszego ekosystemu Kotlin. <a href=\"@HeyTolstoy\">Egor Tolstoy<\/a> dalej za\u015b&nbsp;b\u0119dzie kierowa\u0107 zespo\u0142em od strony Product Managementu .<\/p>\n","innerContent":["\n<p>Dowiedzieli\u015bmy si\u0119 te\u017c kto w przysz\u0142o\u015bci stanie za sterami j\u0119zyka - <a href=\"https:\/\/twitter.com\/@MZarechenskiy\">Mikhail Zarechenskiy<\/a>, wcze\u015bniej pracuj\u0105cy za kulisami w JetBrains, zostanie g\u0142\u00f3wnym projektantem Kotlina. Kluczowe zmiany w zespole obejmuj\u0105 te\u017c <a href=\"https:\/\/twitter.com\/hhariri\">Hadi Hariri<\/a>, kt\u00f3rego mo\u017cecie zna\u0107 jako Co-hosta podcastu <a href=\"https:\/\/talkingkotlin.com\">Talking Kotlin<\/a> - przejmie on teraz wi\u0119cej obowi\u0105zk\u00f3w poza dzia\u0142aniami promocyjnymi i jego zaanga\u017cowaniem w KotlinConf. R\u00f3wnie\u017c drugi prowadz\u0105cy Talking Kotlin, <a href=\"https:\/\/twitter.com\/sebi_io\">Sebastian Aigner<\/a>, b\u0119dzie odgrywa\u0107 teraz wa\u017cniejsz\u0105 rol\u0119 w Kotlin Foundation, szczeg\u00f3lnie w wsparciu inicjatyw szerszego ekosystemu Kotlin. <a href=\"@HeyTolstoy\">Egor Tolstoy<\/a> dalej za\u015b&nbsp;b\u0119dzie kierowa\u0107 zespo\u0142em od strony Product Managementu .<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Prywata: w tym miejscu chcia\u0142bym wyrazi\u0107 moj\u0105 szczery wdzi\u0119czno\u015b\u0107 za wp\u0142yw, jaki Roman Elizarov mia\u0142 na moj\u0105 drog\u0119 zawodow\u0105. To jego publikacje sprawi\u0142y, \u017ce wci\u0105gn\u0105\u0142 mnie \u015bwiat JVM Runtime i projektowania j\u0119zyk\u00f3w programowania - w naci\u0105gany spos\u00f3b jest wi\u0119c to osoba, kt\u00f3ra jest w zwi\u0105zku z tym \"ojcem chrzestnym\" tego newslettera.<\/p>\n","innerContent":["\n<p>Prywata: w tym miejscu chcia\u0142bym wyrazi\u0107 moj\u0105 szczery wdzi\u0119czno\u015b\u0107 za wp\u0142yw, jaki Roman Elizarov mia\u0142 na moj\u0105 drog\u0119 zawodow\u0105. To jego publikacje sprawi\u0142y, \u017ce wci\u0105gn\u0105\u0142 mnie \u015bwiat JVM Runtime i projektowania j\u0119zyk\u00f3w programowania - w naci\u0105gany spos\u00f3b jest wi\u0119c to osoba, kt\u00f3ra jest w zwi\u0105zku z tym \"ojcem chrzestnym\" tego newslettera.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":16905,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/solid-snake-salute.gif\" alt=\"\" class=\"wp-image-16905\"\/><figcaption class=\"wp-element-caption\">Jestem pewien, \u017ce Roman Elizarov tego nie czyta, ale kiedy przechodzi do swoich kolejnych przedsi\u0119wzi\u0119\u0107, \u017cycz\u0119 mu tylko najlepszego \ud83d\ude47.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/solid-snake-salute.gif\" alt=\"\" class=\"wp-image-16905\"\/><figcaption class=\"wp-element-caption\">Jestem pewien, \u017ce Roman Elizarov tego nie czyta, ale kiedy przechodzi do swoich kolejnych przedsi\u0119wzi\u0119\u0107, \u017cycz\u0119 mu tylko najlepszego \ud83d\ude47.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2 class=\"wp-block-heading\">3. Release Radar<\/h2>\n","innerContent":["\n<h2 class=\"wp-block-heading\">3. Release Radar<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3 class=\"wp-block-heading\">Helidon 4.0<\/h3>\n","innerContent":["\n<h3 class=\"wp-block-heading\">Helidon 4.0<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Helidon 4 zosta\u0142 oficjalnie wydany, staj\u0105c si\u0119 pierwszym na \u015bwiecie frameworkiem do mikroserwis\u00f3w opartym o wirtualne w\u0105tki. G\u0142\u00f3wn\u0105&nbsp;zmian\u0105 przychodz\u0105c\u0105 z wydaniem jest wi\u0119c oczywi\u015bcie zast\u0105pienie Netty now\u0105 implementacj\u0105 serwera o nazwie N\u00edma. N\u00edma zosta\u0142 zaprojektowany tak, aby w pe\u0142ni wykorzystywa\u0107 wirtualne w\u0105tki Java 21, umo\u017cliwiaj\u0105c ka\u017cdemu requestowi dzia\u0142anie na dedykowanym wirtualnym w\u0105tku. Upraszcza to proces wykonywania blokuj\u0105cych operacji i zapewnia wysoki poziom wsp\u00f3\u0142bie\u017cno\u015bci, eliminuj\u0105c w ten spos\u00f3b potrzeb\u0119 skomplikowanego kodu asynchronicznego, co zwi\u0119ksza wydajno\u015b\u0107, zw\u0142aszcza (wed\u0142ug doniesie\u0144 samych tw\u00f3rc\u00f3w) w Helidon MP. Oznacza to r\u00f3wnie\u017c, \u017ce doczekali\u015bmy si\u0119 pierwszego framework wymagaj\u0105cego do dzia\u0142ania Java 21... wydanej zaledwie miesi\u0105c temu.<\/p>\n","innerContent":["\n<p>Helidon 4 zosta\u0142 oficjalnie wydany, staj\u0105c si\u0119 pierwszym na \u015bwiecie frameworkiem do mikroserwis\u00f3w opartym o wirtualne w\u0105tki. G\u0142\u00f3wn\u0105&nbsp;zmian\u0105 przychodz\u0105c\u0105 z wydaniem jest wi\u0119c oczywi\u015bcie zast\u0105pienie Netty now\u0105 implementacj\u0105 serwera o nazwie N\u00edma. N\u00edma zosta\u0142 zaprojektowany tak, aby w pe\u0142ni wykorzystywa\u0107 wirtualne w\u0105tki Java 21, umo\u017cliwiaj\u0105c ka\u017cdemu requestowi dzia\u0142anie na dedykowanym wirtualnym w\u0105tku. Upraszcza to proces wykonywania blokuj\u0105cych operacji i zapewnia wysoki poziom wsp\u00f3\u0142bie\u017cno\u015bci, eliminuj\u0105c w ten spos\u00f3b potrzeb\u0119 skomplikowanego kodu asynchronicznego, co zwi\u0119ksza wydajno\u015b\u0107, zw\u0142aszcza (wed\u0142ug doniesie\u0144 samych tw\u00f3rc\u00f3w) w Helidon MP. Oznacza to r\u00f3wnie\u017c, \u017ce doczekali\u015bmy si\u0119 pierwszego framework wymagaj\u0105cego do dzia\u0142ania Java 21... wydanej zaledwie miesi\u0105c temu.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Helidon SE, stanowi\u0105cy podstawowy zestaw API dla Helidon, r\u00f3wnie\u017c przeszed\u0142 spor\u0105 transformacj\u0119. Adopcja wirtualnych w\u0105tk\u00f3w umo\u017cliwi\u0142a przej\u015bcie od asynchronicznych API do blokuj\u0105cych (a\u017c si\u0119 sam dziwie pisz\u0105c to zdanie). Ta zmiana upraszcza kod, czyni\u0105c go \u0142atwiejszym w pisaniu, utrzymaniu i zrozumieniu - daje nam to przedsmak tego, co czeka pewnie w przysz\u0142o\u015bci ca\u0142y ekosystem. Osoby korzystaj\u0105ce z Helidon 3 SE b\u0119d\u0105 musia\u0142y niestety znacznie dostosowa\u0107 sw\u00f3j kod do zaktualizowanych API. Chocia\u017c mo\u017ce to wymaga\u0107 pewnego pocz\u0105tkowego wysi\u0142ku, korzy\u015bci w postaci zwi\u0119kszonej wydajno\u015bci i prostoty kodu wydaj\u0105 si\u0119 tego warte. Oficjalny przewodnik aktualizacji dostarcza wskaz\u00f3wek dotycz\u0105cych migracji aplikacji do odnowionego Helidon 4 SE.<\/p>\n","innerContent":["\n<p>Helidon SE, stanowi\u0105cy podstawowy zestaw API dla Helidon, r\u00f3wnie\u017c przeszed\u0142 spor\u0105 transformacj\u0119. Adopcja wirtualnych w\u0105tk\u00f3w umo\u017cliwi\u0142a przej\u015bcie od asynchronicznych API do blokuj\u0105cych (a\u017c si\u0119 sam dziwie pisz\u0105c to zdanie). Ta zmiana upraszcza kod, czyni\u0105c go \u0142atwiejszym w pisaniu, utrzymaniu i zrozumieniu - daje nam to przedsmak tego, co czeka pewnie w przysz\u0142o\u015bci ca\u0142y ekosystem. Osoby korzystaj\u0105ce z Helidon 3 SE b\u0119d\u0105 musia\u0142y niestety znacznie dostosowa\u0107 sw\u00f3j kod do zaktualizowanych API. Chocia\u017c mo\u017ce to wymaga\u0107 pewnego pocz\u0105tkowego wysi\u0142ku, korzy\u015bci w postaci zwi\u0119kszonej wydajno\u015bci i prostoty kodu wydaj\u0105 si\u0119 tego warte. Oficjalny przewodnik aktualizacji dostarcza wskaz\u00f3wek dotycz\u0105cych migracji aplikacji do odnowionego Helidon 4 SE.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Najnowsza wersja Helidon obs\u0142uguje r\u00f3wnie\u017c MicroProfile 6.0. Ponadto wydanie towarzyszy oficjalny przewodnik aktualizacji dedykowany dla Helidon 4 MP, pomagaj\u0105cy u\u017cytkownikom w nawigacji po zmianach i zapewniaj\u0105cy p\u0142ynne przej\u015bcie.<\/p>\n","innerContent":["\n<p>Najnowsza wersja Helidon obs\u0142uguje r\u00f3wnie\u017c MicroProfile 6.0. Ponadto wydanie towarzyszy oficjalny przewodnik aktualizacji dedykowany dla Helidon 4 MP, pomagaj\u0105cy u\u017cytkownikom w nawigacji po zmianach i zapewniaj\u0105cy p\u0142ynne przej\u015bcie.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Ca\u0142o\u015b\u0107 to \u015bwie\u017cynka (news mia\u0142 miejsce dopiero wczoraj), kt\u00f3rej pewnie jeszcze w przysz\u0142o\u015bci po\u015bwi\u0119cimy miejsce - po ocenie jak nowe podej\u015bcie sprawdzi si\u0119 w akcji.<\/p>\n","innerContent":["\n<p>Ca\u0142o\u015b\u0107 to \u015bwie\u017cynka (news mia\u0142 miejsce dopiero wczoraj), kt\u00f3rej pewnie jeszcze w przysz\u0142o\u015bci po\u015bwi\u0119cimy miejsce - po ocenie jak nowe podej\u015bcie sprawdzi si\u0119 w akcji.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":16907,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10.png\" alt=\"\" class=\"wp-image-16907\"\/><figcaption class=\"wp-element-caption\">Nie martw si\u0119 Netty, dalej mamy Ci\u0119 w sercu<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-10.png\" alt=\"\" class=\"wp-image-16907\"\/><figcaption class=\"wp-element-caption\">Nie martw si\u0119 Netty, dalej mamy Ci\u0119 w sercu<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A jak ju\u017c dotkn\u0119li\u015bmy tematu Microprofile...<\/p>\n","innerContent":["\n<p>A jak ju\u017c dotkn\u0119li\u015bmy tematu Microprofile...<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/microprofile.io\/2023\/10\/16\/microprofile-6-1-released\/\">Microprofile 6.1<\/a><\/h3>\n","innerContent":["\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/microprofile.io\/2023\/10\/16\/microprofile-6-1-released\/\">Microprofile 6.1<\/a><\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>MicroProfile z zaprezentowa\u0142a wydanie MicroProfile 6.1. Zaktualizowana wersja w pe\u0142ni integruje si\u0119 z Jakarta EE 10 Core Profile. Wydanie samo w sobie nie wprowadzi\u0142o \u017cadnych nowych API, za to pojawi\u0142y drobne ulepszenia w konfiguracji MicroProfile, metrykach i telemetrii. Poni\u017csza grafika pokazuje pe\u0142n\u0105 list\u0119 zmian.<\/p>\n","innerContent":["\n<p>MicroProfile z zaprezentowa\u0142a wydanie MicroProfile 6.1. Zaktualizowana wersja w pe\u0142ni integruje si\u0119 z Jakarta EE 10 Core Profile. Wydanie samo w sobie nie wprowadzi\u0142o \u017cadnych nowych API, za to pojawi\u0142y drobne ulepszenia w konfiguracji MicroProfile, metrykach i telemetrii. Poni\u017csza grafika pokazuje pe\u0142n\u0105 list\u0119 zmian.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"id":16903,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-1024x393.png\" alt=\"\" class=\"wp-image-16903\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-9-1024x393.png\" alt=\"\" class=\"wp-image-16903\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>MicroProfile 6.1 wymaga Java SE 11, a je\u017celi kto\u015b chcia\u0142by go spr\u00f3bowa\u0107 ju\u017c dzi\u015b - Open Liberty 23.0.0.10-beta jest pierwsz\u0105 zgodn\u0105 implementacj\u0105. No c\u00f3\u017c, dla odwa\u017cnych.<\/p>\n","innerContent":["\n<p>MicroProfile 6.1 wymaga Java SE 11, a je\u017celi kto\u015b chcia\u0142by go spr\u00f3bowa\u0107 ju\u017c dzi\u015b - Open Liberty 23.0.0.10-beta jest pierwsz\u0105 zgodn\u0105 implementacj\u0105. No c\u00f3\u017c, dla odwa\u017cnych.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/inside.java\/2023\/10\/18\/announcing-vscode-extension\/\">Oficjalne rozszerzenie Javy dla Visual Studio Code od Oracle<\/a><\/h3>\n","innerContent":["\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/inside.java\/2023\/10\/18\/announcing-vscode-extension\/\">Oficjalne rozszerzenie Javy dla Visual Studio Code od Oracle<\/a><\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Oracle opublikowa\u0142o oficjalne rozszerzenia Javy dla Visual Studio Code, co mo\u017cna uzna\u0107 za zauwa\u017cenie rosn\u0105cej popularno\u015bci Visual Studio Code jako alternatywy dla klasycznych IDE. Mimo \u017ce Java posiada specjalizowane IDE (jak cho\u0107by Intellij), znaczna liczba programist\u00f3w Java, w tym cho\u0107by studenci i ci, dla kt\u00f3rych jest to nie-wiod\u0105cy j\u0119zyk, preferuje dzisiaj VS Code. \u017beby daleko nie szuka\u0107 - u mnie te\u017c stanowi form\u0119 scyzoryka szwajcarskiego.<\/p>\n","innerContent":["\n<p>Oracle opublikowa\u0142o oficjalne rozszerzenia Javy dla Visual Studio Code, co mo\u017cna uzna\u0107 za zauwa\u017cenie rosn\u0105cej popularno\u015bci Visual Studio Code jako alternatywy dla klasycznych IDE. Mimo \u017ce Java posiada specjalizowane IDE (jak cho\u0107by Intellij), znaczna liczba programist\u00f3w Java, w tym cho\u0107by studenci i ci, dla kt\u00f3rych jest to nie-wiod\u0105cy j\u0119zyk, preferuje dzisiaj VS Code. \u017beby daleko nie szuka\u0107 - u mnie te\u017c stanowi form\u0119 scyzoryka szwajcarskiego.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pierwsza wersja zawiera funkcje takie jak auto-uzupe\u0142nianie, pod\u015bwietlanie b\u0142\u0119d\u00f3w, wsparcie dla debugowania oraz kompatybilno\u015b\u0107 z projektami Gradle i Maven. Jeszcze ciekawsze rzeczy dziej\u0105 si\u0119 jednak pod mask\u0105. Podstaw\u0105 tego rozszerzenia do VS Code jest bowiem serwer j\u0119zyka, kt\u00f3ry komunikuje si\u0119 z IDE za pomoc\u0105 protoko\u0142u <code>Language Server Protocol<\/code>. Serwer j\u0119zyka Java od Oracle'a bazuje na tym u\u017cywanym w projekcie Apache Netbeans i wykorzystuje kompilator <code>javac<\/code> z OpenJDK JDK. Gwarantuje to szybkie wsparcie dla nowych funkcji JDK w VS Code. Co wi\u0119cej, podczas gdy rozw\u00f3j serwera j\u0119zyka b\u0119dzie kontynuowany w ramach projektu Apache NetBeans, rozszerzenie do VS Code b\u0119dzie cz\u0119\u015bci\u0105 odr\u0119bnego projektu open source.<\/p>\n","innerContent":["\n<p>Pierwsza wersja zawiera funkcje takie jak auto-uzupe\u0142nianie, pod\u015bwietlanie b\u0142\u0119d\u00f3w, wsparcie dla debugowania oraz kompatybilno\u015b\u0107 z projektami Gradle i Maven. Jeszcze ciekawsze rzeczy dziej\u0105 si\u0119 jednak pod mask\u0105. Podstaw\u0105 tego rozszerzenia do VS Code jest bowiem serwer j\u0119zyka, kt\u00f3ry komunikuje si\u0119 z IDE za pomoc\u0105 protoko\u0142u <code>Language Server Protocol<\/code>. Serwer j\u0119zyka Java od Oracle'a bazuje na tym u\u017cywanym w projekcie Apache Netbeans i wykorzystuje kompilator <code>javac<\/code> z OpenJDK JDK. Gwarantuje to szybkie wsparcie dla nowych funkcji JDK w VS Code. Co wi\u0119cej, podczas gdy rozw\u00f3j serwera j\u0119zyka b\u0119dzie kontynuowany w ramach projektu Apache NetBeans, rozszerzenie do VS Code b\u0119dzie cz\u0119\u015bci\u0105 odr\u0119bnego projektu open source.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dla tych, kt\u00f3rzy nie wiedz\u0105, protok\u00f3\u0142 Language Server Protocol (LSP) to standaryzowany protok\u00f3\u0142 komunikacji mi\u0119dzy narz\u0119dziami programistycznymi (takimi jak \u015brodowiska programistyczne lub IDE) a serwerami j\u0119zyka, kt\u00f3re dostarczaj\u0105 funkcjonalno\u015bci specyficzne dla danego j\u0119zyka, takie jak uzupe\u0142nianie kodu, sprawdzanie b\u0142\u0119d\u00f3w i refaktoryzacja. Dzi\u0119ki LSP narz\u0119dzia mog\u0105 obs\u0142ugiwa\u0107 wiele j\u0119zyk\u00f3w programowania, nie implementuj\u0105c funkcji specyficznych dla danego j\u0119zyka, a pojedynczy serwer j\u0119zyka mo\u017cna wykorzysta\u0107 w wielu narz\u0119dziach. Jest to wi\u0119c spora szansa dla nowych IDE, kt\u00f3re nie musz\u0105 ca\u0142ego wsparcia tworzy\u0107 od zera.<\/p>\n","innerContent":["\n<p>Dla tych, kt\u00f3rzy nie wiedz\u0105, protok\u00f3\u0142 Language Server Protocol (LSP) to standaryzowany protok\u00f3\u0142 komunikacji mi\u0119dzy narz\u0119dziami programistycznymi (takimi jak \u015brodowiska programistyczne lub IDE) a serwerami j\u0119zyka, kt\u00f3re dostarczaj\u0105 funkcjonalno\u015bci specyficzne dla danego j\u0119zyka, takie jak uzupe\u0142nianie kodu, sprawdzanie b\u0142\u0119d\u00f3w i refaktoryzacja. Dzi\u0119ki LSP narz\u0119dzia mog\u0105 obs\u0142ugiwa\u0107 wiele j\u0119zyk\u00f3w programowania, nie implementuj\u0105c funkcji specyficznych dla danego j\u0119zyka, a pojedynczy serwer j\u0119zyka mo\u017cna wykorzysta\u0107 w wielu narz\u0119dziach. Jest to wi\u0119c spora szansa dla nowych IDE, kt\u00f3re nie musz\u0105 ca\u0142ego wsparcia tworzy\u0107 od zera.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":16910,"width":728,"height":335,"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\/10\/image-11-1024x471.png\" alt=\"\" class=\"wp-image-16910\" style=\"width:728px;height:335px\" width=\"728\" height=\"335\"\/><figcaption class=\"wp-element-caption\">Dla tych co ju\u017c nie znaj\u0105 - to zielone po \u015brodku to \u015bwi\u0119tej pami\u0119ci Atom.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-11-1024x471.png\" alt=\"\" class=\"wp-image-16910\" style=\"width:728px;height:335px\" width=\"728\" height=\"335\"\/><figcaption class=\"wp-element-caption\">Dla tych co ju\u017c nie znaj\u0105 - to zielone po \u015brodku to \u015bwi\u0119tej pami\u0119ci Atom.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>PS: Temat jest mi bliski, bo w mojej firmie - VirtusLab - rozwijamy <a href=\"https:\/\/scalameta.org\/metals\/\">serwer j\u0119zyka<\/a> dla Scali - Metals.<\/p>\n","innerContent":["\n<p>PS: Temat jest mi bliski, bo w mojej firmie - VirtusLab - rozwijamy <a href=\"https:\/\/scalameta.org\/metals\/\">serwer j\u0119zyka<\/a> dla Scali - Metals.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3 class=\"wp-block-heading\"><a href=\"http:\/\/wildfly.org\/news\/2023\/10\/18\/WildFly30-Released\/\">WildFly 30<\/a><\/h3>\n","innerContent":["\n<h3 class=\"wp-block-heading\"><a href=\"http:\/\/wildfly.org\/news\/2023\/10\/18\/WildFly30-Released\/\">WildFly 30<\/a><\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Swoj\u0105 premier\u0119 mia\u0142 te\u017c okr\u0105g\u0142y WildFly 30. Mimo \u017ce oficjalna rekomendacja to nadal JDK 17 lub 11, znacz\u0105ca cz\u0119\u015b\u0107 tego wydania zosta\u0142a po\u015bwi\u0119cona integracji z Java SE 21. Najnowsza wersja przechodzi na tej wersji testy certyfikacyjne zar\u00f3wno Jakarta EE 10 Core Profile, jak i Microprofile. Wraz z coraz wi\u0119kszym naciskiem na JDK 21 przewiduje si\u0119, \u017ce WildFly 30 mo\u017ce by\u0107 ostatnim, kt\u00f3re wspiera JDK 11.<\/p>\n","innerContent":["\n<p>Swoj\u0105 premier\u0119 mia\u0142 te\u017c okr\u0105g\u0142y WildFly 30. Mimo \u017ce oficjalna rekomendacja to nadal JDK 17 lub 11, znacz\u0105ca cz\u0119\u015b\u0107 tego wydania zosta\u0142a po\u015bwi\u0119cona integracji z Java SE 21. Najnowsza wersja przechodzi na tej wersji testy certyfikacyjne zar\u00f3wno Jakarta EE 10 Core Profile, jak i Microprofile. Wraz z coraz wi\u0119kszym naciskiem na JDK 21 przewiduje si\u0119, \u017ce WildFly 30 mo\u017ce by\u0107 ostatnim, kt\u00f3re wspiera JDK 11.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dodatkowo, wraz z przyj\u015bciem WildFly 30 nast\u0105pi\u0142a zmiana licencji z Lesser General Public License 2.1 na Apache Software License 2.0, podsumowuj\u0105c w ten spos\u00f3b d\u0142ugoletni\u0105 \u015bcie\u017ck\u0119. Przej\u015bcie z Lesser General Public License 2.1 (LGPL 2.1) na Apache Software License 2.0 (ASL 2.0) oznacza przej\u015bcie z licencji \"s\u0142abej\" copyleft na bardziej liberaln\u0105. Podczas gdy LGPL 2.1 pozwala na \u0142\u0105czenie z oprogramowaniem w\u0142asno\u015bciowym, ale wymaga, aby modyfikacje licencjonowanego oprogramowania by\u0142y wydawane na tej samej licencji LGPL 2.1, ASL 2.0 pozwala u\u017cytkownikom swobodnie u\u017cywa\u0107, modyfikowa\u0107 i dystrybuowa\u0107 oprogramowanie, w tym w\u0142\u0105czanie go do projekt\u00f3w w\u0142asno\u015bciowych, bez obowi\u0105zku ujawniania modyfikacji czy pochodnych prac. Wa\u017cne jest jednak, aby zaznaczy\u0107, \u017ce WildFly korzysta z wielu bibliotek komponent\u00f3w na r\u00f3\u017cnych licencjach open-source, a zmiana licencji dotyczy tylko cz\u0119\u015bci z nich.<\/p>\n","innerContent":["\n<p>Dodatkowo, wraz z przyj\u015bciem WildFly 30 nast\u0105pi\u0142a zmiana licencji z Lesser General Public License 2.1 na Apache Software License 2.0, podsumowuj\u0105c w ten spos\u00f3b d\u0142ugoletni\u0105 \u015bcie\u017ck\u0119. Przej\u015bcie z Lesser General Public License 2.1 (LGPL 2.1) na Apache Software License 2.0 (ASL 2.0) oznacza przej\u015bcie z licencji \"s\u0142abej\" copyleft na bardziej liberaln\u0105. Podczas gdy LGPL 2.1 pozwala na \u0142\u0105czenie z oprogramowaniem w\u0142asno\u015bciowym, ale wymaga, aby modyfikacje licencjonowanego oprogramowania by\u0142y wydawane na tej samej licencji LGPL 2.1, ASL 2.0 pozwala u\u017cytkownikom swobodnie u\u017cywa\u0107, modyfikowa\u0107 i dystrybuowa\u0107 oprogramowanie, w tym w\u0142\u0105czanie go do projekt\u00f3w w\u0142asno\u015bciowych, bez obowi\u0105zku ujawniania modyfikacji czy pochodnych prac. Wa\u017cne jest jednak, aby zaznaczy\u0107, \u017ce WildFly korzysta z wielu bibliotek komponent\u00f3w na r\u00f3\u017cnych licencjach open-source, a zmiana licencji dotyczy tylko cz\u0119\u015bci z nich.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3 class=\"wp-block-heading\">Eclipse Temurin JDK 21<\/h3>\n","innerContent":["\n<h3 class=\"wp-block-heading\">Eclipse Temurin JDK 21<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>To ju\u017c tak bardziej w formie wzmianki - nareszcie doczekali\u015bmy si\u0119 <a href=\"https:\/\/adoptium.net\/en-GB\/temurin\/releases\/\">wariantu JDK 21 wydawanego<\/a> przez Eclipse Foundation, b\u0119d\u0105cego spadkobierc\u0105 starego AdoptOpenJDK. Podejrzewam, \u017ce sporo os\u00f3b na niego czeka\u0142o.<\/p>\n","innerContent":["\n<p>To ju\u017c tak bardziej w formie wzmianki - nareszcie doczekali\u015bmy si\u0119 <a href=\"https:\/\/adoptium.net\/en-GB\/temurin\/releases\/\">wariantu JDK 21 wydawanego<\/a> przez Eclipse Foundation, b\u0119d\u0105cego spadkobierc\u0105 starego AdoptOpenJDK. Podejrzewam, \u017ce sporo os\u00f3b na niego czeka\u0142o.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Ciekawe s\u0105 <a href=\"https:\/\/adoptium.net\/en-GB\/blog\/2023\/09\/temurin21-delay\/\">kulisy ponad miesi\u0119cznego op\u00f3\u017anienia<\/a> w stosunku do pozosta\u0142ych wersji. Mimo przeprowadzenia test\u00f3w i weryfikacji kodu \u017ar\u00f3d\u0142owego OpenJDK 21 GA, oficjalne wydanie Temurin 21 napotka\u0142o na op\u00f3\u017anienia spowodowane now\u0105 umow\u0105 licencyjn\u0105 dotycz\u0105c\u0105 test\u00f3w Java 21 TCK, kt\u00f3ra zosta\u0142a wprowadzona kr\u00f3tko przed GA OpenJDK 21. W zwi\u0105zku z tym Fundacja Eclipse musia\u0142a dok\u0142adnie oceni\u0107 i zaakceptowa\u0107 t\u0119 aktualizowan\u0105 umow\u0119. Przez pewien czas dost\u0119pne by\u0142y jedynie wersje wczesnego dost\u0119pu, kt\u00f3re nie by\u0142y zalecane do u\u017cytku produkcyjnego. Jednak do 9 pa\u017adziernika 2023 roku Adoptium otrzyma\u0142o Java Technology Compatibility Kit (TCK) dla Java 21, zapewniaj\u0105c jej zgodno\u015b\u0107 ze specyfikacj\u0105 Java. Przeprowadzenie wszystkich test\u00f3w TCK zaj\u0119\u0142o troch\u0119 czasu, ale finalna wersja trafi\u0142a w nasze r\u0119ce.<\/p>\n","innerContent":["\n<p>Ciekawe s\u0105 <a href=\"https:\/\/adoptium.net\/en-GB\/blog\/2023\/09\/temurin21-delay\/\">kulisy ponad miesi\u0119cznego op\u00f3\u017anienia<\/a> w stosunku do pozosta\u0142ych wersji. Mimo przeprowadzenia test\u00f3w i weryfikacji kodu \u017ar\u00f3d\u0142owego OpenJDK 21 GA, oficjalne wydanie Temurin 21 napotka\u0142o na op\u00f3\u017anienia spowodowane now\u0105 umow\u0105 licencyjn\u0105 dotycz\u0105c\u0105 test\u00f3w Java 21 TCK, kt\u00f3ra zosta\u0142a wprowadzona kr\u00f3tko przed GA OpenJDK 21. W zwi\u0105zku z tym Fundacja Eclipse musia\u0142a dok\u0142adnie oceni\u0107 i zaakceptowa\u0107 t\u0119 aktualizowan\u0105 umow\u0119. Przez pewien czas dost\u0119pne by\u0142y jedynie wersje wczesnego dost\u0119pu, kt\u00f3re nie by\u0142y zalecane do u\u017cytku produkcyjnego. Jednak do 9 pa\u017adziernika 2023 roku Adoptium otrzyma\u0142o Java Technology Compatibility Kit (TCK) dla Java 21, zapewniaj\u0105c jej zgodno\u015b\u0107 ze specyfikacj\u0105 Java. Przeprowadzenie wszystkich test\u00f3w TCK zaj\u0119\u0142o troch\u0119 czasu, ale finalna wersja trafi\u0142a w nasze r\u0119ce.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2 class=\"wp-block-heading\">A na koniec dwie interesuj\u0105ce strony<\/h2>\n","innerContent":["\n<h2 class=\"wp-block-heading\">A na koniec dwie interesuj\u0105ce strony<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/rss.xlit.app\/updates\">https:\/\/rss.xlit.app\/updates<\/a> - Ostatnimi czasy wpad\u0142em na konto <a href=\"https:\/\/twitter.com\/Jepupdates\">Twitterowe<\/a> (i towarzysz\u0105cy mu RSS), kt\u00f3re pozwalaj\u0105 na \u015bledzenie nowo pojawiaj\u0105cych si\u0119 JEP-\u00f3w, ca\u0142o\u015b\u0107 stworzona przez <a href=\"https:\/\/twitter.com\/a_ghasemi\">Alireza Ghasemi<\/a>. Nic rewolucyjnego, ale je\u015bli chcecie mie\u0107 pewno\u015b\u0107, \u017ce nie przegapicie \u017cadnego nowego materia\u0142u - narz\u0119dzie pozwala \u015bledzi\u0107 list\u0119 ju\u017c od stanu Draft.<\/p>\n","innerContent":["\n<p><a href=\"https:\/\/rss.xlit.app\/updates\">https:\/\/rss.xlit.app\/updates<\/a> - Ostatnimi czasy wpad\u0142em na konto <a href=\"https:\/\/twitter.com\/Jepupdates\">Twitterowe<\/a> (i towarzysz\u0105cy mu RSS), kt\u00f3re pozwalaj\u0105 na \u015bledzenie nowo pojawiaj\u0105cych si\u0119 JEP-\u00f3w, ca\u0142o\u015b\u0107 stworzona przez <a href=\"https:\/\/twitter.com\/a_ghasemi\">Alireza Ghasemi<\/a>. Nic rewolucyjnego, ale je\u015bli chcecie mie\u0107 pewno\u015b\u0107, \u017ce nie przegapicie \u017cadnego nowego materia\u0142u - narz\u0119dzie pozwala \u015bledzi\u0107 list\u0119 ju\u017c od stanu Draft.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/awesomejava.resamvi.io\/\">awesomejava.resamvi.io<\/a> - kojarzycie listy Awesome, zbieraj\u0105ce najwa\u017cniejsze narz\u0119dzia dla developer\u00f3w lub interesuj\u0105ce materia\u0142y, wszystko b\u0119d\u0105c kurowanymi przez spo\u0142eczno\u015b\u0107. Ich ilo\u015b\u0107 jest tak du\u017ca, \u017ce powsta\u0142y ju\u017c meta-listy (jak <a href=\"https:\/\/github.com\/sindresorhus\/awesome\">Awesome Awesome<\/a>, kt\u00f3ra zbli\u017ca si\u0119 do 300 000 gwiazdek na GitHubie ) czy potrzeby alternatywnych sposob\u00f3w przegl\u0105dania. Takim czym\u015b jest <code>awesomejava.resamvi.io<\/code>. Zawiera ona bowiem oficjaln\u0105 (na ile oficjalna mo\u017ce by\u0107 lista awesome) edycje Javow\u0105, ale z ma\u0142ym twistem - ot\u00f3\u017c ka\u017cda z kategorii zosta\u0142a posortowana pod wzgl\u0119dem wspomnianych ju\u017c \"gwiazdek'. Wiem, \u017ce dla wielu os\u00f3b jest to istotne kryterium (i wcale nie najgorsze proxy do podejmowania decyzji), dlatego je\u015bli do tej pory odbijali\u015bcie si\u0119 od \"awesome list\", dajcie szanse tej nowej prezentacji idei.<\/p>\n","innerContent":["\n<p><a href=\"https:\/\/awesomejava.resamvi.io\/\">awesomejava.resamvi.io<\/a> - kojarzycie listy Awesome, zbieraj\u0105ce najwa\u017cniejsze narz\u0119dzia dla developer\u00f3w lub interesuj\u0105ce materia\u0142y, wszystko b\u0119d\u0105c kurowanymi przez spo\u0142eczno\u015b\u0107. Ich ilo\u015b\u0107 jest tak du\u017ca, \u017ce powsta\u0142y ju\u017c meta-listy (jak <a href=\"https:\/\/github.com\/sindresorhus\/awesome\">Awesome Awesome<\/a>, kt\u00f3ra zbli\u017ca si\u0119 do 300 000 gwiazdek na GitHubie ) czy potrzeby alternatywnych sposob\u00f3w przegl\u0105dania. Takim czym\u015b jest <code>awesomejava.resamvi.io<\/code>. Zawiera ona bowiem oficjaln\u0105 (na ile oficjalna mo\u017ce by\u0107 lista awesome) edycje Javow\u0105, ale z ma\u0142ym twistem - ot\u00f3\u017c ka\u017cda z kategorii zosta\u0142a posortowana pod wzgl\u0119dem wspomnianych ju\u017c \"gwiazdek'. Wiem, \u017ce dla wielu os\u00f3b jest to istotne kryterium (i wcale nie najgorsze proxy do podejmowania decyzji), dlatego je\u015bli do tej pory odbijali\u015bcie si\u0119 od \"awesome list\", dajcie szanse tej nowej prezentacji idei.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>PS: Troch\u0119 out-of-scope, ale polecam r\u00f3wnie\u017c <a href=\"https:\/\/github.com\/ByteByteGoHq\/system-design-101\">system-design-101<\/a>, nowe repozytorium materia\u0142\u00f3w od ByteByteGo. Jest naprawd\u0119 \u015bwietne, zw\u0142aszcza jak kto\u015b potrzebuje powt\u00f3rki przed rekrutacj\u0105, ale nie tylko :)<\/p>\n","innerContent":["\n<p>PS: Troch\u0119 out-of-scope, ale polecam r\u00f3wnie\u017c <a href=\"https:\/\/github.com\/ByteByteGoHq\/system-design-101\">system-design-101<\/a>, nowe repozytorium materia\u0142\u00f3w od ByteByteGo. Jest naprawd\u0119 \u015bwietne, zw\u0142aszcza jak kto\u015b potrzebuje powt\u00f3rki przed rekrutacj\u0105, ale nie tylko :)<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/separator","attrs":[],"innerBlocks":[],"innerHTML":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","innerContent":["\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><strong>A na koniec troch\u0119 prywatnych wra\u017ce\u0144 z ostatnich woja\u017cy<\/strong><\/p>\n","innerContent":["\n<p><strong>A na koniec troch\u0119 prywatnych wra\u017ce\u0144 z ostatnich woja\u017cy<\/strong><\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zar\u00f3wno Geecon, jak i EclipseCon by\u0142y rewelacyjnymi imprezami, kt\u00f3re mam odwiedzi\u0107 za rok. Pozna\u0142em tam nie tylko wielu fantastycznych ludzi, ale r\u00f3wnie\u017c mog\u0142em spojrze\u0107 na nasz ekosystem z nieco innej perspektywy. Odkry\u0142em na przyk\u0142ad, \u017ce niemiecka spo\u0142eczno\u015b\u0107 Java, iJUG, konsekwentnie publikuje fizyczny magazyn papierowy \"Java aktuell\" od 2010 roku \ud83d\ude33.<\/p>\n","innerContent":["\n<p>Zar\u00f3wno Geecon, jak i EclipseCon by\u0142y rewelacyjnymi imprezami, kt\u00f3re mam odwiedzi\u0107 za rok. Pozna\u0142em tam nie tylko wielu fantastycznych ludzi, ale r\u00f3wnie\u017c mog\u0142em spojrze\u0107 na nasz ekosystem z nieco innej perspektywy. Odkry\u0142em na przyk\u0142ad, \u017ce niemiecka spo\u0142eczno\u015b\u0107 Java, iJUG, konsekwentnie publikuje fizyczny magazyn papierowy \"Java aktuell\" od 2010 roku \ud83d\ude33.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"id":16896,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-1024x768.png\" alt=\"\" class=\"wp-image-16896\"\/><figcaption class=\"wp-element-caption\">Zdecydowanie bardzo fajny dodatek do mojej kolekcji gad\u017cet\u00f3w Java.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-7-1024x768.png\" alt=\"\" class=\"wp-image-16896\"\/><figcaption class=\"wp-element-caption\">Zdecydowanie bardzo fajny dodatek do mojej kolekcji gad\u017cet\u00f3w Java.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>PS3: Odkry\u0142em te\u017c na nowo moj\u0105 dawn\u0105 pasj\u0119 do naklejek na laptopy. Niczego nie \u017ca\u0142uje.<\/p>\n","innerContent":["\n<p>PS3: Odkry\u0142em te\u017c na nowo moj\u0105 dawn\u0105 pasj\u0119 do naklejek na laptopy. Niczego nie \u017ca\u0142uje.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"id":16899,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-1024x698.png\" alt=\"\" class=\"wp-image-16899\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2023\/10\/image-8-1024x698.png\" alt=\"\" class=\"wp-image-16899\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Je\u015bli jeste\u015bcie ciekawi co ciekawego dzia\u0142o si\u0119 na EclipseCon - <a href=\"https:\/\/twitter.com\/ivar_grimstad\">Ivar Grimstad, Developer Advocate Jakarty EE<\/a>, podzieli\u0142 si\u0119  wra\u017ceniami <a href=\"https:\/\/www.agilejava.eu\/2023\/10\/20\/eclipsecon-2023\/\">na swoim blogu<\/a>. Niestety, nie znalaz\u0142em \u017cadnego opracowania GeeCon Prague, a sam dotar\u0142em tylko na drugi dzie\u0144...  m\u00f3j samolot op\u00f3\u017ani\u0142 si\u0119 prawie 5 godzin.<\/p>\n","innerContent":["\n<p>Je\u015bli jeste\u015bcie ciekawi co ciekawego dzia\u0142o si\u0119 na EclipseCon - <a href=\"https:\/\/twitter.com\/ivar_grimstad\">Ivar Grimstad, Developer Advocate Jakarty EE<\/a>, podzieli\u0142 si\u0119  wra\u017ceniami <a href=\"https:\/\/www.agilejava.eu\/2023\/10\/20\/eclipsecon-2023\/\">na swoim blogu<\/a>. Niestety, nie znalaz\u0142em \u017cadnego opracowania GeeCon Prague, a sam dotar\u0142em tylko na drugi dzie\u0144...  m\u00f3j samolot op\u00f3\u017ani\u0142 si\u0119 prawie 5 godzin.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>I tym weso\u0142o-smutnym akcentem \u017cegnam si\u0119! Do zobaczenia w nast\u0119pnej edycji, ju\u017c mam nadzieje w regularnym trybie. <\/p>\n","innerContent":["\n<p>I tym weso\u0142o-smutnym akcentem \u017cegnam si\u0119! Do zobaczenia w nast\u0119pnej edycji, ju\u017c mam nadzieje w regularnym trybie. <\/p>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/16893","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=16893"}],"version-history":[{"count":30,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/16893\/revisions"}],"predecessor-version":[{"id":16941,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/16893\/revisions\/16941"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media\/16917"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=16893"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=16893"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=16893"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}