{"id":9949,"date":"2022-07-02T11:55:52","date_gmt":"2022-07-02T09:55:52","guid":{"rendered":"https:\/\/vived.io\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/"},"modified":"2022-09-19T13:19:55","modified_gmt":"2022-09-19T11:19:55","slug":"software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/","title":{"rendered":"Software Craftsmanship Weekly vol. 94 &#8211; Czy potrzebujemy alternatywy dla SQLa?"},"content":{"rendered":"\n<p>Zaczniemy od prognozy pogody:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"512\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/290456770_5715381978494708_2033785520464436516_n.jpeg\" alt=\"\" class=\"wp-image-5563\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/290456770_5715381978494708_2033785520464436516_n.jpeg 750w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/290456770_5715381978494708_2033785520464436516_n-300x205.jpeg 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><figcaption>Ukradzione z chatolandia.pl<\/figcaption><\/figure><\/div>\n\n\n<p>A teraz do konkret\u00f3w.<\/p>\n\n\n\n<h2 id=\"1-nowy-vim-z-napisanym-od-zera-silnikiem\" data-num=1>1. Nowy VIM z napisanym od zera silnikiem<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-1024x679.png\" alt=\"\" class=\"wp-image-5570\" width=\"512\" height=\"340\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-1024x679.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-300x199.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-768x509.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3.png 1228w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure><\/div>\n\n\n<p>To jako \u017ce obowi\u0105zkowy dowcip mamy za sob\u0105&#8230; jej, nowy <a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a>! Narz\u0119dzie to w zesz\u0142ym roku obchodzi\u0142o 30-tk\u0119. By\u0142em zaskoczony, my\u015bla\u0142em \u017ce jest starszy &#8211; ale to dlatego, \u017ce stanowi ulepszon\u0105 wersj\u0119 edytora vi z roku 1976 (zaraz do tego tematu wr\u00f3cimy). Po latach ci\u0105gle pozostaje jednym z najcz\u0119\u015bciej u\u017cywanych edytor\u00f3w, i u wielu os\u00f3b nie zdo\u0142a\u0142y wypchn\u0105\u0107 go \u017cadne wymuskane IDE czy Edytory Kodu (a nawet je\u015bli &#8211; to dla wielu os\u00f3b dalej kluczowa jest mo\u017cliwo\u015b\u0107 uruchomienia w nich tak zwanego Vim Mod\u0119). Jest to pierwsza &#8222;du\u017ca&#8221; edycja od roku 2016, gdy <a href=\"https:\/\/lwn.net\/Articles\/713114\/\">premier\u0119 mia\u0142 Vim 8.0<\/a>.<\/p>\n\n\n\n<p>Co przynosi tak istotne podbicie numeracji? G\u0142\u00f3wnie nowe wcielenie j\u0119zyka skryptowego Vim: Vim9. Oznacza ono porzucenie wstecznej kompatybilno\u015bci z poprzednimi skryptami Vima, a tak\u017ce ze swoim dziadkiem &#8211; edytorem vi. Przez to, \u017ce do tej pory takowa by\u0142a kluczowa, z\u0142e wybory z przesz\u0142o\u015bci nak\u0142ada\u0142y si\u0119 w czasie, a kompatybilno\u015b\u0107 z Vi utrudnia\u0142a rewolucje. Dlatego te\u017c postanowiono zrobi\u0107 du\u017cy krok i si\u0119 tej kompatybilno\u015bci wreszcie pozby\u0107. Dzi\u0119ki temu Vim9 umo\u017cliwi\u0142 tw\u00f3rcom drastyczn\u0105 popraw\u0119 wydajno\u015bci &#8211; od 10 do nawet 100 razy. Dodatkowo, Vim9 zbli\u017cony jest sk\u0142adniowo do powszechnie u\u017cywanych j\u0119zyk\u00f3w programowania, takich jak JavaScript, TypeScript i Java.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"460\" height=\"472\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-4.png\" alt=\"\" class=\"wp-image-5574\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-4.png 460w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-4-292x300.png 292w\" sizes=\"auto, (max-width: 460px) 100vw, 460px\" \/><figcaption>Aczkolwiek nie wiem, czy u\u017cytkownicy VIM&#8217;a zmieszcz\u0105 takie now\u0105 sk\u0142adni\u0119 skrypt\u00f3w w pami\u0119ci tymczasowej <\/figcaption><\/figure><\/div>\n\n\n<p>Dla tych, kt\u00f3rzy ju\u017c si\u0119 boj\u0105, \u017ce ich piel\u0119gnowane od dziesi\u0119cioleci Workflowy przestan\u0105 dzia\u0142a\u0107 &#8211; stary format skrypt\u00f3w ma by\u0107 dalej wspierany i nie planowane jest jego porzucenie. Po prostu teraz tw\u00f3rcy narz\u0119dzi b\u0119d\u0105 mieli alternatyw\u0119 pod postaci\u0105 Vim9.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"324\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/1_mkutlUPwH4mSaMOCKX4d5Q.png\" alt=\"\" class=\"wp-image-5565\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/1_mkutlUPwH4mSaMOCKX4d5Q.png 680w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/1_mkutlUPwH4mSaMOCKX4d5Q-300x143.png 300w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><figcaption>Bo podejrzewam, \u017ce nie wszyscy u\u017cywaj\u0105 tych bardziej &#8222;wykoksanych mo\u017cliwo\u015bci Vima)<\/figcaption><\/figure><\/div>\n\n\n<p>A jak ju\u017c jeste\u015bmy w temacie Vima, to ostatnimi czasy czyta\u0142em \u015bwietny tekst dotycz\u0105cy <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">edytor\u00f3w developerskich w 2022<\/a>. Daje on bardzo ciekaw\u0105 perspektyw\u0119 na to, czy w 2022 dalej terminal ze swoj\u0105 kompozowalno\u015bci\u0105 dalej jest najlepszym \u015brodowiskiem pracy. Mimo, \u017ce autor jest die-hard fanem CLI (i Vima), dzieli si\u0119 on swoimi w\u0105tpliwo\u015bciami. G\u0142\u00f3wne wady kt\u00f3re wskazuje to fakt, jak trudno jednak eksperymentuje si\u0119 z \u0142\u0105czeniem komenda, a tak\u017ce z ograniczeniami, kt\u00f3re wynikaj\u0105 z operowania wy\u0142\u0105cznie na tek\u015bcie w \u015bwiecie, gdy pliki binarne s\u0105 jednak istotne (i z roku na rok coraz istotniejsze).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"556\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-7.png\" alt=\"\" class=\"wp-image-5580\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-7.png 556w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-7-300x270.png 300w\" sizes=\"auto, (max-width: 556px) 100vw, 556px\" \/><figcaption>To zreszt\u0105 nie jedyna &#8222;ciekawa&#8221; zasz\u0142o\u015b\u0107<\/figcaption><\/figure><\/div>\n\n\n<p>Je\u017celi Wam te\u017c si\u0119 spodoba i b\u0119dziecie chcieli podzieli\u0107 si\u0119 z kim\u015b <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">linkiem<\/a> &#8211; uwa\u017cajcie na dziwne przekierowania (w url pojawia si\u0119 dodatkowe \/blog i <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">link<\/a> przestaje dzia\u0142a\u0107).<\/p>\n\n\n\n<p>To \u017ceby tak podsumowa\u0107: Intellij, Vim czy Emacs?<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"563\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image.png\" alt=\"\" class=\"wp-image-5566\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image.png 1000w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-300x169.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-768x432.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><figcaption>A moze Nano?<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a><\/li><li><a href=\"https:\/\/phaazon.net\/blog\/development-environments\">Development Environments<\/a><\/li><\/ul>\n\n\n\n<h2 id=\"2-prql-jezyk-transpilujacy-sie-do-sqla\" data-num=2>2. PRQL &#8211; j\u0119zyk transpiluj\u0105cy si\u0119 do SQLa<\/h2>\n\n\n\n<p>Jest taka bardzo ciekawa &#8222;zasada kciuka&#8221;: Je\u017celi masz estymowa\u0107, ile jeszcze b\u0119dzie trwa\u0142 dany trend (np. popularno\u015b\u0107 technologii), powiniene\u015b zak\u0142ada\u0107, \u017ce jeste\u015b dok\u0142adnie w po\u0142owie jego cyklu \u017cycia. Na pierwszy rzut oka wydaje si\u0119 by\u0107 to sporym uproszczeniem, ale w praktyce jest to bardzo prosta zasada. M\u00f3wi ona o tym, \u017ce skoro ludzie <a href=\"https:\/\/nautil.us\/how-well-forget-john-lennon-7906\/\">ci\u0105gle s\u0142uchaj\u0105 Johna Lennona<\/a>, to mniej wi\u0119cej do ko\u0144ca wieku wci\u0105\u017c b\u0119dzie on do\u015b\u0107 popularny. Muzyczna gwiazda sezonu letniego 2022 ma za\u015b wi\u0119ksze prawdopodobie\u0144stwo zosta\u0107 zapomniana w ci\u0105gu najbli\u017cszych 12 miesi\u0119cy, ni\u017c zosta\u0107 wieloletnim szlagierem.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"498\" height=\"407\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/worriedface.gif\" alt=\"\" class=\"wp-image-5576\"\/><figcaption>Przyznam szczerze, \u017ce szuka\u0142em ale nie uda\u0142o mi si\u0119 znale\u017a\u0107 jej nazwy. Jak kto\u015b pami\u0119ta &#8211; prosz\u0119, poratujcie starego sklerotyka.<\/figcaption><\/figure><\/div>\n\n\n<p>Z tego te\u017c powodu mo\u017cna zak\u0142ada\u0107, \u017ce pochodz\u0105cy z lat 70-tych SQL prze\u017cyje nas wszystkich, a bohater tego akapitu &#8211; <a href=\"https:\/\/github.com\/prql\/prql\">PRQL<\/a>, kt\u00f3ry swoj\u0105 oficjaln\u0105 premier\u0119 mia\u0142 w zesz\u0142ym tygodniu &#8211; raczej ma ma\u0142e szanse na stanie si\u0119 nowym standardem. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce warto podzieli\u0107 si\u0119 z Wami tym ciekawym projektem. <a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a> jest nowoczesnym j\u0119zykiem do przekszta\u0142cania danych &#8211; prostym i wydajnym &#8222;zast\u0119pstwem&#8221; SQL. W przeciwie\u0144stwie do SQL, o wiele wygodniej wspiera np. zmienne i umo\u017cliwia tworzeniu pipelin\u00f3w przekszta\u0142ce\u0144 danych. Co jednak jest tutaj najciekawsze to fakt, \u017ce mo\u017ce by\u0107 u\u017cywany w zasadzie z ka\u017cd\u0105 relacyjn\u0105 baz\u0105 danych, poniewa\u017c transpiluje si\u0119 do SQLa.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"708\" height=\"708\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10.png\" alt=\"\" class=\"wp-image-5588\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10.png 708w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10-300x300.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10-150x150.png 150w\" sizes=\"auto, (max-width: 708px) 100vw, 708px\" \/><figcaption>Ja troch\u0119 Tw\u00f3rc\u00f3w rozumiem<\/figcaption><\/figure><\/div>\n\n\n<p>Ca\u0142o\u015b\u0107 prezentuje si\u0119 nast\u0119puj\u0105co:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from employees\nfilter start_date &gt; @2021-01-01               \nderive &#091;                                      \n  gross_salary = salary + (tax ?? 0),         \n  gross_cost = gross_salary + benefits_cost,  \n]\nfilter gross_cost &gt; 0\ngroup &#091;title, country] (                      \n  aggregate &#091;                                 \n    average gross_salary,\n    sum_gross_cost = sum gross_cost,          \n  ]\n)\nfilter sum_gross_cost &gt; 100000                \nderive id = f&quot;{title}_{country}&quot;              \nsort &#091;sum_gross_cost, -country]               \ntake 1..20                                    \nFor more on the lang\n<\/code><\/pre>\n\n\n\n<p>Tak jak zacz\u0105\u0142em, raczej nie spodziewam si\u0119, \u017ce ca\u0142o\u015b\u0107 oka\u017ce si\u0119 by\u0107 wielkim sukcesem. Z SQL-em jest jak z QWERTY &#8211; jego zalet\u0105 jest nie to, \u017ce to najlepszy format, ale popularno\u015b\u0107 i bycie znanym w zasadzie przez ka\u017cdego. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce PRQL to na tyle interesuj\u0105cy projekt, \u017ce warto aby\u015bcie o nim wiedzieli. SQL to nie JavaScript, \u017ce codziennie pojawia si\u0119 jaki\u015b j\u0119zyk kt\u00f3ry si\u0119 do niego transpiluje.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"718\" height=\"570\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Rm8XGh7.png\" alt=\"\" class=\"wp-image-5572\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Rm8XGh7.png 718w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Rm8XGh7-300x238.png 300w\" sizes=\"auto, (max-width: 718px) 100vw, 718px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a><\/li><li><a href=\"https:\/\/github.com\/prql\/prql\">PRQL &#8211; Git Repo<\/a><\/li><\/ul>\n\n\n\n<h2 id=\"3-git-otrzymuje-lepsze-wsparcie-dla-monorepo\" data-num=3>3. Git otrzymuje lepsze wsparcie dla Monorepo<\/h2>\n\n\n\n<p>A na koniec, nowy Git. Podejrzewam, \u017ce wi\u0119cej ni\u017c 90% z czytaj\u0105cych u\u017cywa tego narz\u0119dzia, ale praktycznie nikt nie \u015bledzi pojawiaj\u0105cych si\u0119 w nimi nowo\u015bci i poprzestaje na bazowych 20% mo\u017cliwo\u015bci tego narz\u0119dzia. Tak naprawd\u0119 wcale si\u0119 temu nie dziwie &#8211; Git jest mocno &#8222;feature-complete&#8221; i rzadko pojawiaj\u0105 si\u0119 w nim nowo\u015bci, kt\u00f3re mo\u017cna w codziennej pracy.<\/p>\n\n\n\n<p>My\u015bl\u0119, \u017ce pewn\u0105 szans\u0119 na prze\u0142amanie tego trendu przynosi <a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a>. Nowa wersja przynosi min. lepszy garbage collector (tak, Git ma wbudowane GC) czy &#8222;uprodukcyjnienie&#8221; wprowadzonych niedawno Sparse Index, pozwalaj\u0105cy pracowa\u0107 z olbrzymimi repozytoriami dzi\u0119ki r\u00f3wnoczesnym operowaniu wy\u0142\u0105cznie na &#8222;podga\u0142\u0119zi&#8221; ca\u0142ego drzewa. Najwi\u0119ksz\u0105 nowo\u015b\u0107 nowego wydania r\u00f3wnie\u017c doceni\u0105 w\u0142a\u015bnie u\u017cytkownicy du\u017cych Monorepo &#8211; Git wprowadza bowiem natywny monitor plik\u00f3w. Do tej pory wiele operacji wykonywa\u0142y si\u0119 synchronicznie, ju\u017c po odpaleniu konkretnej komendy, co w przypadku du\u017cego codebase trwa\u0142o bardzo d\u0142ugo. Teraz Git b\u0119dzie m\u00f3g\u0142 w tle przygotowywa\u0107 wyniki, kt\u00f3re u\u017cytkownik b\u0119dzie otrzymywa\u0107 od razu np. poprzez komend\u0119 <code>git status<\/code>. Tematowi temu GitHub <a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">po\u015bwi\u0119ci\u0142 ca\u0142y artyku\u0142.<\/a>.<\/p>\n\n\n\n<p>Jak wi\u0119c wida\u0107, Git bardzo stara si\u0119 dostosowa\u0107 jako narz\u0119dzie do bie\u017c\u0105cych trend\u00f3w, a nie da si\u0119 ukry\u0107 \u017ce takim trendem jest w\u0142a\u015bnie coraz wi\u0119ksza popularno\u015b\u0107 monorepo. Je\u017celi chcieliby\u015bcie si\u0119 dowiedzie\u0107, dlaczego coraz wi\u0119cej firm interesuje si\u0119 tym podej\u015bciem, ostatnio trafi\u0142em na \u015bwietn\u0105 stron\u0119 <a href=\"https:\/\/monorepo.tools\/\">&#8222;Monorepo Explained&#8221;<\/a>, kt\u00f3ra stanowi swoiste FAQ oraz zbi\u00f3r instrukcji jak zacz\u0105\u0107. Polecam serdecznie.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"601\" height=\"250\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/AgedWiltedHornedtoad-size_restricted.gif\" alt=\"\" class=\"wp-image-5582\"\/><figcaption>Czeka\u0142em od Marca, \u017ceby znale\u017a\u0107 dobr\u0105 okazj\u0119 do podrzucenia tego linku.<\/figcaption><\/figure><\/div>\n\n\n<p>Tak na zako\u0144czenie przyznam si\u0119, \u017ce akurat lubi\u0119 zmiany w Git-cie \u015bledzi\u0107. Nie dlatego, \u017ce rzeczywi\u015bcie nagle zaczynam u\u017cywa\u0107 tych nowych strategii mergowania czy benchmarkuje wydajno\u015b\u0107. Po prostu akurat gitowe nowo\u015bci zwykle bywaj\u0105 bardzo interesuj\u0105c\u0105 &#8222;algorytmik\u0105 stosowan\u0105&#8221; &#8211; repozytorium na dobr\u0105 spraw\u0119 to taka du\u017ca drzewiasta struktura danych, a tw\u00f3rcy Gita wykonuj\u0105 na niej bardzo interesuj\u0105ce transformacje. To troch\u0119 ten sam poziom &#8222;frajdy&#8221;, kt\u00f3rym dzieli\u0142em si\u0119 swego czasu opisuj\u0105c moj\u0105 dziwn\u0105 mi\u0142o\u015b\u0107 do in\u017cynierii emulator\u00f3w \ud83e\udd37\u200d\u2642\ufe0f. A wspominam to tylko dlatego, \u017ceby podzieli\u0107 si\u0119 z Wami cudown\u0105 publikacj\u0105 na temat <a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">Mapper Chip\u00f3w oryginalnego NESa<\/a>! Dzi\u0119ki artyku\u0142owi dowiecie si\u0119, jak na konsoli kt\u00f3ra ma 2kb RAMu mo\u017cna uruchomi\u0107 Dooma, kt\u00f3ry wymaga 8Mb.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"530\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-1024x530.png\" alt=\"\" class=\"wp-image-5583\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-1024x530.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-300x155.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-768x397.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-1536x794.png 1536w, https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-2048x1059.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Mam nadzieje, \u017ce nie tylko mnie jaraj\u0105 takie rzeczy \ud83d\ude03<\/figcaption><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a><\/li><li><a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">Improve Git monorepo performance with a file system monitor<\/a><\/li><li><a href=\"https:\/\/monorepo.tools\/\">Monorepo Explained<\/a><\/li><li><a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">What made the NES interesting?<\/a><\/li><\/ul>\n\n\n\n<p>PS: Jakby kto\u015b si\u0119 zastnawia\u0142 sk\u0105d taka, a nie inna miniaturka&#8230; zapowiedziano <a href=\"https:\/\/www.youtube.com\/watch?v=4eKT3kseiAY\" rel=\"sponsored nofollow\"><strong>Persona 5 Royal<\/strong> na Switcha<\/a> \ud83e\udd73<\/p>\n","protected":false},"excerpt":{"rendered":"<p>VIM dostaje nowy j\u0119zyk skrypt\u00f3w, a Git lepsze wsparcie MonoRepo. Jednak obie te informacje bledn\u0105 w kontek\u015bcie potencjalnej alternatywy dla SQLa &#8211; czy ma jakiekolwiek szanse?<\/p>\n","protected":false},"author":10,"featured_media":8810,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[266],"tags":[],"class_list":["post-9949","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-craftsmanship"],"acf":{"estimated_reading_time":"5","feature_image_blog":{"ID":8808,"id":8808,"title":"Futaba-Sakura-P5-CM","filename":"Futaba-Sakura-P5-CM.jpeg","filesize":57265,"url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","link":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/futaba-sakura-p5-cm-2\/","alt":"","author":"10","description":"","caption":"","name":"futaba-sakura-p5-cm-2","status":"inherit","uploaded_to":9949,"date":"2022-07-02 09:55:39","modified":"2022-07-02 09:55:39","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/vived.io\/wp-includes\/images\/media\/default.png","width":1280,"height":720,"sizes":{"thumbnail":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM-150x150.jpeg","thumbnail-width":150,"thumbnail-height":150,"medium":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM-300x169.jpeg","medium-width":300,"medium-height":169,"medium_large":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM-768x432.jpeg","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM-1024x576.jpeg","large-width":1024,"large-height":576,"1536x1536":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","1536x1536-width":1280,"1536x1536-height":720,"2048x2048":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","2048x2048-width":1280,"2048x2048-height":720,"gform-image-choice-sm":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","gform-image-choice-sm-width":300,"gform-image-choice-sm-height":169,"gform-image-choice-md":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","gform-image-choice-md-width":400,"gform-image-choice-md-height":225,"gform-image-choice-lg":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Futaba-Sakura-P5-CM.jpeg","gform-image-choice-lg-width":600,"gform-image-choice-lg-height":338}},"weekly_summary":true,"push_notification_image":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","feature_image_visible":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - 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\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - Vived\" \/>\n<meta property=\"og:description\" content=\"VIM dostaje nowy j\u0119zyk skrypt\u00f3w, a Git lepsze wsparcie MonoRepo. Jednak obie te informacje bledn\u0105 w kontek\u015bcie potencjalnej alternatywy dla SQLa - czy ma jakiekolwiek szanse?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2022-07-02T09:55:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:19:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Artur Skowro\u0144ski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"Software Craftsmanship Weekly vol. 94 &#8211; Czy potrzebujemy alternatywy dla SQLa?\",\"datePublished\":\"2022-07-02T09:55:52+00:00\",\"dateModified\":\"2022-09-19T11:19:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\"},\"wordCount\":1320,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png\",\"articleSection\":[\"Craftsmanship\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\",\"url\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\",\"name\":\"Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png\",\"datePublished\":\"2022-07-02T09:55:52+00:00\",\"dateModified\":\"2022-09-19T11:19:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png\",\"width\":1200,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Software Craftsmanship Weekly vol. 94 &#8211; Czy potrzebujemy alternatywy dla SQLa?\"}]},{\"@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":"Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - 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\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/","og_locale":"pl_PL","og_type":"article","og_title":"Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - Vived","og_description":"VIM dostaje nowy j\u0119zyk skrypt\u00f3w, a Git lepsze wsparcie MonoRepo. Jednak obie te informacje bledn\u0105 w kontek\u015bcie potencjalnej alternatywy dla SQLa - czy ma jakiekolwiek szanse?","og_url":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/","og_site_name":"Vived","article_published_time":"2022-07-02T09:55:52+00:00","article_modified_time":"2022-09-19T11:19:55+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","type":"image\/png"}],"author":"Artur Skowro\u0144ski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"Software Craftsmanship Weekly vol. 94 &#8211; Czy potrzebujemy alternatywy dla SQLa?","datePublished":"2022-07-02T09:55:52+00:00","dateModified":"2022-09-19T11:19:55+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/"},"wordCount":1320,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","articleSection":["Craftsmanship"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/","url":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/","name":"Software Craftsmanship Weekly vol. 94 - Czy potrzebujemy alternatywy dla SQLa? - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","datePublished":"2022-07-02T09:55:52+00:00","dateModified":"2022-09-19T11:19:55+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/SCS-1.png","width":1200,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/software-craftsmanship-weekly-vol-94-czy-potrzbujemy-alternatywy-dla-sqla\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"Software Craftsmanship Weekly vol. 94 &#8211; Czy potrzebujemy alternatywy dla SQLa?"}]},{"@type":"WebSite","@id":"https:\/\/vived.io\/pl\/#website","url":"https:\/\/vived.io\/pl\/","name":"Vived","description":"platform empowering IT people and technology companies to synergic growth","publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vived.io\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/vived.io\/pl\/#organization","name":"Vived","url":"https:\/\/vived.io\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","width":136,"height":45,"caption":"Vived"},"image":{"@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3","name":"Artur Skowro\u0144ski","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","caption":"Artur Skowro\u0144ski"}}]}},"blocks_vived":[{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zaczniemy od prognozy pogody:<\/p>\n","innerContent":["\n<p>Zaczniemy od prognozy pogody:<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5563,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/290456770_5715381978494708_2033785520464436516_n.jpeg\" alt=\"\" class=\"wp-image-5563\"\/><figcaption>Ukradzione z chatolandia.pl<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/290456770_5715381978494708_2033785520464436516_n.jpeg\" alt=\"\" class=\"wp-image-5563\"\/><figcaption>Ukradzione z chatolandia.pl<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A teraz do konkret\u00f3w.<\/p>\n","innerContent":["\n<p>A teraz do konkret\u00f3w.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>1. Nowy VIM z napisanym od zera silnikiem<\/h2>\n","innerContent":["\n<h2>1. Nowy VIM z napisanym od zera silnikiem<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5570,"width":512,"height":340,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-1024x679.png\" alt=\"\" class=\"wp-image-5570\" width=\"512\" height=\"340\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-3-1024x679.png\" alt=\"\" class=\"wp-image-5570\" width=\"512\" height=\"340\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>To jako \u017ce obowi\u0105zkowy dowcip mamy za sob\u0105... jej, nowy <a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a>! Narz\u0119dzie to w zesz\u0142ym roku obchodzi\u0142o 30-tk\u0119. By\u0142em zaskoczony, my\u015bla\u0142em \u017ce jest starszy - ale to dlatego, \u017ce stanowi ulepszon\u0105 wersj\u0119 edytora vi z roku 1976 (zaraz do tego tematu wr\u00f3cimy). Po latach ci\u0105gle pozostaje jednym z najcz\u0119\u015bciej u\u017cywanych edytor\u00f3w, i u wielu os\u00f3b nie zdo\u0142a\u0142y wypchn\u0105\u0107 go \u017cadne wymuskane IDE czy Edytory Kodu (a nawet je\u015bli - to dla wielu os\u00f3b dalej kluczowa jest mo\u017cliwo\u015b\u0107 uruchomienia w nich tak zwanego Vim Mod\u0119). Jest to pierwsza \"du\u017ca\" edycja od roku 2016, gdy <a href=\"https:\/\/lwn.net\/Articles\/713114\/\">premier\u0119 mia\u0142 Vim 8.0<\/a>.<\/p>\n","innerContent":["\n<p>To jako \u017ce obowi\u0105zkowy dowcip mamy za sob\u0105... jej, nowy <a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a>! Narz\u0119dzie to w zesz\u0142ym roku obchodzi\u0142o 30-tk\u0119. By\u0142em zaskoczony, my\u015bla\u0142em \u017ce jest starszy - ale to dlatego, \u017ce stanowi ulepszon\u0105 wersj\u0119 edytora vi z roku 1976 (zaraz do tego tematu wr\u00f3cimy). Po latach ci\u0105gle pozostaje jednym z najcz\u0119\u015bciej u\u017cywanych edytor\u00f3w, i u wielu os\u00f3b nie zdo\u0142a\u0142y wypchn\u0105\u0107 go \u017cadne wymuskane IDE czy Edytory Kodu (a nawet je\u015bli - to dla wielu os\u00f3b dalej kluczowa jest mo\u017cliwo\u015b\u0107 uruchomienia w nich tak zwanego Vim Mod\u0119). Jest to pierwsza \"du\u017ca\" edycja od roku 2016, gdy <a href=\"https:\/\/lwn.net\/Articles\/713114\/\">premier\u0119 mia\u0142 Vim 8.0<\/a>.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Co przynosi tak istotne podbicie numeracji? G\u0142\u00f3wnie nowe wcielenie j\u0119zyka skryptowego Vim: Vim9. Oznacza ono porzucenie wstecznej kompatybilno\u015bci z poprzednimi skryptami Vima, a tak\u017ce ze swoim dziadkiem - edytorem vi. Przez to, \u017ce do tej pory takowa by\u0142a kluczowa, z\u0142e wybory z przesz\u0142o\u015bci nak\u0142ada\u0142y si\u0119 w czasie, a kompatybilno\u015b\u0107 z Vi utrudnia\u0142a rewolucje. Dlatego te\u017c postanowiono zrobi\u0107 du\u017cy krok i si\u0119 tej kompatybilno\u015bci wreszcie pozby\u0107. Dzi\u0119ki temu Vim9 umo\u017cliwi\u0142 tw\u00f3rcom drastyczn\u0105 popraw\u0119 wydajno\u015bci - od 10 do nawet 100 razy. Dodatkowo, Vim9 zbli\u017cony jest sk\u0142adniowo do powszechnie u\u017cywanych j\u0119zyk\u00f3w programowania, takich jak JavaScript, TypeScript i Java.<\/p>\n","innerContent":["\n<p>Co przynosi tak istotne podbicie numeracji? G\u0142\u00f3wnie nowe wcielenie j\u0119zyka skryptowego Vim: Vim9. Oznacza ono porzucenie wstecznej kompatybilno\u015bci z poprzednimi skryptami Vima, a tak\u017ce ze swoim dziadkiem - edytorem vi. Przez to, \u017ce do tej pory takowa by\u0142a kluczowa, z\u0142e wybory z przesz\u0142o\u015bci nak\u0142ada\u0142y si\u0119 w czasie, a kompatybilno\u015b\u0107 z Vi utrudnia\u0142a rewolucje. Dlatego te\u017c postanowiono zrobi\u0107 du\u017cy krok i si\u0119 tej kompatybilno\u015bci wreszcie pozby\u0107. Dzi\u0119ki temu Vim9 umo\u017cliwi\u0142 tw\u00f3rcom drastyczn\u0105 popraw\u0119 wydajno\u015bci - od 10 do nawet 100 razy. Dodatkowo, Vim9 zbli\u017cony jest sk\u0142adniowo do powszechnie u\u017cywanych j\u0119zyk\u00f3w programowania, takich jak JavaScript, TypeScript i Java.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5574,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-4.png\" alt=\"\" class=\"wp-image-5574\"\/><figcaption>Aczkolwiek nie wiem, czy u\u017cytkownicy VIM'a zmieszcz\u0105 takie now\u0105 sk\u0142adni\u0119 skrypt\u00f3w w pami\u0119ci tymczasowej <\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-4.png\" alt=\"\" class=\"wp-image-5574\"\/><figcaption>Aczkolwiek nie wiem, czy u\u017cytkownicy VIM'a zmieszcz\u0105 takie now\u0105 sk\u0142adni\u0119 skrypt\u00f3w w pami\u0119ci tymczasowej <\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dla tych, kt\u00f3rzy ju\u017c si\u0119 boj\u0105, \u017ce ich piel\u0119gnowane od dziesi\u0119cioleci Workflowy przestan\u0105 dzia\u0142a\u0107 - stary format skrypt\u00f3w ma by\u0107 dalej wspierany i nie planowane jest jego porzucenie. Po prostu teraz tw\u00f3rcy narz\u0119dzi b\u0119d\u0105 mieli alternatyw\u0119 pod postaci\u0105 Vim9.<\/p>\n","innerContent":["\n<p>Dla tych, kt\u00f3rzy ju\u017c si\u0119 boj\u0105, \u017ce ich piel\u0119gnowane od dziesi\u0119cioleci Workflowy przestan\u0105 dzia\u0142a\u0107 - stary format skrypt\u00f3w ma by\u0107 dalej wspierany i nie planowane jest jego porzucenie. Po prostu teraz tw\u00f3rcy narz\u0119dzi b\u0119d\u0105 mieli alternatyw\u0119 pod postaci\u0105 Vim9.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5565,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/1_mkutlUPwH4mSaMOCKX4d5Q.png\" alt=\"\" class=\"wp-image-5565\"\/><figcaption>Bo podejrzewam, \u017ce nie wszyscy u\u017cywaj\u0105 tych bardziej \"wykoksanych mo\u017cliwo\u015bci Vima)<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/1_mkutlUPwH4mSaMOCKX4d5Q.png\" alt=\"\" class=\"wp-image-5565\"\/><figcaption>Bo podejrzewam, \u017ce nie wszyscy u\u017cywaj\u0105 tych bardziej \"wykoksanych mo\u017cliwo\u015bci Vima)<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A jak ju\u017c jeste\u015bmy w temacie Vima, to ostatnimi czasy czyta\u0142em \u015bwietny tekst dotycz\u0105cy <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">edytor\u00f3w developerskich w 2022<\/a>. Daje on bardzo ciekaw\u0105 perspektyw\u0119 na to, czy w 2022 dalej terminal ze swoj\u0105 kompozowalno\u015bci\u0105 dalej jest najlepszym \u015brodowiskiem pracy. Mimo, \u017ce autor jest die-hard fanem CLI (i Vima), dzieli si\u0119 on swoimi w\u0105tpliwo\u015bciami. G\u0142\u00f3wne wady kt\u00f3re wskazuje to fakt, jak trudno jednak eksperymentuje si\u0119 z \u0142\u0105czeniem komenda, a tak\u017ce z ograniczeniami, kt\u00f3re wynikaj\u0105 z operowania wy\u0142\u0105cznie na tek\u015bcie w \u015bwiecie, gdy pliki binarne s\u0105 jednak istotne (i z roku na rok coraz istotniejsze).<\/p>\n","innerContent":["\n<p>A jak ju\u017c jeste\u015bmy w temacie Vima, to ostatnimi czasy czyta\u0142em \u015bwietny tekst dotycz\u0105cy <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">edytor\u00f3w developerskich w 2022<\/a>. Daje on bardzo ciekaw\u0105 perspektyw\u0119 na to, czy w 2022 dalej terminal ze swoj\u0105 kompozowalno\u015bci\u0105 dalej jest najlepszym \u015brodowiskiem pracy. Mimo, \u017ce autor jest die-hard fanem CLI (i Vima), dzieli si\u0119 on swoimi w\u0105tpliwo\u015bciami. G\u0142\u00f3wne wady kt\u00f3re wskazuje to fakt, jak trudno jednak eksperymentuje si\u0119 z \u0142\u0105czeniem komenda, a tak\u017ce z ograniczeniami, kt\u00f3re wynikaj\u0105 z operowania wy\u0142\u0105cznie na tek\u015bcie w \u015bwiecie, gdy pliki binarne s\u0105 jednak istotne (i z roku na rok coraz istotniejsze).<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5580,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-7.png\" alt=\"\" class=\"wp-image-5580\"\/><figcaption>To zreszt\u0105 nie jedyna \"ciekawa\" zasz\u0142o\u015b\u0107<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-7.png\" alt=\"\" class=\"wp-image-5580\"\/><figcaption>To zreszt\u0105 nie jedyna \"ciekawa\" zasz\u0142o\u015b\u0107<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Je\u017celi Wam te\u017c si\u0119 spodoba i b\u0119dziecie chcieli podzieli\u0107 si\u0119 z kim\u015b <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">linkiem<\/a> - uwa\u017cajcie na dziwne przekierowania (w url pojawia si\u0119 dodatkowe \/blog i <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">link<\/a> przestaje dzia\u0142a\u0107).<\/p>\n","innerContent":["\n<p>Je\u017celi Wam te\u017c si\u0119 spodoba i b\u0119dziecie chcieli podzieli\u0107 si\u0119 z kim\u015b <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">linkiem<\/a> - uwa\u017cajcie na dziwne przekierowania (w url pojawia si\u0119 dodatkowe \/blog i <a href=\"https:\/\/phaazon.net\/blog\/development-environments\">link<\/a> przestaje dzia\u0142a\u0107).<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>To \u017ceby tak podsumowa\u0107: Intellij, Vim czy Emacs?<\/p>\n","innerContent":["\n<p>To \u017ceby tak podsumowa\u0107: Intellij, Vim czy Emacs?<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"id":5566,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image.png\" alt=\"\" class=\"wp-image-5566\"\/><figcaption>A moze Nano?<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image.png\" alt=\"\" class=\"wp-image-5566\"\/><figcaption>A moze Nano?<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a><\/li><li><a href=\"https:\/\/phaazon.net\/blog\/development-environments\">Development Environments<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/www.vim.org\/vim90.php\">Vim 9.0<\/a><\/li><li><a href=\"https:\/\/phaazon.net\/blog\/development-environments\">Development Environments<\/a><\/li><\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>2. PRQL - j\u0119zyk transpiluj\u0105cy si\u0119 do SQLa<\/h2>\n","innerContent":["\n<h2>2. PRQL - j\u0119zyk transpiluj\u0105cy si\u0119 do SQLa<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Jest taka bardzo ciekawa \"zasada kciuka\": Je\u017celi masz estymowa\u0107, ile jeszcze b\u0119dzie trwa\u0142 dany trend (np. popularno\u015b\u0107 technologii), powiniene\u015b zak\u0142ada\u0107, \u017ce jeste\u015b dok\u0142adnie w po\u0142owie jego cyklu \u017cycia. Na pierwszy rzut oka wydaje si\u0119 by\u0107 to sporym uproszczeniem, ale w praktyce jest to bardzo prosta zasada. M\u00f3wi ona o tym, \u017ce skoro ludzie <a href=\"https:\/\/nautil.us\/how-well-forget-john-lennon-7906\/\">ci\u0105gle s\u0142uchaj\u0105 Johna Lennona<\/a>, to mniej wi\u0119cej do ko\u0144ca wieku wci\u0105\u017c b\u0119dzie on do\u015b\u0107 popularny. Muzyczna gwiazda sezonu letniego 2022 ma za\u015b wi\u0119ksze prawdopodobie\u0144stwo zosta\u0107 zapomniana w ci\u0105gu najbli\u017cszych 12 miesi\u0119cy, ni\u017c zosta\u0107 wieloletnim szlagierem.<\/p>\n","innerContent":["\n<p>Jest taka bardzo ciekawa \"zasada kciuka\": Je\u017celi masz estymowa\u0107, ile jeszcze b\u0119dzie trwa\u0142 dany trend (np. popularno\u015b\u0107 technologii), powiniene\u015b zak\u0142ada\u0107, \u017ce jeste\u015b dok\u0142adnie w po\u0142owie jego cyklu \u017cycia. Na pierwszy rzut oka wydaje si\u0119 by\u0107 to sporym uproszczeniem, ale w praktyce jest to bardzo prosta zasada. M\u00f3wi ona o tym, \u017ce skoro ludzie <a href=\"https:\/\/nautil.us\/how-well-forget-john-lennon-7906\/\">ci\u0105gle s\u0142uchaj\u0105 Johna Lennona<\/a>, to mniej wi\u0119cej do ko\u0144ca wieku wci\u0105\u017c b\u0119dzie on do\u015b\u0107 popularny. Muzyczna gwiazda sezonu letniego 2022 ma za\u015b wi\u0119ksze prawdopodobie\u0144stwo zosta\u0107 zapomniana w ci\u0105gu najbli\u017cszych 12 miesi\u0119cy, ni\u017c zosta\u0107 wieloletnim szlagierem.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5576,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/worriedface.gif\" alt=\"\" class=\"wp-image-5576\"\/><figcaption>Przyznam szczerze, \u017ce szuka\u0142em ale nie uda\u0142o mi si\u0119 znale\u017a\u0107 jej nazwy. Jak kto\u015b pami\u0119ta - prosz\u0119, poratujcie starego sklerotyka.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/worriedface.gif\" alt=\"\" class=\"wp-image-5576\"\/><figcaption>Przyznam szczerze, \u017ce szuka\u0142em ale nie uda\u0142o mi si\u0119 znale\u017a\u0107 jej nazwy. Jak kto\u015b pami\u0119ta - prosz\u0119, poratujcie starego sklerotyka.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Z tego te\u017c powodu mo\u017cna zak\u0142ada\u0107, \u017ce pochodz\u0105cy z lat 70-tych SQL prze\u017cyje nas wszystkich, a bohater tego akapitu - <a href=\"https:\/\/github.com\/prql\/prql\">PRQL<\/a>, kt\u00f3ry swoj\u0105 oficjaln\u0105 premier\u0119 mia\u0142 w zesz\u0142ym tygodniu - raczej ma ma\u0142e szanse na stanie si\u0119 nowym standardem. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce warto podzieli\u0107 si\u0119 z Wami tym ciekawym projektem. <a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a> jest nowoczesnym j\u0119zykiem do przekszta\u0142cania danych - prostym i wydajnym \"zast\u0119pstwem\" SQL. W przeciwie\u0144stwie do SQL, o wiele wygodniej wspiera np. zmienne i umo\u017cliwia tworzeniu pipelin\u00f3w przekszta\u0142ce\u0144 danych. Co jednak jest tutaj najciekawsze to fakt, \u017ce mo\u017ce by\u0107 u\u017cywany w zasadzie z ka\u017cd\u0105 relacyjn\u0105 baz\u0105 danych, poniewa\u017c transpiluje si\u0119 do SQLa.<\/p>\n","innerContent":["\n<p>Z tego te\u017c powodu mo\u017cna zak\u0142ada\u0107, \u017ce pochodz\u0105cy z lat 70-tych SQL prze\u017cyje nas wszystkich, a bohater tego akapitu - <a href=\"https:\/\/github.com\/prql\/prql\">PRQL<\/a>, kt\u00f3ry swoj\u0105 oficjaln\u0105 premier\u0119 mia\u0142 w zesz\u0142ym tygodniu - raczej ma ma\u0142e szanse na stanie si\u0119 nowym standardem. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce warto podzieli\u0107 si\u0119 z Wami tym ciekawym projektem. <a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a> jest nowoczesnym j\u0119zykiem do przekszta\u0142cania danych - prostym i wydajnym \"zast\u0119pstwem\" SQL. W przeciwie\u0144stwie do SQL, o wiele wygodniej wspiera np. zmienne i umo\u017cliwia tworzeniu pipelin\u00f3w przekszta\u0142ce\u0144 danych. Co jednak jest tutaj najciekawsze to fakt, \u017ce mo\u017ce by\u0107 u\u017cywany w zasadzie z ka\u017cd\u0105 relacyjn\u0105 baz\u0105 danych, poniewa\u017c transpiluje si\u0119 do SQLa.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5588,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10.png\" alt=\"\" class=\"wp-image-5588\"\/><figcaption>Ja troch\u0119 Tw\u00f3rc\u00f3w rozumiem<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/image-10.png\" alt=\"\" class=\"wp-image-5588\"\/><figcaption>Ja troch\u0119 Tw\u00f3rc\u00f3w rozumiem<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Ca\u0142o\u015b\u0107 prezentuje si\u0119 nast\u0119puj\u0105co:<\/p>\n","innerContent":["\n<p>Ca\u0142o\u015b\u0107 prezentuje si\u0119 nast\u0119puj\u0105co:<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/code","attrs":[],"innerBlocks":[],"innerHTML":"\n<pre class=\"wp-block-code\"><code>from employees\nfilter start_date &gt; @2021-01-01               \nderive &#91;                                      \n  gross_salary = salary + (tax ?? 0),         \n  gross_cost = gross_salary + benefits_cost,  \n]\nfilter gross_cost &gt; 0\ngroup &#91;title, country] (                      \n  aggregate &#91;                                 \n    average gross_salary,\n    sum_gross_cost = sum gross_cost,          \n  ]\n)\nfilter sum_gross_cost &gt; 100000                \nderive id = f\"{title}_{country}\"              \nsort &#91;sum_gross_cost, -country]               \ntake 1..20                                    \nFor more on the lang\n<\/code><\/pre>\n","innerContent":["\n<pre class=\"wp-block-code\"><code>from employees\nfilter start_date &gt; @2021-01-01               \nderive &#91;                                      \n  gross_salary = salary + (tax ?? 0),         \n  gross_cost = gross_salary + benefits_cost,  \n]\nfilter gross_cost &gt; 0\ngroup &#91;title, country] (                      \n  aggregate &#91;                                 \n    average gross_salary,\n    sum_gross_cost = sum gross_cost,          \n  ]\n)\nfilter sum_gross_cost &gt; 100000                \nderive id = f\"{title}_{country}\"              \nsort &#91;sum_gross_cost, -country]               \ntake 1..20                                    \nFor more on the lang\n<\/code><\/pre>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Tak jak zacz\u0105\u0142em, raczej nie spodziewam si\u0119, \u017ce ca\u0142o\u015b\u0107 oka\u017ce si\u0119 by\u0107 wielkim sukcesem. Z SQL-em jest jak z QWERTY - jego zalet\u0105 jest nie to, \u017ce to najlepszy format, ale popularno\u015b\u0107 i bycie znanym w zasadzie przez ka\u017cdego. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce PRQL to na tyle interesuj\u0105cy projekt, \u017ce warto aby\u015bcie o nim wiedzieli. SQL to nie JavaScript, \u017ce codziennie pojawia si\u0119 jaki\u015b j\u0119zyk kt\u00f3ry si\u0119 do niego transpiluje.<\/p>\n","innerContent":["\n<p>Tak jak zacz\u0105\u0142em, raczej nie spodziewam si\u0119, \u017ce ca\u0142o\u015b\u0107 oka\u017ce si\u0119 by\u0107 wielkim sukcesem. Z SQL-em jest jak z QWERTY - jego zalet\u0105 jest nie to, \u017ce to najlepszy format, ale popularno\u015b\u0107 i bycie znanym w zasadzie przez ka\u017cdego. W dalszym ci\u0105gu jednak stwierdzi\u0142em, \u017ce PRQL to na tyle interesuj\u0105cy projekt, \u017ce warto aby\u015bcie o nim wiedzieli. SQL to nie JavaScript, \u017ce codziennie pojawia si\u0119 jaki\u015b j\u0119zyk kt\u00f3ry si\u0119 do niego transpiluje.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5572,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Rm8XGh7.png\" alt=\"\" class=\"wp-image-5572\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Rm8XGh7.png\" alt=\"\" class=\"wp-image-5572\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a><\/li><li><a href=\"https:\/\/github.com\/prql\/prql\">PRQL - Git Repo<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/prql-lang.org\/\">PRQL<\/a><\/li><li><a href=\"https:\/\/github.com\/prql\/prql\">PRQL - Git Repo<\/a><\/li><\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>3. Git otrzymuje lepsze wsparcie dla Monorepo<\/h2>\n","innerContent":["\n<h2>3. Git otrzymuje lepsze wsparcie dla Monorepo<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A na koniec, nowy Git. Podejrzewam, \u017ce wi\u0119cej ni\u017c 90% z czytaj\u0105cych u\u017cywa tego narz\u0119dzia, ale praktycznie nikt nie \u015bledzi pojawiaj\u0105cych si\u0119 w nimi nowo\u015bci i poprzestaje na bazowych 20% mo\u017cliwo\u015bci tego narz\u0119dzia. Tak naprawd\u0119 wcale si\u0119 temu nie dziwie - Git jest mocno \"feature-complete\" i rzadko pojawiaj\u0105 si\u0119 w nim nowo\u015bci, kt\u00f3re mo\u017cna w codziennej pracy.<\/p>\n","innerContent":["\n<p>A na koniec, nowy Git. Podejrzewam, \u017ce wi\u0119cej ni\u017c 90% z czytaj\u0105cych u\u017cywa tego narz\u0119dzia, ale praktycznie nikt nie \u015bledzi pojawiaj\u0105cych si\u0119 w nimi nowo\u015bci i poprzestaje na bazowych 20% mo\u017cliwo\u015bci tego narz\u0119dzia. Tak naprawd\u0119 wcale si\u0119 temu nie dziwie - Git jest mocno \"feature-complete\" i rzadko pojawiaj\u0105 si\u0119 w nim nowo\u015bci, kt\u00f3re mo\u017cna w codziennej pracy.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>My\u015bl\u0119, \u017ce pewn\u0105 szans\u0119 na prze\u0142amanie tego trendu przynosi <a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a>. Nowa wersja przynosi min. lepszy garbage collector (tak, Git ma wbudowane GC) czy \"uprodukcyjnienie\" wprowadzonych niedawno Sparse Index, pozwalaj\u0105cy pracowa\u0107 z olbrzymimi repozytoriami dzi\u0119ki r\u00f3wnoczesnym operowaniu wy\u0142\u0105cznie na \"podga\u0142\u0119zi\" ca\u0142ego drzewa. Najwi\u0119ksz\u0105 nowo\u015b\u0107 nowego wydania r\u00f3wnie\u017c doceni\u0105 w\u0142a\u015bnie u\u017cytkownicy du\u017cych Monorepo - Git wprowadza bowiem natywny monitor plik\u00f3w. Do tej pory wiele operacji wykonywa\u0142y si\u0119 synchronicznie, ju\u017c po odpaleniu konkretnej komendy, co w przypadku du\u017cego codebase trwa\u0142o bardzo d\u0142ugo. Teraz Git b\u0119dzie m\u00f3g\u0142 w tle przygotowywa\u0107 wyniki, kt\u00f3re u\u017cytkownik b\u0119dzie otrzymywa\u0107 od razu np. poprzez komend\u0119 <code>git status<\/code>. Tematowi temu GitHub <a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">po\u015bwi\u0119ci\u0142 ca\u0142y artyku\u0142.<\/a>.<\/p>\n","innerContent":["\n<p>My\u015bl\u0119, \u017ce pewn\u0105 szans\u0119 na prze\u0142amanie tego trendu przynosi <a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a>. Nowa wersja przynosi min. lepszy garbage collector (tak, Git ma wbudowane GC) czy \"uprodukcyjnienie\" wprowadzonych niedawno Sparse Index, pozwalaj\u0105cy pracowa\u0107 z olbrzymimi repozytoriami dzi\u0119ki r\u00f3wnoczesnym operowaniu wy\u0142\u0105cznie na \"podga\u0142\u0119zi\" ca\u0142ego drzewa. Najwi\u0119ksz\u0105 nowo\u015b\u0107 nowego wydania r\u00f3wnie\u017c doceni\u0105 w\u0142a\u015bnie u\u017cytkownicy du\u017cych Monorepo - Git wprowadza bowiem natywny monitor plik\u00f3w. Do tej pory wiele operacji wykonywa\u0142y si\u0119 synchronicznie, ju\u017c po odpaleniu konkretnej komendy, co w przypadku du\u017cego codebase trwa\u0142o bardzo d\u0142ugo. Teraz Git b\u0119dzie m\u00f3g\u0142 w tle przygotowywa\u0107 wyniki, kt\u00f3re u\u017cytkownik b\u0119dzie otrzymywa\u0107 od razu np. poprzez komend\u0119 <code>git status<\/code>. Tematowi temu GitHub <a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">po\u015bwi\u0119ci\u0142 ca\u0142y artyku\u0142.<\/a>.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Jak wi\u0119c wida\u0107, Git bardzo stara si\u0119 dostosowa\u0107 jako narz\u0119dzie do bie\u017c\u0105cych trend\u00f3w, a nie da si\u0119 ukry\u0107 \u017ce takim trendem jest w\u0142a\u015bnie coraz wi\u0119ksza popularno\u015b\u0107 monorepo. Je\u017celi chcieliby\u015bcie si\u0119 dowiedzie\u0107, dlaczego coraz wi\u0119cej firm interesuje si\u0119 tym podej\u015bciem, ostatnio trafi\u0142em na \u015bwietn\u0105 stron\u0119 <a href=\"https:\/\/monorepo.tools\/\">\"Monorepo Explained\"<\/a>, kt\u00f3ra stanowi swoiste FAQ oraz zbi\u00f3r instrukcji jak zacz\u0105\u0107. Polecam serdecznie.<\/p>\n","innerContent":["\n<p>Jak wi\u0119c wida\u0107, Git bardzo stara si\u0119 dostosowa\u0107 jako narz\u0119dzie do bie\u017c\u0105cych trend\u00f3w, a nie da si\u0119 ukry\u0107 \u017ce takim trendem jest w\u0142a\u015bnie coraz wi\u0119ksza popularno\u015b\u0107 monorepo. Je\u017celi chcieliby\u015bcie si\u0119 dowiedzie\u0107, dlaczego coraz wi\u0119cej firm interesuje si\u0119 tym podej\u015bciem, ostatnio trafi\u0142em na \u015bwietn\u0105 stron\u0119 <a href=\"https:\/\/monorepo.tools\/\">\"Monorepo Explained\"<\/a>, kt\u00f3ra stanowi swoiste FAQ oraz zbi\u00f3r instrukcji jak zacz\u0105\u0107. Polecam serdecznie.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5582,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/AgedWiltedHornedtoad-size_restricted.gif\" alt=\"\" class=\"wp-image-5582\"\/><figcaption>Czeka\u0142em od Marca, \u017ceby znale\u017a\u0107 dobr\u0105 okazj\u0119 do podrzucenia tego linku.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/AgedWiltedHornedtoad-size_restricted.gif\" alt=\"\" class=\"wp-image-5582\"\/><figcaption>Czeka\u0142em od Marca, \u017ceby znale\u017a\u0107 dobr\u0105 okazj\u0119 do podrzucenia tego linku.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Tak na zako\u0144czenie przyznam si\u0119, \u017ce akurat lubi\u0119 zmiany w Git-cie \u015bledzi\u0107. Nie dlatego, \u017ce rzeczywi\u015bcie nagle zaczynam u\u017cywa\u0107 tych nowych strategii mergowania czy benchmarkuje wydajno\u015b\u0107. Po prostu akurat gitowe nowo\u015bci zwykle bywaj\u0105 bardzo interesuj\u0105c\u0105 \"algorytmik\u0105 stosowan\u0105\" - repozytorium na dobr\u0105 spraw\u0119 to taka du\u017ca drzewiasta struktura danych, a tw\u00f3rcy Gita wykonuj\u0105 na niej bardzo interesuj\u0105ce transformacje. To troch\u0119 ten sam poziom \"frajdy\", kt\u00f3rym dzieli\u0142em si\u0119 swego czasu opisuj\u0105c moj\u0105 dziwn\u0105 mi\u0142o\u015b\u0107 do in\u017cynierii emulator\u00f3w \ud83e\udd37\u200d\u2642\ufe0f. A wspominam to tylko dlatego, \u017ceby podzieli\u0107 si\u0119 z Wami cudown\u0105 publikacj\u0105 na temat <a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">Mapper Chip\u00f3w oryginalnego NESa<\/a>! Dzi\u0119ki artyku\u0142owi dowiecie si\u0119, jak na konsoli kt\u00f3ra ma 2kb RAMu mo\u017cna uruchomi\u0107 Dooma, kt\u00f3ry wymaga 8Mb.<\/p>\n","innerContent":["\n<p>Tak na zako\u0144czenie przyznam si\u0119, \u017ce akurat lubi\u0119 zmiany w Git-cie \u015bledzi\u0107. Nie dlatego, \u017ce rzeczywi\u015bcie nagle zaczynam u\u017cywa\u0107 tych nowych strategii mergowania czy benchmarkuje wydajno\u015b\u0107. Po prostu akurat gitowe nowo\u015bci zwykle bywaj\u0105 bardzo interesuj\u0105c\u0105 \"algorytmik\u0105 stosowan\u0105\" - repozytorium na dobr\u0105 spraw\u0119 to taka du\u017ca drzewiasta struktura danych, a tw\u00f3rcy Gita wykonuj\u0105 na niej bardzo interesuj\u0105ce transformacje. To troch\u0119 ten sam poziom \"frajdy\", kt\u00f3rym dzieli\u0142em si\u0119 swego czasu opisuj\u0105c moj\u0105 dziwn\u0105 mi\u0142o\u015b\u0107 do in\u017cynierii emulator\u00f3w \ud83e\udd37\u200d\u2642\ufe0f. A wspominam to tylko dlatego, \u017ceby podzieli\u0107 si\u0119 z Wami cudown\u0105 publikacj\u0105 na temat <a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">Mapper Chip\u00f3w oryginalnego NESa<\/a>! Dzi\u0119ki artyku\u0142owi dowiecie si\u0119, jak na konsoli kt\u00f3ra ma 2kb RAMu mo\u017cna uruchomi\u0107 Dooma, kt\u00f3ry wymaga 8Mb.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5583,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-1024x530.png\" alt=\"\" class=\"wp-image-5583\"\/><figcaption>Mam nadzieje, \u017ce nie tylko mnie jaraj\u0105 takie rzeczy \ud83d\ude03<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/07\/Untitled-1024x530.png\" alt=\"\" class=\"wp-image-5583\"\/><figcaption>Mam nadzieje, \u017ce nie tylko mnie jaraj\u0105 takie rzeczy \ud83d\ude03<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a><\/li><li><a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">Improve Git monorepo performance with a file system monitor<\/a><\/li><li><a href=\"https:\/\/monorepo.tools\/\">Monorepo Explained<\/a><\/li><li><a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">What made the NES interesting?<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/github.blog\/2022-06-27-highlights-from-git-2-37\/\">Git 2.37<\/a><\/li><li><a href=\"https:\/\/github.blog\/2022-06-29-improve-git-monorepo-performance-with-a-file-system-monitor\/\">Improve Git monorepo performance with a file system monitor<\/a><\/li><li><a href=\"https:\/\/monorepo.tools\/\">Monorepo Explained<\/a><\/li><li><a href=\"https:\/\/nicole.express\/2022\/the-nes-as-an-artifact.html\">What made the NES interesting?<\/a><\/li><\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>PS: Jakby kto\u015b si\u0119 zastnawia\u0142 sk\u0105d taka, a nie inna miniaturka... zapowiedziano <a href=\"https:\/\/www.youtube.com\/watch?v=4eKT3kseiAY\" rel=\"sponsored nofollow\"><strong>Persona 5 Royal<\/strong> na Switcha<\/a> \ud83e\udd73<\/p>\n","innerContent":["\n<p>PS: Jakby kto\u015b si\u0119 zastnawia\u0142 sk\u0105d taka, a nie inna miniaturka... zapowiedziano <a href=\"https:\/\/www.youtube.com\/watch?v=4eKT3kseiAY\" rel=\"sponsored nofollow\"><strong>Persona 5 Royal<\/strong> na Switcha<\/a> \ud83e\udd73<\/p>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9949","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=9949"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9949\/revisions"}],"predecessor-version":[{"id":10475,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9949\/revisions\/10475"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media\/8810"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=9949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=9949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=9949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}