{"id":10154,"date":"2021-04-13T09:00:00","date_gmt":"2021-04-13T07:00:00","guid":{"rendered":"https:\/\/vived.io\/jvm-tuesday-vol-33\/"},"modified":"2022-09-19T13:10:54","modified_gmt":"2022-09-19T11:10:54","slug":"jvm-tuesday-vol-33","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/","title":{"rendered":"JVM Tuesday vol. 33"},"content":{"rendered":"<h2 id=\"1-wyszedl-nowy-intellij-idea-2021-1\" data-num=1>1. <a href=\"https:\/\/www.jetbrains.com\/idea\/whatsnew\/#20211\">Wyszed\u0142 nowy Intellij Idea 2021.1<\/a> &#8230;<\/h2>\n<p>\u2026 a wraz z nim r\u00f3wnie\u017c pluginy do Kotlina oraz Scali.<\/p>\n<figure class=\"kg-card kg-image-card\"><img loading=\"lazy\" decoding=\"async\" class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\" sizes=\"auto, (min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/8_image.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png 1286w\" alt=\"\" width=\"1286\" height=\"539\" \/><\/figure>\n<p>Co takiego dostajemy? Z pewno\u015bci\u0105 g\u0142\u00f3wnym \u201cdaniem\u201d nowej edycji jest zapewnienie, jak najlepszych narz\u0119dzi do zdalnej kolaboracji. Jako tak\u0105 nale\u017cy na pewno traktowa\u0107 integracj\u0119 z <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> &#8211; stworzonego przez JetBrains amalgamatu GitHuba, Jiry oraz Slacka, kt\u00f3ry ma szans\u0119 sporo namiesza\u0107 (sam mam ochot\u0119, na kt\u00f3rym\u015b etapie wypr\u00f3bowa\u0107 go w projekcie, aczkolwiek ci\u0105gle jeszcze kminie, jak zrobi\u0107 to w spos\u00f3b, \u017ceby ca\u0142o\u015b\u0107 nie okaza\u0142a si\u0119 by\u0107 operacj\u0105 typu stop-the-world, kt\u00f3ra zablokuje rozw\u00f3j app.vived.io na dwa tygodnie). Drugim uk\u0142onem w stron\u0119 rozproszonych zespo\u0142\u00f3w jest <a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">Code With Me<\/a>, kt\u00f3re pozwala pracowa\u0107 nad jednym kodem w spos\u00f3b zbli\u017cony do edycji dokument\u00f3w w Google Docs, r\u00f3wnocze\u015bnie zapewniaj\u0105c m.in. transmisje audio i wideo.<\/p>\n<p>Oczywi\u015bcie, Intellij jak to zwykle przynosi nam mnogo\u015b\u0107 innych zmian. Nowa wersja przystosowana jest do pracy z Jav\u0105 16, a podpowiedzi edytora b\u0119d\u0119 bra\u0107 pod uwag\u0119 przy zmianach, kt\u00f3re pojawi\u0142y si\u0119 w nowej wersji j\u0119zyka. Zupe\u0142nie nowego \u201cwizarda\u201d otrzyma\u0142y te\u017c popularne javowe frameworki &#8211; Spring, Micronaut, Quarkus, oraz MicroProfile. Je\u017celi u\u017cywacie Kotlina, <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">nowa edycja plugina IDE<\/a> ma zapewni\u0107 znacznie szybsze podpowiadanie sk\u0142adni (aczkolwiek tw\u00f3rcy szczerze podkre\u015blaj\u0105, \u017ce ci\u0105gle nie jest tak szybkie jak w Javie. <a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">Plugin do Scali<\/a> przynosi za\u015b wsparcie dla wersji RC2 Scali 3 (o kt\u00f3rej przeczytacie w nast\u0119pnym akapicie), oraz wsparcie do podpowiadania sk\u0142adni oparte na sztucznej inteligencji, do tej pory dost\u0119pnego wy\u0142\u0105cznie w Javie. Mo\u017ce kiedy\u015b to narz\u0119dzie wyewoluuje do poziomu gdzie w\u0142a\u015bciwie b\u0119dzie mo\u017cna zast\u0105pi\u0107 nim programist\u00f3w.<\/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\/3_image-8.png\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-8.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-8.png 602w\" alt=\"\" width=\"602\" height=\"568\" \/><figcaption>A mo\u017ce i nie.<\/figcaption><\/figure>\n<p>Poza rzeczami zwi\u0105zanymi z samymi j\u0119zykami JVMowymi, warto te\u017c zaznaczy\u0107 lepsze wsparcie dla Pull Request\u00f3w oraz Kubernetesa.<\/p>\n<p>PS: Je\u015bli Waszym systemem operacyjnym jest Windows, z pewno\u015bci\u0105 ucieszy Was fakt, \u017ce Intellij w ko\u0144cu nauczy\u0142 si\u0119 dogadywa\u0107 z Windows Subsystem for Linux (WSL) w wersji drugiej.<\/p>\n<p>PS2: Czy te\u017c lubicie spos\u00f3b numeracji kolejnych wersji u\u017cywany przez Intellij ?<\/p>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.jetbrains.com\/space\/\">JetBrains Space<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">JetBrains Code With Me<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">What\u2019s New in IntelliJ IDEA 2021.1<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">Kotlin Plugin 2021.1 Released<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">IntelliJ Scala Plugin 2021.1 Is Out!<\/a><\/li>\n<\/ul>\n<h2 id=\"2-ostatnie-przymiarki-do-scali-3-drugi-release-candidate-oraz-nowe-sbt\" data-num=2>2. Ostatnie przymiarki do Scali 3 &#8211; drugi Release Candidate oraz nowe SBT<\/h2>\n<p>Nasz\u0105 kolejn\u0105 pozycj\u0105 b\u0119dzie kr\u00f3tki przegl\u0105d tego, co dzieje si\u0119 w Scali 3, bo zdecydowanie jest o czym informowa\u0107 &#8211; jej premiera zbli\u017ca si\u0119 wielkimi krokami.<\/p>\n<p>Na pocz\u0105tku kwietnia najpopularniejszy scalowy \u201cbuild tool\u201d &#8211; <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT &#8211; wypu\u015bci\u0142o swoj\u0105 wersj\u0119 1.5.<\/a> Najbardziej kluczow\u0105 zmian\u0105, jak\u0105 nowa edycja przynosi, to wsparcie dla Scali 3 w\u0142a\u015bnie, a konkretnie jego edycji RC2. Jest to kolejny ma\u0142y kroczek dla spo\u0142eczno\u015bci na drodze do adopcji nowej wersji j\u0119zyka. Warto rzuci\u0107 okiem na <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">release notesy<\/a>, poniewa\u017c zawieraj\u0105 par\u0119 wskaz\u00f3wek dla tw\u00f3rc\u00f3w aplikacji i bibliotek dotycz\u0105cych wersjonowania artefakt\u00f3w.<\/p>\n<p>Co do samego wydania Scali 3, to je\u017celi nie pojawi\u0105 si\u0119 \u017cadne nowe krytyczne b\u0142\u0119dy, wspomniana przed chwil\u0105 wersja <a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Release Candidate 2<\/a>, b\u0119dzie ostatni\u0105 przed planowan\u0105 na 23 kwietnia premier\u0105 j\u0119zyka. Co ciekawe, nawet po wydaniu mo\u017cna spodziewa\u0107 si\u0119, \u017ce szybko doczekamy si\u0119 kolejnych edycji &#8211; jak s\u0142usznie punktuje m.in. <a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">ten w\u0105tek redditowy<\/a>, Scala 3.0 uka\u017ce si\u0119 w nieco ubogiej (i zabugowanej) wersji. W zwi\u0105zku z tym pewnie zaraz po wypiciu lampki szampana w celu uczczenia releasu, pracuj\u0105cy nad j\u0119zykiem programi\u015bci szybko wr\u00f3c\u0105 do pracy nad stabilno\u015bci\u0105 i brakuj\u0105cymi featurami.<\/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\/2_image-2.png\" sizes=\"auto, (min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-2.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/2_image-2.png 900w\" alt=\"\" width=\"900\" height=\"280\" \/><figcaption>Ale jak to si\u0119 m\u00f3wi, \u201cbetter done than perfect\u201d.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-1\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n<li><a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT 1.5<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Scala Release Candidate 2.0<\/a><\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">Scala RC2.0 Reddit Thread<\/a><\/li>\n<\/ul>\n<h2 id=\"3-google-wygrywa-w-sadzie-z-oraclem-w-procesie-o-uzycie-api-javy-na-androidzie\" data-num=3>3. <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google wygrywa w s\u0105dzie z Oraclem w procesie o u\u017cycie API Javy na Androidzie<\/a> \u200d\u2696\ufe0f<\/h2>\n<p>Sko\u0144czym na newsie, kt\u00f3ry obiecali\u015bmy ju\u017c w wydaniu sobotnim, ale ze wzgl\u0119du na to \u017ce zahacza on tak mocno o Jav\u0119, nie mogli\u015bmy odpu\u015bci\u0107 sobie \u201cprzerzucenia\u201d go do naszego wtorku.<\/p>\n<p>Po dziesi\u0119ciu latach, Google wygra\u0142o z Oraclem proces o u\u017cycie API Javy na popularnym Androidzie. Dla tych kt\u00f3rzy nie wiedz\u0105 &#8211; \u201czielony robocik\u201d nie uruchamia aplikacji w ramach maszyny wirtualnej Javy, ale jego API dla programist\u00f3w jest kopi\u0105 tego javowego, za co Oracle \u017c\u0105da\u0142o od Google wysokiego odszkodowania z tytu\u0142u \u0142amania praw autorskich. Ten proces jest troch\u0119 cz\u0119\u015bci\u0105 mojego \u017cycia &#8211; \u00a0ci\u0105gnie si\u0119 w zasadzie od pocz\u0105tku mojej bran\u017cowej &#8222;kariery&#8221;, kiedy jeszcze by\u0142em programist\u0105 mobilnym. St\u0105d te\u017c mimo i\u017c od lat ju\u017c na Androida nie pisz\u0119, wie\u015b\u0107 o jego zako\u0144czeniu wywo\u0142a\u0142a we mnie pewn\u0105 hmmm.. nostalgi\u0119.<\/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\/6_image-6.png\" sizes=\"auto, (min-width: 720px) 720px\" srcset=\"https:\/\/blog.vived.io\/content\/images\/size\/w600\/\n2021\/04\/image-6.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image-6.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-6.png 1198w\" alt=\"\" width=\"1198\" height=\"384\" \/><figcaption>A bior\u0105c pod uwag\u0119 struktur\u0119 wewn\u0119trzn\u0105 obu organizacji wynik m\u00f3g\u0142 by\u0107 r\u00f3\u017cny&#8230;<\/figcaption><\/figure>\n<p>Wyrok jest zreszt\u0105 wa\u017cny dla ca\u0142ej bran\u017cy, gdy\u017c osobom chc\u0105cym stworzy\u0107 alternatywne implementacje danych API, daje do r\u0105k do\u015b\u0107 dobr\u0105 amunicje. Nale\u017cy pami\u0119ta\u0107 jednak, \u017ce wyrok nie jest \u201ckonkluzywny\u201d co do faktu, \u017ce API jako takiego nie mo\u017cna chroni\u0107 prawem autorskim &#8211; <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">s\u0105d orzek\u0142 \u017ce kompatybilne API wchodzi w definicje tak zwanego \u201cdozwolonego u\u017cycia\u201d<\/a>. Jednocze\u015bnie ze wzgl\u0119du na dzia\u0142aj\u0105ce w USA prawo kazusu, prawdopodobnie minie troch\u0119 zanim ktokolwiek spr\u00f3buje wytoczy\u0107 podobn\u0105 spraw\u0119.<\/p>\n<p>Procesowi temu \u201czawdzi\u0119czamy\u201d mas\u0119 rzeczy, kt\u00f3re wydarzy\u0142y si\u0119 w JVMowym ekosystemie w przeci\u0105gu ostatniej dekady. To w\u0142a\u015bnie pozew Oracle sprawi\u0142, \u017ce rozw\u00f3j Javy na Androidzie zatrzyma\u0142 si\u0119 na d\u0142ugie lata na \u201cszcz\u0105tkach\u201d edycji si\u00f3dmej, co otworzy\u0142o drog\u0119 do rozwoju chocia\u017cby Kotlinowi, kt\u00f3ry szybko \u201codp\u0119pi\u0142\u201d si\u0119 od pierwotnej platformy i obecnie sta\u0142 si\u0119 o wiele bardziej uniwersalnym tworem. Przez d\u0142ugie lata m\u00f3wi\u0142o si\u0119 r\u00f3wnie\u017c o tym, \u017ce Google trzyma Darta w odwodzie na wypadek, je\u015bli s\u0105d uzna\u0142by, \u017ce racja stoi po stronie Larry\u2019ego Ellisona.<\/p>\n<p>Zaraz po og\u0142oszeniu wyniku, Google postanowi\u0142o \u201codgry\u017a\u0107 si\u0119\u201d Oraclowi i og\u0142osi\u0142o, \u017ce <a href=\"https:\/\/www.zdnet.com\/article\/google-migrates-from-oracle-financial-software-to-sap\/\">porzuca rozwijane przez niego oprogramowanie finansowe i przechodzi na SAPa<\/a>. Mi\u0142o widzie\u0107, \u017ce du\u017ce korporacje te\u017c s\u0105 ludzkie i potrafi\u0105 przekomarza\u0107 si\u0119 jak dzieci<\/p>\n<p>Na koniec ciekawostka historyczna: nie wiem, czy wszyscy wiedz\u0105, ale kiedy\u015b ju\u017c mia\u0142 <a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">miejsce podobny proces<\/a>. Ot\u00f3\u017c pod koniec lat 90. Microsoft chcia\u0142 stworzy\u0107 w\u0142asn\u0105 wersj\u0119 JDK, podpisa\u0142 nawet odpowiednie umowy z Sunem. Jednak ze wzgl\u0119du na to, \u017ce firma z Redmond chcia\u0142 w Javie majstrowa\u0107, Sun (boj\u0105c si\u0119 segmentyzacji rynku) postanowi\u0142 wyst\u0105pi\u0107 do s\u0105du i wygra\u0142 ten proces w roku 2002. To zmusi\u0142o Microsoft do stworzenia j\u0119zyka C#, kt\u00f3ry zw\u0142aszcza w swoich pocz\u0105tkowych wersjach, by\u0142 bardzo zbli\u017cony do Javy. Tak wi\u0119c jak potyczki Google z Oraclem by\u0142y motorem do powstania Kotlina, tak i z tych na pocz\u0105tku tysi\u0105clecia wysz\u0142o ostatecznie co\u015b produktywnego.<\/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\/3_image-11.png\" sizes=\"auto, (min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-11.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/5_image-11.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-11.png 1600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-11.png 2109w\" alt=\"\" width=\"2000\" height=\"437\" \/><figcaption>Aczkolwiek my swoje wiemy.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-2\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google beats Oracle in biggest programming copyright Supreme Court case ever<\/a><\/li>\n<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google migrates from Oracle financial software to SAP<\/a><\/li>\n<li><a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">Sun, Microsoft settle Java suit (2002)<\/a><\/li>\n<\/ul>\n<hr \/>\n<p>A z tej ciekawostki ju\u017c tylko kroczek do obiecanego bonusika tej edycji&#8230;<\/p>\n<h2 id=\"bonus-microsoft-wypuszcza-swoja-wlasna-wersje-openjdk\" data-num=4><a href=\"https:\/\/www.zdnet.com\/article\/microsoft-rolls-out-its-openjdk-preview-release\/\">Bonus: Microsoft wypuszcza swoj\u0105 w\u0142asn\u0105 wersj\u0119 OpenJDK<\/a><\/h2>\n<p>Zdziwionym chc\u0119 przypomnie\u0107, \u017ce ostatnimi czasy firma z Redmond zosta\u0142 cz\u0142onkiem <a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">grupy roboczej Adoptium (dawne AdoptOpenJDK)<\/a>.<\/p>\n<p>Ale Microsoft ma d\u0142u\u017csz\u0105 histori\u0119 wspierania JDK, swego czasu<a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\"> zaanga\u017cowa\u0142 si\u0119 w jej wersji na procesory ARM<\/a>. Po prostu w czasach gdy to chmura liczy si\u0119 jako g\u0142\u00f3wne \u017ar\u00f3d\u0142o przychod\u00f3w, je\u017celi chce si\u0119 wsp\u00f3\u0142pracowa\u0107 z du\u017cymi partnerami nie mo\u017cna sobie od tak odpu\u015bci\u0107 Javy.<\/p>\n<p>Ciekawe czy Microsoft zamierza wprowadzi\u0107 do \u201cswojej\u201d Javy jakie\u015b dodatki, jak regularnie robi to np. Alibaba?<\/p>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-3\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/java\/announcing-preview-of-microsoft-build-of-openjdk\/\" rel=\"noreferrer noopener\">Announcing Preview of Microsoft Build of OpenJDK | Java at Microsoft<\/a><\/li>\n<li><a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">Eclipse Foundation Launches the Adoptium Working Group for Multi-Vendor Delivery of Java Runtimes for Enterprises<\/a><\/li>\n<li><a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\">Microsoft to Contribute to Java on Windows and Mac ARM<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>W dzisiejszym wydaniu prym wiedzie nowa wersja najpopularniejszego IDE do Javy, a tak\u017ce informacje na temat wyniku pewnego g\u0142o\u015bnego procesu, kt\u00f3ry przed laty zapewni\u0142 \u017cycie&#8230; Kotlinowi. Opr\u00f3cz tego ostatnie szlify przed wydaniem Scali 3, a tak\u017ce ma\u0142y, do\u015b\u0107 zaskakuj\u0105cy bonusik.<\/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-10154","post","type-post","status-publish","format-standard","hentry","category-jvm-pl"],"acf":{"weekly_summary":true,"estimated_reading_time":"6"},"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. 33 - 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-33\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JVM Tuesday vol. 33 - Vived\" \/>\n<meta property=\"og:description\" content=\"W dzisiejszym wydaniu prym wiedzie nowa wersja najpopularniejszego IDE do Javy, a tak\u017ce informacje na temat wyniku pewnego g\u0142o\u015bnego procesu, kt\u00f3ry przed laty zapewni\u0142 \u017cycie... Kotlinowi. Opr\u00f3cz tego ostatnie szlify przed wydaniem Scali 3, a tak\u017ce ma\u0142y, do\u015b\u0107 zaskakuj\u0105cy bonusik.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2021-04-13T07:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:10:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_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\/jvm-tuesday-vol-33\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"JVM Tuesday vol. 33\",\"datePublished\":\"2021-04-13T07:00:00+00:00\",\"dateModified\":\"2022-09-19T11:10:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\"},\"wordCount\":1336,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\",\"articleSection\":[\"JVM\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\",\"url\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\",\"name\":\"JVM Tuesday vol. 33 - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\",\"datePublished\":\"2021-04-13T07:00:00+00:00\",\"dateModified\":\"2022-09-19T11:10:54+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JVM Tuesday vol. 33\"}]},{\"@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. 33 - 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-33\/","og_locale":"pl_PL","og_type":"article","og_title":"JVM Tuesday vol. 33 - Vived","og_description":"W dzisiejszym wydaniu prym wiedzie nowa wersja najpopularniejszego IDE do Javy, a tak\u017ce informacje na temat wyniku pewnego g\u0142o\u015bnego procesu, kt\u00f3ry przed laty zapewni\u0142 \u017cycie... Kotlinowi. Opr\u00f3cz tego ostatnie szlify przed wydaniem Scali 3, a tak\u017ce ma\u0142y, do\u015b\u0107 zaskakuj\u0105cy bonusik.","og_url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/","og_site_name":"Vived","article_published_time":"2021-04-13T07:00:00+00:00","article_modified_time":"2022-09-19T11:10:54+00:00","og_image":[{"url":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.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-33\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"JVM Tuesday vol. 33","datePublished":"2021-04-13T07:00:00+00:00","dateModified":"2022-09-19T11:10:54+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/"},"wordCount":1336,"commentCount":0,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png","articleSection":["JVM"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/","url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/","name":"JVM Tuesday vol. 33 - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png","datePublished":"2021-04-13T07:00:00+00:00","dateModified":"2022-09-19T11:10:54+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png"},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-33\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"JVM Tuesday vol. 33"}]},{"@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-wyszed%C5%82-nowy-intellij-idea-20211-%F0%9F%9A%80\">1. <a href=\"https:\/\/www.jetbrains.com\/idea\/whatsnew\/#20211\">Wyszed\u0142 nowy Intellij Idea 2021.1<\/a> ...<\/h2>\n\u2026 a wraz z nim r\u00f3wnie\u017c pluginy do Kotlina oraz Scali.\n<figure class=\"kg-card kg-image-card\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/8_image.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png 1286w\" alt=\"\" width=\"1286\" height=\"539\" \/><\/figure>\nCo takiego dostajemy? Z pewno\u015bci\u0105 g\u0142\u00f3wnym \u201cdaniem\u201d nowej edycji jest zapewnienie, jak najlepszych narz\u0119dzi do zdalnej kolaboracji. Jako tak\u0105 nale\u017cy na pewno traktowa\u0107 integracj\u0119 z <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> - stworzonego przez JetBrains amalgamatu GitHuba, Jiry oraz Slacka, kt\u00f3ry ma szans\u0119 sporo namiesza\u0107 (sam mam ochot\u0119, na kt\u00f3rym\u015b etapie wypr\u00f3bowa\u0107 go w projekcie, aczkolwiek ci\u0105gle jeszcze kminie, jak zrobi\u0107 to w spos\u00f3b, \u017ceby ca\u0142o\u015b\u0107 nie okaza\u0142a si\u0119 by\u0107 operacj\u0105 typu stop-the-world, kt\u00f3ra zablokuje rozw\u00f3j app.vived.io na dwa tygodnie). Drugim uk\u0142onem w stron\u0119 rozproszonych zespo\u0142\u00f3w jest <a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">Code With Me<\/a>, kt\u00f3re pozwala pracowa\u0107 nad jednym kodem w spos\u00f3b zbli\u017cony do edycji dokument\u00f3w w Google Docs, r\u00f3wnocze\u015bnie zapewniaj\u0105c m.in. transmisje audio i wideo.\n\nOczywi\u015bcie, Intellij jak to zwykle przynosi nam mnogo\u015b\u0107 innych zmian. Nowa wersja przystosowana jest do pracy z Jav\u0105 16, a podpowiedzi edytora b\u0119d\u0119 bra\u0107 pod uwag\u0119 przy zmianach, kt\u00f3re pojawi\u0142y si\u0119 w nowej wersji j\u0119zyka. Zupe\u0142nie nowego \u201cwizarda\u201d otrzyma\u0142y te\u017c popularne javowe frameworki - Spring, Micronaut, Quarkus, oraz MicroProfile. Je\u017celi u\u017cywacie Kotlina, <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">nowa edycja plugina IDE<\/a> ma zapewni\u0107 znacznie szybsze podpowiadanie sk\u0142adni (aczkolwiek tw\u00f3rcy szczerze podkre\u015blaj\u0105, \u017ce ci\u0105gle nie jest tak szybkie jak w Javie. <a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">Plugin do Scali<\/a> przynosi za\u015b wsparcie dla wersji RC2 Scali 3 (o kt\u00f3rej przeczytacie w nast\u0119pnym akapicie), oraz wsparcie do podpowiadania sk\u0142adni oparte na sztucznej inteligencji, do tej pory dost\u0119pnego wy\u0142\u0105cznie w Javie. Mo\u017ce kiedy\u015b to narz\u0119dzie wyewoluuje do poziomu gdzie w\u0142a\u015bciwie b\u0119dzie mo\u017cna zast\u0105pi\u0107 nim programist\u00f3w.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-8.png\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-8.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-8.png 602w\" alt=\"\" width=\"602\" height=\"568\" \/>\n<figcaption>A mo\u017ce i nie.<\/figcaption><\/figure>\nPoza rzeczami zwi\u0105zanymi z samymi j\u0119zykami JVMowymi, warto te\u017c zaznaczy\u0107 lepsze wsparcie dla Pull Request\u00f3w oraz Kubernetesa.\n\nPS: Je\u015bli Waszym systemem operacyjnym jest Windows, z pewno\u015bci\u0105 ucieszy Was fakt, \u017ce Intellij w ko\u0144cu nauczy\u0142 si\u0119 dogadywa\u0107 z Windows Subsystem for Linux (WSL) w wersji drugiej.\n\nPS2: Czy te\u017c lubicie spos\u00f3b numeracji kolejnych wersji u\u017cywany przez Intellij ?\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.jetbrains.com\/space\/\">JetBrains Space<\/a><\/li>\n \t<li><a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">JetBrains Code With Me<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">What\u2019s New in IntelliJ IDEA 2021.1<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">Kotlin Plugin 2021.1 Released<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">IntelliJ Scala Plugin 2021.1 Is Out!<\/a><\/li>\n<\/ul>\n<h2 id=\"2-ostatnie-przymiarki-do-scali-3drugi-release-candidate-oraz-nowe-sbt-%F0%9F%91%94\">2. Ostatnie przymiarki do Scali 3 - drugi Release Candidate oraz nowe SBT<\/h2>\nNasz\u0105 kolejn\u0105 pozycj\u0105 b\u0119dzie kr\u00f3tki przegl\u0105d tego, co dzieje si\u0119 w Scali 3, bo zdecydowanie jest o czym informowa\u0107 - jej premiera zbli\u017ca si\u0119 wielkimi krokami.\n\nNa pocz\u0105tku kwietnia najpopularniejszy scalowy \u201cbuild tool\u201d - <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT - wypu\u015bci\u0142o swoj\u0105 wersj\u0119 1.5.<\/a> Najbardziej kluczow\u0105 zmian\u0105, jak\u0105 nowa edycja przynosi, to wsparcie dla Scali 3 w\u0142a\u015bnie, a konkretnie jego edycji RC2. Jest to kolejny ma\u0142y kroczek dla spo\u0142eczno\u015bci na drodze do adopcji nowej wersji j\u0119zyka. Warto rzuci\u0107 okiem na <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">release notesy<\/a>, poniewa\u017c zawieraj\u0105 par\u0119 wskaz\u00f3wek dla tw\u00f3rc\u00f3w aplikacji i bibliotek dotycz\u0105cych wersjonowania artefakt\u00f3w.\n\nCo do samego wydania Scali 3, to je\u017celi nie pojawi\u0105 si\u0119 \u017cadne nowe krytyczne b\u0142\u0119dy, wspomniana przed chwil\u0105 wersja <a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Release Candidate 2<\/a>, b\u0119dzie ostatni\u0105 przed planowan\u0105 na 23 kwietnia premier\u0105 j\u0119zyka. Co ciekawe, nawet po wydaniu mo\u017cna spodziewa\u0107 si\u0119, \u017ce szybko doczekamy si\u0119 kolejnych edycji - jak s\u0142usznie punktuje m.in. <a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">ten w\u0105tek redditowy<\/a>, Scala 3.0 uka\u017ce si\u0119 w nieco ubogiej (i zabugowanej) wersji. W zwi\u0105zku z tym pewnie zaraz po wypiciu lampki szampana w celu uczczenia releasu, pracuj\u0105cy nad j\u0119zykiem programi\u015bci szybko wr\u00f3c\u0105 do pracy nad stabilno\u015bci\u0105 i brakuj\u0105cymi featurami.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/2_image-2.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-2.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/2_image-2.png 900w\" alt=\"\" width=\"900\" height=\"280\" \/>\n\n<figcaption>Ale jak to si\u0119 m\u00f3wi, \u201cbetter done than perfect\u201d.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-1\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT 1.5<\/a><\/li>\n \t<li><a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Scala Release Candidate 2.0<\/a><\/li>\n \t<li><a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">Scala RC2.0 Reddit Thread<\/a><\/li>\n<\/ul>\n<h2 id=\"3-google-wygrywa-w-s%C4%85dzie-z-oraclem-w-procesie-o-u%C5%BCycie-api-javy-na-androidzie-%F0%9F%91%A8%E2%80%8D%E2%9A%96%EF%B8%8F\">3. <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google wygrywa w s\u0105dzie z Oraclem w procesie o u\u017cycie API Javy na Androidzie<\/a> \u200d\u2696\ufe0f<\/h2>\nSko\u0144czym na newsie, kt\u00f3ry obiecali\u015bmy ju\u017c w wydaniu sobotnim, ale ze wzgl\u0119du na to \u017ce zahacza on tak mocno o Jav\u0119, nie mogli\u015bmy odpu\u015bci\u0107 sobie \u201cprzerzucenia\u201d go do naszego wtorku.\n\nPo dziesi\u0119ciu latach, Google wygra\u0142o z Oraclem proces o u\u017cycie API Javy na popularnym Androidzie. Dla tych kt\u00f3rzy nie wiedz\u0105 - \u201czielony robocik\u201d nie uruchamia aplikacji w ramach maszyny wirtualnej Javy, ale jego API dla programist\u00f3w jest kopi\u0105 tego javowego, za co Oracle \u017c\u0105da\u0142o od Google wysokiego odszkodowania z tytu\u0142u \u0142amania praw autorskich. Ten proces jest troch\u0119 cz\u0119\u015bci\u0105 mojego \u017cycia - \u00a0ci\u0105gnie si\u0119 w zasadzie od pocz\u0105tku mojej bran\u017cowej \"kariery\", kiedy jeszcze by\u0142em programist\u0105 mobilnym. St\u0105d te\u017c mimo i\u017c od lat ju\u017c na Androida nie pisz\u0119, wie\u015b\u0107 o jego zako\u0144czeniu wywo\u0142a\u0142a we mnie pewn\u0105 hmmm.. nostalgi\u0119.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-6.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/blog.vived.io\/content\/images\/size\/w600\/\n2021\/04\/image-6.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image-6.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-6.png 1198w\" alt=\"\" width=\"1198\" height=\"384\" \/>\n\n<figcaption>A bior\u0105c pod uwag\u0119 struktur\u0119 wewn\u0119trzn\u0105 obu organizacji wynik m\u00f3g\u0142 by\u0107 r\u00f3\u017cny...<\/figcaption><\/figure>\nWyrok jest zreszt\u0105 wa\u017cny dla ca\u0142ej bran\u017cy, gdy\u017c osobom chc\u0105cym stworzy\u0107 alternatywne implementacje danych API, daje do r\u0105k do\u015b\u0107 dobr\u0105 amunicje. Nale\u017cy pami\u0119ta\u0107 jednak, \u017ce wyrok nie jest \u201ckonkluzywny\u201d co do faktu, \u017ce API jako takiego nie mo\u017cna chroni\u0107 prawem autorskim - <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">s\u0105d orzek\u0142 \u017ce kompatybilne API wchodzi w definicje tak zwanego \u201cdozwolonego u\u017cycia\u201d<\/a>. Jednocze\u015bnie ze wzgl\u0119du na dzia\u0142aj\u0105ce w USA prawo kazusu, prawdopodobnie minie troch\u0119 zanim ktokolwiek spr\u00f3buje wytoczy\u0107 podobn\u0105 spraw\u0119.\n\nProcesowi temu \u201czawdzi\u0119czamy\u201d mas\u0119 rzeczy, kt\u00f3re wydarzy\u0142y si\u0119 w JVMowym ekosystemie w przeci\u0105gu ostatniej dekady. To w\u0142a\u015bnie pozew Oracle sprawi\u0142, \u017ce rozw\u00f3j Javy na Androidzie zatrzyma\u0142 si\u0119 na d\u0142ugie lata na \u201cszcz\u0105tkach\u201d edycji si\u00f3dmej, co otworzy\u0142o drog\u0119 do rozwoju chocia\u017cby Kotlinowi, kt\u00f3ry szybko \u201codp\u0119pi\u0142\u201d si\u0119 od pierwotnej platformy i obecnie sta\u0142 si\u0119 o wiele bardziej uniwersalnym tworem. Przez d\u0142ugie lata m\u00f3wi\u0142o si\u0119 r\u00f3wnie\u017c o tym, \u017ce Google trzyma Darta w odwodzie na wypadek, je\u015bli s\u0105d uzna\u0142by, \u017ce racja stoi po stronie Larry\u2019ego Ellisona.\n\nZaraz po og\u0142oszeniu wyniku, Google postanowi\u0142o \u201codgry\u017a\u0107 si\u0119\u201d Oraclowi i og\u0142osi\u0142o, \u017ce <a href=\"https:\/\/www.zdnet.com\/article\/google-migrates-from-oracle-financial-software-to-sap\/\">porzuca rozwijane przez niego oprogramowanie finansowe i przechodzi na SAPa<\/a>. Mi\u0142o widzie\u0107, \u017ce du\u017ce korporacje te\u017c s\u0105 ludzkie i potrafi\u0105 przekomarza\u0107 si\u0119 jak dzieci\n\nNa koniec ciekawostka historyczna: nie wiem, czy wszyscy wiedz\u0105, ale kiedy\u015b ju\u017c mia\u0142 <a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">miejsce podobny proces<\/a>. Ot\u00f3\u017c pod koniec lat 90. Microsoft chcia\u0142 stworzy\u0107 w\u0142asn\u0105 wersj\u0119 JDK, podpisa\u0142 nawet odpowiednie umowy z Sunem. Jednak ze wzgl\u0119du na to, \u017ce firma z Redmond chcia\u0142 w Javie majstrowa\u0107, Sun (boj\u0105c si\u0119 segmentyzacji rynku) postanowi\u0142 wyst\u0105pi\u0107 do s\u0105du i wygra\u0142 ten proces w roku 2002. To zmusi\u0142o Microsoft do stworzenia j\u0119zyka C#, kt\u00f3ry zw\u0142aszcza w swoich pocz\u0105tkowych wersjach, by\u0142 bardzo zbli\u017cony do Javy. Tak wi\u0119c jak potyczki Google z Oraclem by\u0142y motorem do powstania Kotlina, tak i z tych na pocz\u0105tku tysi\u0105clecia wysz\u0142o ostatecznie co\u015b produktywnego.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-11.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-11.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/5_image-11.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-11.png 1600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-11.png 2109w\" alt=\"\" width=\"2000\" height=\"437\" \/>\n\n<figcaption>Aczkolwiek my swoje wiemy.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-2\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google beats Oracle in biggest programming copyright Supreme Court case ever<\/a><\/li>\n \t<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google migrates from Oracle financial software to SAP<\/a><\/li>\n \t<li><a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">Sun, Microsoft settle Java suit (2002)<\/a><\/li>\n<\/ul>\n\n<hr \/>\n\nA z tej ciekawostki ju\u017c tylko kroczek do obiecanego bonusika tej edycji...\n<h2 id=\"bonus-microsoft-wypuszcza-swoj%C4%85-w%C5%82asn%C4%85-wersj%C4%99-openjdk\"><a href=\"https:\/\/www.zdnet.com\/article\/microsoft-rolls-out-its-openjdk-preview-release\/\">Bonus: Microsoft wypuszcza swoj\u0105 w\u0142asn\u0105 wersj\u0119 OpenJDK<\/a><\/h2>\nZdziwionym chc\u0119 przypomnie\u0107, \u017ce ostatnimi czasy firma z Redmond zosta\u0142 cz\u0142onkiem <a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">grupy roboczej Adoptium (dawne AdoptOpenJDK)<\/a>.\n\nAle Microsoft ma d\u0142u\u017csz\u0105 histori\u0119 wspierania JDK, swego czasu<a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\"> zaanga\u017cowa\u0142 si\u0119 w jej wersji na procesory ARM<\/a>. Po prostu w czasach gdy to chmura liczy si\u0119 jako g\u0142\u00f3wne \u017ar\u00f3d\u0142o przychod\u00f3w, je\u017celi chce si\u0119 wsp\u00f3\u0142pracowa\u0107 z du\u017cymi partnerami nie mo\u017cna sobie od tak odpu\u015bci\u0107 Javy.\n\nCiekawe czy Microsoft zamierza wprowadzi\u0107 do \u201cswojej\u201d Javy jakie\u015b dodatki, jak regularnie robi to np. Alibaba?\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-3\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/devblogs.microsoft.com\/java\/announcing-preview-of-microsoft-build-of-openjdk\/\" rel=\"noreferrer noopener\">Announcing Preview of Microsoft Build of OpenJDK | Java at Microsoft<\/a><\/li>\n \t<li><a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">Eclipse Foundation Launches the Adoptium Working Group for Multi-Vendor Delivery of Java Runtimes for Enterprises<\/a><\/li>\n \t<li><a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\">Microsoft to Contribute to Java on Windows and Mac ARM<\/a><\/li>\n<\/ul>","innerContent":["<h2 id=\"1-wyszed%C5%82-nowy-intellij-idea-20211-%F0%9F%9A%80\">1. <a href=\"https:\/\/www.jetbrains.com\/idea\/whatsnew\/#20211\">Wyszed\u0142 nowy Intellij Idea 2021.1<\/a> ...<\/h2>\n\u2026 a wraz z nim r\u00f3wnie\u017c pluginy do Kotlina oraz Scali.\n<figure class=\"kg-card kg-image-card\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/8_image.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image.png 1286w\" alt=\"\" width=\"1286\" height=\"539\" \/><\/figure>\nCo takiego dostajemy? Z pewno\u015bci\u0105 g\u0142\u00f3wnym \u201cdaniem\u201d nowej edycji jest zapewnienie, jak najlepszych narz\u0119dzi do zdalnej kolaboracji. Jako tak\u0105 nale\u017cy na pewno traktowa\u0107 integracj\u0119 z <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> - stworzonego przez JetBrains amalgamatu GitHuba, Jiry oraz Slacka, kt\u00f3ry ma szans\u0119 sporo namiesza\u0107 (sam mam ochot\u0119, na kt\u00f3rym\u015b etapie wypr\u00f3bowa\u0107 go w projekcie, aczkolwiek ci\u0105gle jeszcze kminie, jak zrobi\u0107 to w spos\u00f3b, \u017ceby ca\u0142o\u015b\u0107 nie okaza\u0142a si\u0119 by\u0107 operacj\u0105 typu stop-the-world, kt\u00f3ra zablokuje rozw\u00f3j app.vived.io na dwa tygodnie). Drugim uk\u0142onem w stron\u0119 rozproszonych zespo\u0142\u00f3w jest <a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">Code With Me<\/a>, kt\u00f3re pozwala pracowa\u0107 nad jednym kodem w spos\u00f3b zbli\u017cony do edycji dokument\u00f3w w Google Docs, r\u00f3wnocze\u015bnie zapewniaj\u0105c m.in. transmisje audio i wideo.\n\nOczywi\u015bcie, Intellij jak to zwykle przynosi nam mnogo\u015b\u0107 innych zmian. Nowa wersja przystosowana jest do pracy z Jav\u0105 16, a podpowiedzi edytora b\u0119d\u0119 bra\u0107 pod uwag\u0119 przy zmianach, kt\u00f3re pojawi\u0142y si\u0119 w nowej wersji j\u0119zyka. Zupe\u0142nie nowego \u201cwizarda\u201d otrzyma\u0142y te\u017c popularne javowe frameworki - Spring, Micronaut, Quarkus, oraz MicroProfile. Je\u017celi u\u017cywacie Kotlina, <a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">nowa edycja plugina IDE<\/a> ma zapewni\u0107 znacznie szybsze podpowiadanie sk\u0142adni (aczkolwiek tw\u00f3rcy szczerze podkre\u015blaj\u0105, \u017ce ci\u0105gle nie jest tak szybkie jak w Javie. <a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">Plugin do Scali<\/a> przynosi za\u015b wsparcie dla wersji RC2 Scali 3 (o kt\u00f3rej przeczytacie w nast\u0119pnym akapicie), oraz wsparcie do podpowiadania sk\u0142adni oparte na sztucznej inteligencji, do tej pory dost\u0119pnego wy\u0142\u0105cznie w Javie. Mo\u017ce kiedy\u015b to narz\u0119dzie wyewoluuje do poziomu gdzie w\u0142a\u015bciwie b\u0119dzie mo\u017cna zast\u0105pi\u0107 nim programist\u00f3w.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-8.png\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-8.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-8.png 602w\" alt=\"\" width=\"602\" height=\"568\" \/>\n<figcaption>A mo\u017ce i nie.<\/figcaption><\/figure>\nPoza rzeczami zwi\u0105zanymi z samymi j\u0119zykami JVMowymi, warto te\u017c zaznaczy\u0107 lepsze wsparcie dla Pull Request\u00f3w oraz Kubernetesa.\n\nPS: Je\u015bli Waszym systemem operacyjnym jest Windows, z pewno\u015bci\u0105 ucieszy Was fakt, \u017ce Intellij w ko\u0144cu nauczy\u0142 si\u0119 dogadywa\u0107 z Windows Subsystem for Linux (WSL) w wersji drugiej.\n\nPS2: Czy te\u017c lubicie spos\u00f3b numeracji kolejnych wersji u\u017cywany przez Intellij ?\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.jetbrains.com\/space\/\">JetBrains Space<\/a><\/li>\n \t<li><a href=\"https:\/\/www.jetbrains.com\/code-with-me\/\">JetBrains Code With Me<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">What\u2019s New in IntelliJ IDEA 2021.1<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2021\/04\/kotlin-plugin-2021-1-released\/\">Kotlin Plugin 2021.1 Released<\/a><\/li>\n \t<li><a href=\"https:\/\/blog.jetbrains.com\/scala\/2021\/04\/07\/intellij-scala-plugin-2021-1\/\">IntelliJ Scala Plugin 2021.1 Is Out!<\/a><\/li>\n<\/ul>\n<h2 id=\"2-ostatnie-przymiarki-do-scali-3drugi-release-candidate-oraz-nowe-sbt-%F0%9F%91%94\">2. Ostatnie przymiarki do Scali 3 - drugi Release Candidate oraz nowe SBT<\/h2>\nNasz\u0105 kolejn\u0105 pozycj\u0105 b\u0119dzie kr\u00f3tki przegl\u0105d tego, co dzieje si\u0119 w Scali 3, bo zdecydowanie jest o czym informowa\u0107 - jej premiera zbli\u017ca si\u0119 wielkimi krokami.\n\nNa pocz\u0105tku kwietnia najpopularniejszy scalowy \u201cbuild tool\u201d - <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT - wypu\u015bci\u0142o swoj\u0105 wersj\u0119 1.5.<\/a> Najbardziej kluczow\u0105 zmian\u0105, jak\u0105 nowa edycja przynosi, to wsparcie dla Scali 3 w\u0142a\u015bnie, a konkretnie jego edycji RC2. Jest to kolejny ma\u0142y kroczek dla spo\u0142eczno\u015bci na drodze do adopcji nowej wersji j\u0119zyka. Warto rzuci\u0107 okiem na <a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">release notesy<\/a>, poniewa\u017c zawieraj\u0105 par\u0119 wskaz\u00f3wek dla tw\u00f3rc\u00f3w aplikacji i bibliotek dotycz\u0105cych wersjonowania artefakt\u00f3w.\n\nCo do samego wydania Scali 3, to je\u017celi nie pojawi\u0105 si\u0119 \u017cadne nowe krytyczne b\u0142\u0119dy, wspomniana przed chwil\u0105 wersja <a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Release Candidate 2<\/a>, b\u0119dzie ostatni\u0105 przed planowan\u0105 na 23 kwietnia premier\u0105 j\u0119zyka. Co ciekawe, nawet po wydaniu mo\u017cna spodziewa\u0107 si\u0119, \u017ce szybko doczekamy si\u0119 kolejnych edycji - jak s\u0142usznie punktuje m.in. <a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">ten w\u0105tek redditowy<\/a>, Scala 3.0 uka\u017ce si\u0119 w nieco ubogiej (i zabugowanej) wersji. W zwi\u0105zku z tym pewnie zaraz po wypiciu lampki szampana w celu uczczenia releasu, pracuj\u0105cy nad j\u0119zykiem programi\u015bci szybko wr\u00f3c\u0105 do pracy nad stabilno\u015bci\u0105 i brakuj\u0105cymi featurami.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/2_image-2.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-2.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/2_image-2.png 900w\" alt=\"\" width=\"900\" height=\"280\" \/>\n\n<figcaption>Ale jak to si\u0119 m\u00f3wi, \u201cbetter done than perfect\u201d.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-1\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/github.com\/sbt\/sbt\/releases\/tag\/v1.5.0\">SBT 1.5<\/a><\/li>\n \t<li><a href=\"https:\/\/github.com\/lampepfl\/dotty\/blob\/2371b051bfa2e09c068ef883f2e981e76d6bd6a7\/docs\/blog\/_posts\/2021-03-31-scala3-rc2.md\">Scala Release Candidate 2.0<\/a><\/li>\n \t<li><a href=\"https:\/\/www.reddit.com\/r\/scala\/comments\/mgtza3\/scala_300rc2_has_landed\/\">Scala RC2.0 Reddit Thread<\/a><\/li>\n<\/ul>\n<h2 id=\"3-google-wygrywa-w-s%C4%85dzie-z-oraclem-w-procesie-o-u%C5%BCycie-api-javy-na-androidzie-%F0%9F%91%A8%E2%80%8D%E2%9A%96%EF%B8%8F\">3. <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google wygrywa w s\u0105dzie z Oraclem w procesie o u\u017cycie API Javy na Androidzie<\/a> \u200d\u2696\ufe0f<\/h2>\nSko\u0144czym na newsie, kt\u00f3ry obiecali\u015bmy ju\u017c w wydaniu sobotnim, ale ze wzgl\u0119du na to \u017ce zahacza on tak mocno o Jav\u0119, nie mogli\u015bmy odpu\u015bci\u0107 sobie \u201cprzerzucenia\u201d go do naszego wtorku.\n\nPo dziesi\u0119ciu latach, Google wygra\u0142o z Oraclem proces o u\u017cycie API Javy na popularnym Androidzie. Dla tych kt\u00f3rzy nie wiedz\u0105 - \u201czielony robocik\u201d nie uruchamia aplikacji w ramach maszyny wirtualnej Javy, ale jego API dla programist\u00f3w jest kopi\u0105 tego javowego, za co Oracle \u017c\u0105da\u0142o od Google wysokiego odszkodowania z tytu\u0142u \u0142amania praw autorskich. Ten proces jest troch\u0119 cz\u0119\u015bci\u0105 mojego \u017cycia - \u00a0ci\u0105gnie si\u0119 w zasadzie od pocz\u0105tku mojej bran\u017cowej \"kariery\", kiedy jeszcze by\u0142em programist\u0105 mobilnym. St\u0105d te\u017c mimo i\u017c od lat ju\u017c na Androida nie pisz\u0119, wie\u015b\u0107 o jego zako\u0144czeniu wywo\u0142a\u0142a we mnie pewn\u0105 hmmm.. nostalgi\u0119.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-6.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/blog.vived.io\/content\/images\/size\/w600\/\n2021\/04\/image-6.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/7_image-6.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-6.png 1198w\" alt=\"\" width=\"1198\" height=\"384\" \/>\n\n<figcaption>A bior\u0105c pod uwag\u0119 struktur\u0119 wewn\u0119trzn\u0105 obu organizacji wynik m\u00f3g\u0142 by\u0107 r\u00f3\u017cny...<\/figcaption><\/figure>\nWyrok jest zreszt\u0105 wa\u017cny dla ca\u0142ej bran\u017cy, gdy\u017c osobom chc\u0105cym stworzy\u0107 alternatywne implementacje danych API, daje do r\u0105k do\u015b\u0107 dobr\u0105 amunicje. Nale\u017cy pami\u0119ta\u0107 jednak, \u017ce wyrok nie jest \u201ckonkluzywny\u201d co do faktu, \u017ce API jako takiego nie mo\u017cna chroni\u0107 prawem autorskim - <a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">s\u0105d orzek\u0142 \u017ce kompatybilne API wchodzi w definicje tak zwanego \u201cdozwolonego u\u017cycia\u201d<\/a>. Jednocze\u015bnie ze wzgl\u0119du na dzia\u0142aj\u0105ce w USA prawo kazusu, prawdopodobnie minie troch\u0119 zanim ktokolwiek spr\u00f3buje wytoczy\u0107 podobn\u0105 spraw\u0119.\n\nProcesowi temu \u201czawdzi\u0119czamy\u201d mas\u0119 rzeczy, kt\u00f3re wydarzy\u0142y si\u0119 w JVMowym ekosystemie w przeci\u0105gu ostatniej dekady. To w\u0142a\u015bnie pozew Oracle sprawi\u0142, \u017ce rozw\u00f3j Javy na Androidzie zatrzyma\u0142 si\u0119 na d\u0142ugie lata na \u201cszcz\u0105tkach\u201d edycji si\u00f3dmej, co otworzy\u0142o drog\u0119 do rozwoju chocia\u017cby Kotlinowi, kt\u00f3ry szybko \u201codp\u0119pi\u0142\u201d si\u0119 od pierwotnej platformy i obecnie sta\u0142 si\u0119 o wiele bardziej uniwersalnym tworem. Przez d\u0142ugie lata m\u00f3wi\u0142o si\u0119 r\u00f3wnie\u017c o tym, \u017ce Google trzyma Darta w odwodzie na wypadek, je\u015bli s\u0105d uzna\u0142by, \u017ce racja stoi po stronie Larry\u2019ego Ellisona.\n\nZaraz po og\u0142oszeniu wyniku, Google postanowi\u0142o \u201codgry\u017a\u0107 si\u0119\u201d Oraclowi i og\u0142osi\u0142o, \u017ce <a href=\"https:\/\/www.zdnet.com\/article\/google-migrates-from-oracle-financial-software-to-sap\/\">porzuca rozwijane przez niego oprogramowanie finansowe i przechodzi na SAPa<\/a>. Mi\u0142o widzie\u0107, \u017ce du\u017ce korporacje te\u017c s\u0105 ludzkie i potrafi\u0105 przekomarza\u0107 si\u0119 jak dzieci\n\nNa koniec ciekawostka historyczna: nie wiem, czy wszyscy wiedz\u0105, ale kiedy\u015b ju\u017c mia\u0142 <a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">miejsce podobny proces<\/a>. Ot\u00f3\u017c pod koniec lat 90. Microsoft chcia\u0142 stworzy\u0107 w\u0142asn\u0105 wersj\u0119 JDK, podpisa\u0142 nawet odpowiednie umowy z Sunem. Jednak ze wzgl\u0119du na to, \u017ce firma z Redmond chcia\u0142 w Javie majstrowa\u0107, Sun (boj\u0105c si\u0119 segmentyzacji rynku) postanowi\u0142 wyst\u0105pi\u0107 do s\u0105du i wygra\u0142 ten proces w roku 2002. To zmusi\u0142o Microsoft do stworzenia j\u0119zyka C#, kt\u00f3ry zw\u0142aszcza w swoich pocz\u0105tkowych wersjach, by\u0142 bardzo zbli\u017cony do Javy. Tak wi\u0119c jak potyczki Google z Oraclem by\u0142y motorem do powstania Kotlina, tak i z tych na pocz\u0105tku tysi\u0105clecia wysz\u0142o ostatecznie co\u015b produktywnego.\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img class=\"kg-image\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-11.png\" sizes=\"(min-width: 720px) 720px\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/4_image-11.png 600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/5_image-11.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/6_image-11.png 1600w, https:\/\/vived.io\/wp-content\/uploads\/2021\/08\/3_image-11.png 2109w\" alt=\"\" width=\"2000\" height=\"437\" \/>\n\n<figcaption>Aczkolwiek my swoje wiemy.<\/figcaption><\/figure>\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-2\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google beats Oracle in biggest programming copyright Supreme Court case ever<\/a><\/li>\n \t<li><a href=\"https:\/\/www.zdnet.com\/article\/google-beats-oracle-in-biggest-programming-copyright-supreme-court-case-ever\/\">Google migrates from Oracle financial software to SAP<\/a><\/li>\n \t<li><a href=\"https:\/\/www.cnet.com\/news\/sun-microsoft-settle-java-suit\/\">Sun, Microsoft settle Java suit (2002)<\/a><\/li>\n<\/ul>\n\n<hr \/>\n\nA z tej ciekawostki ju\u017c tylko kroczek do obiecanego bonusika tej edycji...\n<h2 id=\"bonus-microsoft-wypuszcza-swoj%C4%85-w%C5%82asn%C4%85-wersj%C4%99-openjdk\"><a href=\"https:\/\/www.zdnet.com\/article\/microsoft-rolls-out-its-openjdk-preview-release\/\">Bonus: Microsoft wypuszcza swoj\u0105 w\u0142asn\u0105 wersj\u0119 OpenJDK<\/a><\/h2>\nZdziwionym chc\u0119 przypomnie\u0107, \u017ce ostatnimi czasy firma z Redmond zosta\u0142 cz\u0142onkiem <a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">grupy roboczej Adoptium (dawne AdoptOpenJDK)<\/a>.\n\nAle Microsoft ma d\u0142u\u017csz\u0105 histori\u0119 wspierania JDK, swego czasu<a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\"> zaanga\u017cowa\u0142 si\u0119 w jej wersji na procesory ARM<\/a>. Po prostu w czasach gdy to chmura liczy si\u0119 jako g\u0142\u00f3wne \u017ar\u00f3d\u0142o przychod\u00f3w, je\u017celi chce si\u0119 wsp\u00f3\u0142pracowa\u0107 z du\u017cymi partnerami nie mo\u017cna sobie od tak odpu\u015bci\u0107 Javy.\n\nCiekawe czy Microsoft zamierza wprowadzi\u0107 do \u201cswojej\u201d Javy jakie\u015b dodatki, jak regularnie robi to np. Alibaba?\n<h3 id=\"%C5%BAr%C3%B3d%C5%82a-3\">\u0179r\u00f3d\u0142a:<\/h3>\n<ul>\n \t<li><a href=\"https:\/\/devblogs.microsoft.com\/java\/announcing-preview-of-microsoft-build-of-openjdk\/\" rel=\"noreferrer noopener\">Announcing Preview of Microsoft Build of OpenJDK | Java at Microsoft<\/a><\/li>\n \t<li><a href=\"https:\/\/newsroom.eclipse.org\/news\/announcements\/eclipse-foundation-launches-adoptium-working-group-multi-vendor-delivery-java\">Eclipse Foundation Launches the Adoptium Working Group for Multi-Vendor Delivery of Java Runtimes for Enterprises<\/a><\/li>\n \t<li><a href=\"https:\/\/www.infoq.com\/news\/2020\/09\/microsoft-windows-mac-arm\/\">Microsoft to Contribute to Java on Windows and Mac ARM<\/a><\/li>\n<\/ul>"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10154","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=10154"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10154\/revisions"}],"predecessor-version":[{"id":10578,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10154\/revisions\/10578"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=10154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=10154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=10154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}