{"id":10118,"date":"2021-06-29T13:00:00","date_gmt":"2021-06-29T11:00:00","guid":{"rendered":"https:\/\/vived.io\/jvm-tuesday-vol-45\/"},"modified":"2022-09-19T13:10:51","modified_gmt":"2022-09-19T11:10:51","slug":"jvm-tuesday-vol-45","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/","title":{"rendered":"JVM Tuesday vol. 44"},"content":{"rendered":"<h2 id=\"1-kotlin-1-5-20-zaskakujaco-ciekawe-wydanie-again\" data-num=1>1. <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">Kotlin 1.5.20 &#8211; zaskakuj\u0105co ciekawe wydanie (again)<\/a><\/h2>\n<p>Minory Kotlina to jedne z najciekawszych Minor\u00f3w &#8211; zw\u0142aszcza wersje *.*.20.<\/p>\n<p>Nie wiem, czy to jaka\u015b kwestia nomenklatury, czy jakiej\u015b przyj\u0119tej konwencji, ale Kotlin 1.4.20 by\u0142 prawdziw\u0105 petard\u0105, a tutaj pojawia si\u0119 wersja 1.5.20. Co prawda nie jest ona a\u017c tak bogata jak jej odpowiednik , ale tak naprawd\u0119 jest tam ca\u0142kiem sporo nowego i interesuj\u0105cego.<\/p>\n<p>Dobra, to co interesuj\u0105cego przynosi wspomniana wersja? Ot\u00f3\u017c nareszcie mamy dosta\u0107 lepiej dzia\u0142aj\u0105c\u0105 integracje Kotlina z Lombokiem. Jest to dla mnie prywatnie do\u015b\u0107 istotna informacja, poniewa\u017c moja pierwsza du\u017ca w \u017cyciu migracja Java-&gt;Kotlin bardzo przed\u0142u\u017cy\u0142a si\u0119 w\u0142a\u015bnie z powodu konieczno\u015bci \u201cwychodzenia\u201d z Lomboka. Niestety, zakres adnotacji kompatybilnych z Kotlinem jest ci\u0105gle do\u015b\u0107 ograniczony &#8211; \u017ceby pokry\u0107 nasz (historyczny ju\u017c na szcz\u0119\u015bcie) case, niezb\u0119dne by\u0142oby wspieranie r\u00f3wnie\u017c Builder\u00f3w generowanych z poziomu Lomboka. C\u00f3\u017c, mo\u017ce w nast\u0119pnych edycjach.<\/p>\n<p>Z punktu widzenia programist\u00f3w Java, interesuj\u0105cym mo\u017ce by\u0107 te\u017c fakt natywnego wsparcia przez Kotlina projektu <a href=\"https:\/\/jspecify.dev\/\">JSpecify<\/a>, zestawu adnotacji udost\u0119pniaj\u0105cych szersze mo\u017cliwo\u015bci analizy statycznej w javowych projektach. Do tej pory rozpoznawany by\u0142 istniej\u0105cy ju\u017c zbi\u00f3r dostarczony przez samo JetBrains, wida\u0107 jednak, \u017ce tw\u00f3rcy j\u0119zyka otwieraj\u0105 si\u0119 r\u00f3wnie\u017c na alternatywy.<\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img decoding=\"async\" class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\" alt=\"\"><figcaption>Tw\u00f3rcy explicite pisz\u0105 w dokumentacji \u201cWe have seen the xkcd comic. Please do not send us the xkcd comic. We know about the xkcd comic.\u201d Ja jednak nie mog\u0119 si\u0119 powstrzyma\u0107<\/figcaption><\/figure>\n<p>Kotlin 1.5.20 to tak\u017ce troch\u0119 nowych mo\u017cliwo\u015bci dla Kotlin\/Native, a tak\u017ce lepsze wsparcie nowego Gradle. Dla os\u00f3b, kt\u00f3re u\u017cywaj\u0105 Kotlin\/JS (s\u0105 tu tacy eksperymentatorzy?) udost\u0119pniono r\u00f3wnie\u017c <a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">nowy przewodnik migracyjny<\/a> dla, maj\u0105cej ukaza\u0107 si\u0119 wraz z kolejn\u0105 du\u017c\u0105 wersj\u0105 j\u0119zyka, zmodernizowanej reprezentacji po\u015bredniej.<\/p>\n<p>BTW: Wiedzieli\u015bcie, \u017ce Kotlin 1.6 uka\u017ce si\u0119 ju\u017c w listopadzie 2021 . Nowy cykl releasowy zupe\u0142nie wypad\u0142 mi z g\u0142owy<\/p>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">JetBrains Blog Kotlin 1.5.20 Released! | The Kotlin Blog Kotlin continues to stay up to date<\/a><\/li>\n<li><a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">Migrating Kotlin\/JS projects to the IR compiler<\/a><\/li>\n<\/ul>\n<h2 id=\"2-dlaczego-nie-powinnismy-uzywac-glassfisha-na-produkcji\" data-num=2>2. <a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">Dlaczego nie powinni\u015bmy u\u017cywa\u0107 GlassFisha na produkcji<\/a><\/h2>\n<p>Co pewien czas informujemy Was o tym, jak rozwija si\u0119 standard Jakarta EE. Regularnie te\u017c, troch\u0119 k\u0105\u015bliwie odnosimy si\u0119 do do\u015b\u0107 powolnej adopcji standard\u00f3w. Dopiero co cieszyli\u015bmy si\u0119 te\u017c, cho\u0107 nie bez nutki ironii, \u017ce pierwsze projekty ju\u017c teraz wspieraj\u0105 Jakart\u0119 EE 9.1 &#8211; w\u015br\u00f3d nich dzisiejszy bohater, GlassFish.<\/p>\n<p>Mo\u017ce jednak nie warto si\u0119 za bardzo spieszy\u0107.<\/p>\n<p>Na blogu Payary ukaza\u0142 si\u0119 do\u015b\u0107 d\u0142ugi post, dlaczego nie warto i\u015b\u0107 w rozwi\u0105zanie konkurencji i frywolnie wrzuca\u0107 je na produkcje. W wi\u0119kszo\u015bci przypadk\u00f3w przeszliby\u015bmy nad takowym do porz\u0105dku dziennego &#8211; podgryzanie konkurencji to w ko\u0144cu absolutnie nic niezwyk\u0142ego. Post zwraca jednak uwag\u0119 r\u00f3wnie\u017c na kilka aspekt\u00f3w, kt\u00f3re warto wzi\u0105\u0107 pod uwag\u0119 przy potencjalnej migracji.<\/p>\n<p>Dlaczego GlassFish m\u00f3g\u0142 tak szybko stworzy\u0107 swoj\u0105 wersj\u0119 referencyjn\u0105? Odpowiedzi\u0105 niech b\u0119dzie tutaj spos\u00f3b powstawania tego serwera. Okazuje si\u0119, z czego nie zdawa\u0142em sobie sprawy, \u017ce GlassFish nie ma w zwyczaju aktualizowa\u0107 swoich w\u0142asnych zale\u017cno\u015bci. W celu weryfikacji tej informacji uda\u0142o mi si\u0119 przebi\u0107 przez <a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">stare w\u0105tki redditowe<\/a>, gdzie ludzie do\u015b\u0107 mocno p\u0142acz\u0105 nad tym faktem. Pr\u00f3bowa\u0142em obali\u0107 to twierdzenie, szukaj\u0105c jakiekolwiek \u201cminorowej\u201d edycji, ale niestety, jedyne co znalaz\u0142em to potwierdzenie tego, o czym pisa\u0142 internet &#8211; <a href=\"https:\/\/glassfish.org\/download\">GlassFish posiada tylko du\u017ce edycje<\/a>.<\/p>\n<p>Nie podejrzewam, \u017ceby ktokolwiek u\u017cywa\u0142 GlassFisha na produkcji (nie spotka\u0142em si\u0119 z tym od bardzo, bardzo dawna). Jest to jednak bardzo dobre przypomnienie, \u017ce serwery aplikacyjne, mimo i\u017c implementuj\u0105 dok\u0142adnie ten sam interfejs, nie zosta\u0142y stworzone r\u00f3wnymi. GlassFish l\u0105duje w mojej g\u0142owie w szufladce \u201czabawka\u201d.<\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img loading=\"lazy\" decoding=\"async\" class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/dbkrxmc-ae056bf1-7f06-42db-809b-79e3a53c185d.gif\" alt=\"\" width=\"4080\" height=\"2295\">&nbsp;<figcaption>Moje zabawki nie s\u0105 Twoimi zabawkami<\/figcaption><\/figure>\n<p>Mamy nadziej\u0119, \u017ce ten tekst nie b\u0119dzie dzia\u0142a\u0142 jako straszak dla wszystkich tych, kt\u00f3rzy chc\u0105 by\u0107 na bie\u017c\u0105co z nowymi wersjami Jakarty EE. My naprawd\u0119 mamy nadzieje, \u017ce ten ekosystem w przysz\u0142o\u015bci nieco przyspieszy &#8211; osobi\u015bcie bardzo lubi\u0119 zar\u00f3wno Jakart\u0119, jak i MicroProfile, a powolny cykl wydawniczy fatalnie dzia\u0142a na ich PR.<\/p>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-1\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n<li><a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">GlassFish 6.1 Should Not Be Used In Production: Here\u2019s Why<\/a><\/li>\n<li><a href=\"https:\/\/glassfish.org\/download\">Eclipse GlassFish Downloads<\/a><\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">Is there a reason big corporates won&#8217;t use Glassfish?<\/a><\/li>\n<\/ul>\n<h2 id=\"3-nowa-seria-wideo-o-jepach-od-oracle\" data-num=3>3. <a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">Nowa seria wideo o JEPach od Oracle<\/a><\/h2>\n<p>Oracle bardzo zaczyna dba\u0107 o komunikacj\u0119 z programistami. Prowadz\u0105 stron\u0119 Inside Java, agreguj\u0105c\u0105 zmiany w \u015bwiecie JVMowym. Dodatkowo, ju\u017c kilkukrotnie w r\u00f3\u017cnych edycjach wspomina\u0142em o ichniejszym podca\u015bcie. Niedawno zacz\u0119li prowadzi\u0107 te\u017c seri\u0119 wideo Inside Java Newscast, kt\u00f3re mo\u017cecie traktowa\u0107 jako alternatyw\u0119 dla post\u00f3w, kt\u00f3re regularnie czytacie (aczkolwiek my si\u0119gamy nieco szerzej &#8211; seria Oracle to newsy stricte zwi\u0105zane z JVMem).<\/p>\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"What is a JEP? - JEP Caf\u00e9 #1\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/l1VrmvyIEpM?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<p>Kolejn\u0105 seri\u0105 tego typu jest teraz JEP Cafe. Regularnie piszemy o JEPach, troch\u0119 nie bior\u0105c pod uwag\u0119, \u017ce ten termin mo\u017ce by\u0107 obcy dla wielu os\u00f3b pisz\u0105cych w tym j\u0119zyku (cho\u0107 podejrzewam, \u017ce chocia\u017cby przy premierach kolejnych \u201cdu\u017cych\u201d wersji Javy, niejednej osobie obi\u0142 si\u0119 o oczka). Dlatego te\u017c ciesz\u0119 si\u0119, \u017ce powsta\u0142a tego typu seria, b\u0119d\u0105ca de facto wprowadzeniem do tematu &#8211; mo\u017cna dowiedzie\u0107 si\u0119, jak ca\u0142y proces wygl\u0105da od kuchni, jak\u0105 drog\u0119 musi prze\u017cy\u0107 proposal, oraz z jakich cz\u0119\u015bci si\u0119 sk\u0142ada. Ca\u0142o\u015b\u0107 przedstawiona jest na bazie <a href=\"https:\/\/openjdk.java.net\/jeps\/395\">JEP 395 &#8211; Records<\/a>, kt\u00f3ry zosta\u0142 roz\u0142o\u017cony na czynniki pierwsze przez (nieco flegmatycznego) prowadz\u0105cego.<\/p>\n<p>Korzystaj\u0105c z okazji, chcieli\u015bmy si\u0119 podzieli\u0107 dwoma innymi ciekawymi rozmowami, przeprowadzonymi przez prowadz\u0105cego Inside Java Newscast, Nicolai Parlog. Ot\u00f3\u017c spotka\u0142 si\u0119 on ostatnio z architektami stoj\u0105cymi za dwoma du\u017cymi projektami <a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">Loom<\/a> i <a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">Panama<\/a>, przeprowadzaj\u0105c z nimi d\u0142ugie, oko\u0142o godzinne rozmowy. Jako \u017ce oba projekty s\u0105 relatywnie szybko zmienne, wywiady Nicolaia mo\u017cna stosowa\u0107 jako chyba naj\u015bwie\u017cszy materia\u0142 dotycz\u0105cy obu.<\/p>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-2\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">The State of Project Loom with Ron Pressler<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">The State of Project Panama with Maurizio Cimadamore<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">What is a JEP? &#8211; JEP Caf\u00e9 #1<\/a><\/li>\n<\/ul>\n<hr>\n<p>I pami\u0119tajcie, \u017ceby spr\u00f3bowa\u0107 <a href=\"https:\/\/blog.vived.io\/software-craftsmanship-saturday\/vived.io\">Vived<\/a>, je\u015bli chcesz otrzymywa\u0107 tego typu tre\u015bci spersonalizowane pod Ciebie!<\/p>\n<ul>\n<li><a href=\"https:\/\/apple.co\/3fB8Kcf\" rel=\"nofollow noopener\">App Store<\/a><\/li>\n<li><a href=\"https:\/\/bit.ly\/3m421dx\" rel=\"nofollow noopener\">Play Store<\/a><\/li>\n<li><a href=\"http:\/\/bit.ly\/367yWYD\">Wersja PWA<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>W dniu dzisiejszym ma\u0142y &#8222;rant&#8221; na GlassFisha, nowa seria wideo od Oracle o JEPach, oraz minor Kotlina kt\u00f3ry nie jest wcale taki minorowy.<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[259],"tags":[],"class_list":["post-10118","post","type-post","status-publish","format-standard","hentry","category-jvm-pl"],"acf":{"weekly_summary":true,"estimated_reading_time":"5"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JVM Tuesday vol. 44 - 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\/jvm-tuesday-vol-45\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JVM Tuesday vol. 44 - Vived\" \/>\n<meta property=\"og:description\" content=\"W dniu dzisiejszym ma\u0142y &quot;rant&quot; na GlassFisha, nowa seria wideo od Oracle o JEPach, oraz minor Kotlina kt\u00f3ry nie jest wcale taki minorowy.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2021-06-29T11:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:10:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.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\/jvm-tuesday-vol-45\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"JVM Tuesday vol. 44\",\"datePublished\":\"2021-06-29T11:00:00+00:00\",\"dateModified\":\"2022-09-19T11:10:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\"},\"wordCount\":1064,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\",\"articleSection\":[\"JVM\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\",\"url\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\",\"name\":\"JVM Tuesday vol. 44 - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\",\"datePublished\":\"2021-06-29T11:00:00+00:00\",\"dateModified\":\"2022-09-19T11:10:51+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JVM Tuesday vol. 44\"}]},{\"@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":"JVM Tuesday vol. 44 - 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\/jvm-tuesday-vol-45\/","og_locale":"pl_PL","og_type":"article","og_title":"JVM Tuesday vol. 44 - Vived","og_description":"W dniu dzisiejszym ma\u0142y \"rant\" na GlassFisha, nowa seria wideo od Oracle o JEPach, oraz minor Kotlina kt\u00f3ry nie jest wcale taki minorowy.","og_url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/","og_site_name":"Vived","article_published_time":"2021-06-29T11:00:00+00:00","article_modified_time":"2022-09-19T11:10:51+00:00","og_image":[{"url":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png","type":"","width":"","height":""}],"author":"Artur Skowro\u0144ski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"JVM Tuesday vol. 44","datePublished":"2021-06-29T11:00:00+00:00","dateModified":"2022-09-19T11:10:51+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/"},"wordCount":1064,"commentCount":0,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png","articleSection":["JVM"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/","url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/","name":"JVM Tuesday vol. 44 - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png","datePublished":"2021-06-29T11:00:00+00:00","dateModified":"2022-09-19T11:10:51+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png"},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-45\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"JVM Tuesday vol. 44"}]},{"@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":null,"attrs":[],"innerBlocks":[],"innerHTML":"<h2 id=\"1-kotlin-1520zaskakuj%C4%85co-ciekawe-wydanie-again-%F0%9F%A5%AB\">1. <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">Kotlin 1.5.20 - zaskakuj\u0105co ciekawe wydanie (again)<\/a><\/h2>\nMinory Kotlina to jedne z najciekawszych Minor\u00f3w - zw\u0142aszcza wersje *.*.20.\n\nNie wiem, czy to jaka\u015b kwestia nomenklatury, czy jakiej\u015b przyj\u0119tej konwencji, ale Kotlin 1.4.20 by\u0142 prawdziw\u0105 petard\u0105, a tutaj pojawia si\u0119 wersja 1.5.20. Co prawda nie jest ona a\u017c tak bogata jak jej odpowiednik , ale tak naprawd\u0119 jest tam ca\u0142kiem sporo nowego i interesuj\u0105cego.\n\nDobra, to co interesuj\u0105cego przynosi wspomniana wersja? Ot\u00f3\u017c nareszcie mamy dosta\u0107 lepiej dzia\u0142aj\u0105c\u0105 integracje Kotlina z Lombokiem. Jest to dla mnie prywatnie do\u015b\u0107 istotna informacja, poniewa\u017c moja pierwsza du\u017ca w \u017cyciu migracja Java-&gt;Kotlin bardzo przed\u0142u\u017cy\u0142a si\u0119 w\u0142a\u015bnie z powodu konieczno\u015bci \u201cwychodzenia\u201d z Lomboka. Niestety, zakres adnotacji kompatybilnych z Kotlinem jest ci\u0105gle do\u015b\u0107 ograniczony - \u017ceby pokry\u0107 nasz (historyczny ju\u017c na szcz\u0119\u015bcie) case, niezb\u0119dne by\u0142oby wspieranie r\u00f3wnie\u017c Builder\u00f3w generowanych z poziomu Lomboka. C\u00f3\u017c, mo\u017ce w nast\u0119pnych edycjach.\n\nZ punktu widzenia programist\u00f3w Java, interesuj\u0105cym mo\u017ce by\u0107 te\u017c fakt natywnego wsparcia przez Kotlina projektu <a href=\"https:\/\/jspecify.dev\/\">JSpecify<\/a>, zestawu adnotacji udost\u0119pniaj\u0105cych szersze mo\u017cliwo\u015bci analizy statycznej w javowych projektach. Do tej pory rozpoznawany by\u0142 istniej\u0105cy ju\u017c zbi\u00f3r dostarczony przez samo JetBrains, wida\u0107 jednak, \u017ce tw\u00f3rcy j\u0119zyka otwieraj\u0105 si\u0119 r\u00f3wnie\u017c na alternatywy.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\" alt=\"\"><figcaption>Tw\u00f3rcy explicite pisz\u0105 w dokumentacji \u201cWe have seen the xkcd comic. Please do not send us the xkcd comic. We know about the xkcd comic.\u201d Ja jednak nie mog\u0119 si\u0119 powstrzyma\u0107<\/figcaption><\/figure>\nKotlin 1.5.20 to tak\u017ce troch\u0119 nowych mo\u017cliwo\u015bci dla Kotlin\/Native, a tak\u017ce lepsze wsparcie nowego Gradle. Dla os\u00f3b, kt\u00f3re u\u017cywaj\u0105 Kotlin\/JS (s\u0105 tu tacy eksperymentatorzy?) udost\u0119pniono r\u00f3wnie\u017c <a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">nowy przewodnik migracyjny<\/a> dla, maj\u0105cej ukaza\u0107 si\u0119 wraz z kolejn\u0105 du\u017c\u0105 wersj\u0105 j\u0119zyka, zmodernizowanej reprezentacji po\u015bredniej.\n\nBTW: Wiedzieli\u015bcie, \u017ce Kotlin 1.6 uka\u017ce si\u0119 ju\u017c w listopadzie 2021 . Nowy cykl releasowy zupe\u0142nie wypad\u0142 mi z g\u0142owy\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">JetBrains Blog Kotlin 1.5.20 Released! | The Kotlin Blog Kotlin continues to stay up to date<\/a><\/li>\n \t<li><a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">Migrating Kotlin\/JS projects to the IR compiler<\/a><\/li>\n<\/ul>\n<h2 id=\"2-dlaczego-nie-powinni%C5%9Bmy-u%C5%BCywa%C4%87-glassfisha-na-produkcji-%F0%9F%90%9F\">2. <a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">Dlaczego nie powinni\u015bmy u\u017cywa\u0107 GlassFisha na produkcji<\/a><\/h2>\nCo pewien czas informujemy Was o tym, jak rozwija si\u0119 standard Jakarta EE. Regularnie te\u017c, troch\u0119 k\u0105\u015bliwie odnosimy si\u0119 do do\u015b\u0107 powolnej adopcji standard\u00f3w. Dopiero co cieszyli\u015bmy si\u0119 te\u017c, cho\u0107 nie bez nutki ironii, \u017ce pierwsze projekty ju\u017c teraz wspieraj\u0105 Jakart\u0119 EE 9.1 - w\u015br\u00f3d nich dzisiejszy bohater, GlassFish.\n\nMo\u017ce jednak nie warto si\u0119 za bardzo spieszy\u0107.\n\nNa blogu Payary ukaza\u0142 si\u0119 do\u015b\u0107 d\u0142ugi post, dlaczego nie warto i\u015b\u0107 w rozwi\u0105zanie konkurencji i frywolnie wrzuca\u0107 je na produkcje. W wi\u0119kszo\u015bci przypadk\u00f3w przeszliby\u015bmy nad takowym do porz\u0105dku dziennego - podgryzanie konkurencji to w ko\u0144cu absolutnie nic niezwyk\u0142ego. Post zwraca jednak uwag\u0119 r\u00f3wnie\u017c na kilka aspekt\u00f3w, kt\u00f3re warto wzi\u0105\u0107 pod uwag\u0119 przy potencjalnej migracji.\n\nDlaczego GlassFish m\u00f3g\u0142 tak szybko stworzy\u0107 swoj\u0105 wersj\u0119 referencyjn\u0105? Odpowiedzi\u0105 niech b\u0119dzie tutaj spos\u00f3b powstawania tego serwera. Okazuje si\u0119, z czego nie zdawa\u0142em sobie sprawy, \u017ce GlassFish nie ma w zwyczaju aktualizowa\u0107 swoich w\u0142asnych zale\u017cno\u015bci. W celu weryfikacji tej informacji uda\u0142o mi si\u0119 przebi\u0107 przez <a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">stare w\u0105tki redditowe<\/a>, gdzie ludzie do\u015b\u0107 mocno p\u0142acz\u0105 nad tym faktem. Pr\u00f3bowa\u0142em obali\u0107 to twierdzenie, szukaj\u0105c jakiekolwiek \u201cminorowej\u201d edycji, ale niestety, jedyne co znalaz\u0142em to potwierdzenie tego, o czym pisa\u0142 internet - <a href=\"https:\/\/glassfish.org\/download\">GlassFish posiada tylko du\u017ce edycje<\/a>.\n\nNie podejrzewam, \u017ceby ktokolwiek u\u017cywa\u0142 GlassFisha na produkcji (nie spotka\u0142em si\u0119 z tym od bardzo, bardzo dawna). Jest to jednak bardzo dobre przypomnienie, \u017ce serwery aplikacyjne, mimo i\u017c implementuj\u0105 dok\u0142adnie ten sam interfejs, nie zosta\u0142y stworzone r\u00f3wnymi. GlassFish l\u0105duje w mojej g\u0142owie w szufladce \u201czabawka\u201d.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/dbkrxmc-ae056bf1-7f06-42db-809b-79e3a53c185d.gif\" alt=\"\" width=\"4080\" height=\"2295\">&nbsp;\n\n<figcaption>Moje zabawki nie s\u0105 Twoimi zabawkami<\/figcaption><\/figure>\nMamy nadziej\u0119, \u017ce ten tekst nie b\u0119dzie dzia\u0142a\u0142 jako straszak dla wszystkich tych, kt\u00f3rzy chc\u0105 by\u0107 na bie\u017c\u0105co z nowymi wersjami Jakarty EE. My naprawd\u0119 mamy nadzieje, \u017ce ten ekosystem w przysz\u0142o\u015bci nieco przyspieszy - osobi\u015bcie bardzo lubi\u0119 zar\u00f3wno Jakart\u0119, jak i MicroProfile, a powolny cykl wydawniczy fatalnie dzia\u0142a na ich PR.\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-1\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">GlassFish 6.1 Should Not Be Used In Production: Here\u2019s Why<\/a><\/li>\n \t<li><a href=\"https:\/\/glassfish.org\/download\">Eclipse GlassFish Downloads<\/a><\/li>\n \t<li><a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">Is there a reason big corporates won't use Glassfish?<\/a><\/li>\n<\/ul>\n<h2 id=\"3-nowa-seria-wideo-o-jepach-od-oracle-%F0%9F%94%AE\">3. <a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">Nowa seria wideo o JEPach od Oracle<\/a><\/h2>\nOracle bardzo zaczyna dba\u0107 o komunikacj\u0119 z programistami. Prowadz\u0105 stron\u0119 Inside Java, agreguj\u0105c\u0105 zmiany w \u015bwiecie JVMowym. Dodatkowo, ju\u017c kilkukrotnie w r\u00f3\u017cnych edycjach wspomina\u0142em o ichniejszym podca\u015bcie. Niedawno zacz\u0119li prowadzi\u0107 te\u017c seri\u0119 wideo Inside Java Newscast, kt\u00f3re mo\u017cecie traktowa\u0107 jako alternatyw\u0119 dla post\u00f3w, kt\u00f3re regularnie czytacie (aczkolwiek my si\u0119gamy nieco szerzej - seria Oracle to newsy stricte zwi\u0105zane z JVMem).\n\nhttps:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\n\nKolejn\u0105 seri\u0105 tego typu jest teraz JEP Cafe. Regularnie piszemy o JEPach, troch\u0119 nie bior\u0105c pod uwag\u0119, \u017ce ten termin mo\u017ce by\u0107 obcy dla wielu os\u00f3b pisz\u0105cych w tym j\u0119zyku (cho\u0107 podejrzewam, \u017ce chocia\u017cby przy premierach kolejnych \u201cdu\u017cych\u201d wersji Javy, niejednej osobie obi\u0142 si\u0119 o oczka). Dlatego te\u017c ciesz\u0119 si\u0119, \u017ce powsta\u0142a tego typu seria, b\u0119d\u0105ca de facto wprowadzeniem do tematu - mo\u017cna dowiedzie\u0107 si\u0119, jak ca\u0142y proces wygl\u0105da od kuchni, jak\u0105 drog\u0119 musi prze\u017cy\u0107 proposal, oraz z jakich cz\u0119\u015bci si\u0119 sk\u0142ada. Ca\u0142o\u015b\u0107 przedstawiona jest na bazie <a href=\"https:\/\/openjdk.java.net\/jeps\/395\">JEP 395 - Records<\/a>, kt\u00f3ry zosta\u0142 roz\u0142o\u017cony na czynniki pierwsze przez (nieco flegmatycznego) prowadz\u0105cego.\n\nKorzystaj\u0105c z okazji, chcieli\u015bmy si\u0119 podzieli\u0107 dwoma innymi ciekawymi rozmowami, przeprowadzonymi przez prowadz\u0105cego Inside Java Newscast, Nicolai Parlog. Ot\u00f3\u017c spotka\u0142 si\u0119 on ostatnio z architektami stoj\u0105cymi za dwoma du\u017cymi projektami <a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">Loom<\/a> i <a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">Panama<\/a>, przeprowadzaj\u0105c z nimi d\u0142ugie, oko\u0142o godzinne rozmowy. Jako \u017ce oba projekty s\u0105 relatywnie szybko zmienne, wywiady Nicolaia mo\u017cna stosowa\u0107 jako chyba naj\u015bwie\u017cszy materia\u0142 dotycz\u0105cy obu.\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-2\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">The State of Project Loom with Ron Pressler<\/a><\/li>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">The State of Project Panama with Maurizio Cimadamore<\/a><\/li>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">What is a JEP? - JEP Caf\u00e9 #1<\/a><\/li>\n<\/ul>\n\n<hr>\n\nI pami\u0119tajcie, \u017ceby spr\u00f3bowa\u0107 <a href=\"https:\/\/blog.vived.io\/software-craftsmanship-saturday\/vived.io\">Vived<\/a>, je\u015bli chcesz otrzymywa\u0107 tego typu tre\u015bci spersonalizowane pod Ciebie!\n<ul>\n \t<li><a href=\"https:\/\/apple.co\/3fB8Kcf\" rel=\"nofollow noopener\">App Store<\/a><\/li>\n \t<li><a href=\"https:\/\/bit.ly\/3m421dx\" rel=\"nofollow noopener\">Play Store<\/a><\/li>\n \t<li><a href=\"http:\/\/bit.ly\/367yWYD\">Wersja PWA<\/a><\/li>\n<\/ul>","innerContent":["<h2 id=\"1-kotlin-1520zaskakuj%C4%85co-ciekawe-wydanie-again-%F0%9F%A5%AB\">1. <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">Kotlin 1.5.20 - zaskakuj\u0105co ciekawe wydanie (again)<\/a><\/h2>\nMinory Kotlina to jedne z najciekawszych Minor\u00f3w - zw\u0142aszcza wersje *.*.20.\n\nNie wiem, czy to jaka\u015b kwestia nomenklatury, czy jakiej\u015b przyj\u0119tej konwencji, ale Kotlin 1.4.20 by\u0142 prawdziw\u0105 petard\u0105, a tutaj pojawia si\u0119 wersja 1.5.20. Co prawda nie jest ona a\u017c tak bogata jak jej odpowiednik , ale tak naprawd\u0119 jest tam ca\u0142kiem sporo nowego i interesuj\u0105cego.\n\nDobra, to co interesuj\u0105cego przynosi wspomniana wersja? Ot\u00f3\u017c nareszcie mamy dosta\u0107 lepiej dzia\u0142aj\u0105c\u0105 integracje Kotlina z Lombokiem. Jest to dla mnie prywatnie do\u015b\u0107 istotna informacja, poniewa\u017c moja pierwsza du\u017ca w \u017cyciu migracja Java-&gt;Kotlin bardzo przed\u0142u\u017cy\u0142a si\u0119 w\u0142a\u015bnie z powodu konieczno\u015bci \u201cwychodzenia\u201d z Lomboka. Niestety, zakres adnotacji kompatybilnych z Kotlinem jest ci\u0105gle do\u015b\u0107 ograniczony - \u017ceby pokry\u0107 nasz (historyczny ju\u017c na szcz\u0119\u015bcie) case, niezb\u0119dne by\u0142oby wspieranie r\u00f3wnie\u017c Builder\u00f3w generowanych z poziomu Lomboka. C\u00f3\u017c, mo\u017ce w nast\u0119pnych edycjach.\n\nZ punktu widzenia programist\u00f3w Java, interesuj\u0105cym mo\u017ce by\u0107 te\u017c fakt natywnego wsparcia przez Kotlina projektu <a href=\"https:\/\/jspecify.dev\/\">JSpecify<\/a>, zestawu adnotacji udost\u0119pniaj\u0105cych szersze mo\u017cliwo\u015bci analizy statycznej w javowych projektach. Do tej pory rozpoznawany by\u0142 istniej\u0105cy ju\u017c zbi\u00f3r dostarczony przez samo JetBrains, wida\u0107 jednak, \u017ce tw\u00f3rcy j\u0119zyka otwieraj\u0105 si\u0119 r\u00f3wnie\u017c na alternatywy.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/img_610d091bae6cf.png\" alt=\"\"><figcaption>Tw\u00f3rcy explicite pisz\u0105 w dokumentacji \u201cWe have seen the xkcd comic. Please do not send us the xkcd comic. We know about the xkcd comic.\u201d Ja jednak nie mog\u0119 si\u0119 powstrzyma\u0107<\/figcaption><\/figure>\nKotlin 1.5.20 to tak\u017ce troch\u0119 nowych mo\u017cliwo\u015bci dla Kotlin\/Native, a tak\u017ce lepsze wsparcie nowego Gradle. Dla os\u00f3b, kt\u00f3re u\u017cywaj\u0105 Kotlin\/JS (s\u0105 tu tacy eksperymentatorzy?) udost\u0119pniono r\u00f3wnie\u017c <a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">nowy przewodnik migracyjny<\/a> dla, maj\u0105cej ukaza\u0107 si\u0119 wraz z kolejn\u0105 du\u017c\u0105 wersj\u0105 j\u0119zyka, zmodernizowanej reprezentacji po\u015bredniej.\n\nBTW: Wiedzieli\u015bcie, \u017ce Kotlin 1.6 uka\u017ce si\u0119 ju\u017c w listopadzie 2021 . Nowy cykl releasowy zupe\u0142nie wypad\u0142 mi z g\u0142owy\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/06\/kotlin-1-5-20-released\/\">JetBrains Blog Kotlin 1.5.20 Released! | The Kotlin Blog Kotlin continues to stay up to date<\/a><\/li>\n \t<li><a href=\"https:\/\/kotlinlang.org\/docs\/js-ir-migration.html\">Migrating Kotlin\/JS projects to the IR compiler<\/a><\/li>\n<\/ul>\n<h2 id=\"2-dlaczego-nie-powinni%C5%9Bmy-u%C5%BCywa%C4%87-glassfisha-na-produkcji-%F0%9F%90%9F\">2. <a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">Dlaczego nie powinni\u015bmy u\u017cywa\u0107 GlassFisha na produkcji<\/a><\/h2>\nCo pewien czas informujemy Was o tym, jak rozwija si\u0119 standard Jakarta EE. Regularnie te\u017c, troch\u0119 k\u0105\u015bliwie odnosimy si\u0119 do do\u015b\u0107 powolnej adopcji standard\u00f3w. Dopiero co cieszyli\u015bmy si\u0119 te\u017c, cho\u0107 nie bez nutki ironii, \u017ce pierwsze projekty ju\u017c teraz wspieraj\u0105 Jakart\u0119 EE 9.1 - w\u015br\u00f3d nich dzisiejszy bohater, GlassFish.\n\nMo\u017ce jednak nie warto si\u0119 za bardzo spieszy\u0107.\n\nNa blogu Payary ukaza\u0142 si\u0119 do\u015b\u0107 d\u0142ugi post, dlaczego nie warto i\u015b\u0107 w rozwi\u0105zanie konkurencji i frywolnie wrzuca\u0107 je na produkcje. W wi\u0119kszo\u015bci przypadk\u00f3w przeszliby\u015bmy nad takowym do porz\u0105dku dziennego - podgryzanie konkurencji to w ko\u0144cu absolutnie nic niezwyk\u0142ego. Post zwraca jednak uwag\u0119 r\u00f3wnie\u017c na kilka aspekt\u00f3w, kt\u00f3re warto wzi\u0105\u0107 pod uwag\u0119 przy potencjalnej migracji.\n\nDlaczego GlassFish m\u00f3g\u0142 tak szybko stworzy\u0107 swoj\u0105 wersj\u0119 referencyjn\u0105? Odpowiedzi\u0105 niech b\u0119dzie tutaj spos\u00f3b powstawania tego serwera. Okazuje si\u0119, z czego nie zdawa\u0142em sobie sprawy, \u017ce GlassFish nie ma w zwyczaju aktualizowa\u0107 swoich w\u0142asnych zale\u017cno\u015bci. W celu weryfikacji tej informacji uda\u0142o mi si\u0119 przebi\u0107 przez <a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">stare w\u0105tki redditowe<\/a>, gdzie ludzie do\u015b\u0107 mocno p\u0142acz\u0105 nad tym faktem. Pr\u00f3bowa\u0142em obali\u0107 to twierdzenie, szukaj\u0105c jakiekolwiek \u201cminorowej\u201d edycji, ale niestety, jedyne co znalaz\u0142em to potwierdzenie tego, o czym pisa\u0142 internet - <a href=\"https:\/\/glassfish.org\/download\">GlassFish posiada tylko du\u017ce edycje<\/a>.\n\nNie podejrzewam, \u017ceby ktokolwiek u\u017cywa\u0142 GlassFisha na produkcji (nie spotka\u0142em si\u0119 z tym od bardzo, bardzo dawna). Jest to jednak bardzo dobre przypomnienie, \u017ce serwery aplikacyjne, mimo i\u017c implementuj\u0105 dok\u0142adnie ten sam interfejs, nie zosta\u0142y stworzone r\u00f3wnymi. GlassFish l\u0105duje w mojej g\u0142owie w szufladce \u201czabawka\u201d.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/dbkrxmc-ae056bf1-7f06-42db-809b-79e3a53c185d.gif\" alt=\"\" width=\"4080\" height=\"2295\">&nbsp;\n\n<figcaption>Moje zabawki nie s\u0105 Twoimi zabawkami<\/figcaption><\/figure>\nMamy nadziej\u0119, \u017ce ten tekst nie b\u0119dzie dzia\u0142a\u0142 jako straszak dla wszystkich tych, kt\u00f3rzy chc\u0105 by\u0107 na bie\u017c\u0105co z nowymi wersjami Jakarty EE. My naprawd\u0119 mamy nadzieje, \u017ce ten ekosystem w przysz\u0142o\u015bci nieco przyspieszy - osobi\u015bcie bardzo lubi\u0119 zar\u00f3wno Jakart\u0119, jak i MicroProfile, a powolny cykl wydawniczy fatalnie dzia\u0142a na ich PR.\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-1\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/dzone.com\/articles\/glassfish-61-should-not-be-used-in-production-here\">GlassFish 6.1 Should Not Be Used In Production: Here\u2019s Why<\/a><\/li>\n \t<li><a href=\"https:\/\/glassfish.org\/download\">Eclipse GlassFish Downloads<\/a><\/li>\n \t<li><a href=\"https:\/\/www.reddit.com\/r\/sysadmin\/comments\/2vqye1\/is_there_a_reason_big_corporates_wont_use\/\">Is there a reason big corporates won't use Glassfish?<\/a><\/li>\n<\/ul>\n<h2 id=\"3-nowa-seria-wideo-o-jepach-od-oracle-%F0%9F%94%AE\">3. <a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">Nowa seria wideo o JEPach od Oracle<\/a><\/h2>\nOracle bardzo zaczyna dba\u0107 o komunikacj\u0119 z programistami. Prowadz\u0105 stron\u0119 Inside Java, agreguj\u0105c\u0105 zmiany w \u015bwiecie JVMowym. Dodatkowo, ju\u017c kilkukrotnie w r\u00f3\u017cnych edycjach wspomina\u0142em o ichniejszym podca\u015bcie. Niedawno zacz\u0119li prowadzi\u0107 te\u017c seri\u0119 wideo Inside Java Newscast, kt\u00f3re mo\u017cecie traktowa\u0107 jako alternatyw\u0119 dla post\u00f3w, kt\u00f3re regularnie czytacie (aczkolwiek my si\u0119gamy nieco szerzej - seria Oracle to newsy stricte zwi\u0105zane z JVMem).\n\nhttps:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\n\nKolejn\u0105 seri\u0105 tego typu jest teraz JEP Cafe. Regularnie piszemy o JEPach, troch\u0119 nie bior\u0105c pod uwag\u0119, \u017ce ten termin mo\u017ce by\u0107 obcy dla wielu os\u00f3b pisz\u0105cych w tym j\u0119zyku (cho\u0107 podejrzewam, \u017ce chocia\u017cby przy premierach kolejnych \u201cdu\u017cych\u201d wersji Javy, niejednej osobie obi\u0142 si\u0119 o oczka). Dlatego te\u017c ciesz\u0119 si\u0119, \u017ce powsta\u0142a tego typu seria, b\u0119d\u0105ca de facto wprowadzeniem do tematu - mo\u017cna dowiedzie\u0107 si\u0119, jak ca\u0142y proces wygl\u0105da od kuchni, jak\u0105 drog\u0119 musi prze\u017cy\u0107 proposal, oraz z jakich cz\u0119\u015bci si\u0119 sk\u0142ada. Ca\u0142o\u015b\u0107 przedstawiona jest na bazie <a href=\"https:\/\/openjdk.java.net\/jeps\/395\">JEP 395 - Records<\/a>, kt\u00f3ry zosta\u0142 roz\u0142o\u017cony na czynniki pierwsze przez (nieco flegmatycznego) prowadz\u0105cego.\n\nKorzystaj\u0105c z okazji, chcieli\u015bmy si\u0119 podzieli\u0107 dwoma innymi ciekawymi rozmowami, przeprowadzonymi przez prowadz\u0105cego Inside Java Newscast, Nicolai Parlog. Ot\u00f3\u017c spotka\u0142 si\u0119 on ostatnio z architektami stoj\u0105cymi za dwoma du\u017cymi projektami <a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">Loom<\/a> i <a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">Panama<\/a>, przeprowadzaj\u0105c z nimi d\u0142ugie, oko\u0142o godzinne rozmowy. Jako \u017ce oba projekty s\u0105 relatywnie szybko zmienne, wywiady Nicolaia mo\u017cna stosowa\u0107 jako chyba naj\u015bwie\u017cszy materia\u0142 dotycz\u0105cy obu.\n<h3 id=\"%C5%BAr%C3%B3d%C5%82o-2\">\u0179r\u00f3d\u0142o<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=KG24inClY2M\">The State of Project Loom with Ron Pressler<\/a><\/li>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=B8k9QGvPxC0\">The State of Project Panama with Maurizio Cimadamore<\/a><\/li>\n \t<li><a href=\"https:\/\/www.youtube.com\/watch?v=l1VrmvyIEpM\">What is a JEP? - JEP Caf\u00e9 #1<\/a><\/li>\n<\/ul>\n\n<hr>\n\nI pami\u0119tajcie, \u017ceby spr\u00f3bowa\u0107 <a href=\"https:\/\/blog.vived.io\/software-craftsmanship-saturday\/vived.io\">Vived<\/a>, je\u015bli chcesz otrzymywa\u0107 tego typu tre\u015bci spersonalizowane pod Ciebie!\n<ul>\n \t<li><a href=\"https:\/\/apple.co\/3fB8Kcf\" rel=\"nofollow noopener\">App Store<\/a><\/li>\n \t<li><a href=\"https:\/\/bit.ly\/3m421dx\" rel=\"nofollow noopener\">Play Store<\/a><\/li>\n \t<li><a href=\"http:\/\/bit.ly\/367yWYD\">Wersja PWA<\/a><\/li>\n<\/ul>"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10118","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=10118"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10118\/revisions"}],"predecessor-version":[{"id":10567,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10118\/revisions\/10567"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=10118"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=10118"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=10118"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}