{"id":10020,"date":"2022-01-13T14:48:21","date_gmt":"2022-01-13T13:48:21","guid":{"rendered":"https:\/\/vived.io\/frontend-thursday-vol-71\/"},"modified":"2022-09-19T13:16:33","modified_gmt":"2022-09-19T11:16:33","slug":"frontend-thursday-vol-71","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/","title":{"rendered":"Frontend Thursday vol. 71 &#8211; po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js"},"content":{"rendered":"\n<h2 id=\"1-czas-pozegnac-angular-js\" data-num=1>1. Czas po\u017cegna\u0107 angular.js \ud83e\udea6<\/h2>\n\n\n\n<p>Wsparcie dla angular.js mia\u0142o zosta\u0107 wycofane ju\u017c w lipcu tego, ale nied\u0142ugo po wybuchu pandemii ze wzgl\u0119du na perturbacje przez ni\u0105 wywo\u0142ane Google zdecydowa\u0142 si\u0119 da\u0107 firmom dodatkowe p\u00f3\u0142 roku wsparcia. Dodatkowy czas w\u0142a\u015bnie dobieg\u0142 ko\u0144ca i 31 grudnia 2021 roku oficjalnie po\u017cegnali\u015bmy angular.js, (znany te\u017c jako Angular 1.x). Oczywi\u015bcie framework dalej dost\u0119pny jest w npm, ale Google nie planuje dalszych \u0142atek. Nie my\u015blcie r\u00f3wnie\u017c, \u017ce jest to koniec samego Angulara &#8211; Angular 13 ma si\u0119 \u015bwietnie i ju\u017c za 2-3 miesi\u0105ce mo\u017cemy oczekiwa\u0107 pojawienia si\u0119 Angulara 14.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"400\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-2.gif\" alt=\"\" class=\"wp-image-3652\"\/><figcaption>Je\u015bli ktokolwiek korzysta z angular.js na produkcji to w\u0142a\u015bnie czas na to, \u017ceby zacz\u0105\u0107 panikowa\u0107.<\/figcaption><\/figure><\/div>\n\n\n\n<p>Z okazji pogrzebu angular.js powspominajmy troch\u0119 stare dobre czasy. Angular powsta\u0142 w 2010 roku jako projekt rozwijany po godzinach przez Misko Heveryego oraz Adama Abronsa. Misko Hevery pracowa\u0142 wtedy od kilku tygodni nad projektem Google Feedback. Zasugerowa\u0142 on swojemu managerowi, \u017ce jest w stanie przypisa\u0107 go w przeci\u0105gu dw\u00f3ch tygodni do rozwijanej przez siebie biblioteki. Manager da\u0142 si\u0119 przekona\u0107. Misko przekroczy\u0142 deadline o tydzie\u0144, ale uda\u0142o mu si\u0119 zredukowa\u0107 kod z 17k do 1.5k linii kodu. Od tego czasu Google zacz\u0105\u0142 inwestowa\u0107 w Angulara. Rzecz jasna r\u00f3wnolegle rozwijane by\u0142y alternatywne narz\u0119dzia wspieraj\u0105ce web development, ale z biegiem czasu to w\u0142a\u015bnie Angular sta\u0142 si\u0119 najcz\u0119\u015bciej u\u017cywanym frameworkiem w Google. Obecnie wykorzystuje go ponad 1500 aplikacji utrzymywanych przez firm\u0119.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"400\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-1.gif\" alt=\"\" class=\"wp-image-3645\"\/><figcaption>Ciekawostka: W ramach test\u00f3w regresji wszystkie utrzymywane przez Google aplikacje s\u0105 aktualizowane do nadchodz\u0105cej wersji Angulara przed jej publikacj\u0105.<\/figcaption><\/figure><\/div>\n\n\n\n<p>Wracaj\u0105c do g\u0142\u00f3wnego w\u0105tku historii. Angular.js w wersji 1.0 zosta\u0142 opublikowany w 2012 roku i wraz z up\u0142ywem lat zyskiwa\u0142 na popularno\u015bci. Konkurencja w postaci backbone.js i ember.js zosta\u0142a w tyle. Pod wzgl\u0119dem gwiazdek na Githubie, w szczytowym momencie uda\u0142o si\u0119 wyprzedzi\u0107 nawet jquery!<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"Most Popular JavaScript Frameworks 2012-2019\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/3xKxSNw26ZU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<p>&nbsp; <\/p>\n\n\n\n<p>Przed zespo\u0142em rozwijaj\u0105cym Angulara ros\u0142a jednak coraz wi\u0119ksza \u015bciana nie do przeskoczenia. By\u0142o ni\u0105 osi\u0105gni\u0119cie lepszego bezpiecze\u0144stwo typ\u00f3w i obej\u015bcie ogranicze\u0144 przyj\u0119tego u podstaw modelu. Podj\u0119ta zosta\u0142a decyzja o ca\u0142kowitym przepisaniu frameworku do postaci w jakiej znamy go dzisiaj. Zbieg okoliczno\u015bci sprawi\u0142, \u017ce nied\u0142ugo przed og\u0142oszeniem prac nad Angularem 2 na rynku pojawi\u0142a si\u0119 ma\u0142o znana biblioteka od Facebooka. Deweloperzy posiadaj\u0105cy nieuchronn\u0105 wizj\u0119 przepisanie swoich aplikacji zacz\u0119li rozgl\u0105da\u0107 si\u0119 za rozwi\u0105zaniami alternatywnymi tak trafiali w\u0142a\u015bnie na Reacta.<\/p>\n\n\n\n<p>By\u0107 mo\u017ce w historii tej jest wi\u0119cej mitu ni\u017c prawdy, a do sukcesu Reacta z pewno\u015bci\u0105 przyczyni\u0142o si\u0119 wi\u0119cej czynnik\u00f3w ni\u017c tylko pora\u017cka angular.js. Patrz\u0105c na gwiazdki na GitHubie w momencie premiery Angular 1.x by\u0142 czterokrotnie popularniejszym rozwi\u0105zaniem ni\u017c React, a Angular 2.0 nigdy nie zbli\u017cy\u0142 si\u0119 nawet do wynik\u00f3w frameworka od Google.<\/p>\n\n\n\n<p>angular.js w momencie premiery by\u0142 rozwi\u0105zaniem innowacyjnym, ale z czasem ros\u0142o grono jego przeciwnik\u00f3w. Angular 2 pomimo ca\u0142kowicie innego API odziedziczy\u0142 z\u0142\u0105 pras\u0119. Sytuacj\u0119 tylko pogorszy\u0142a decyzja o nazwaniu Angulara 2 po prostu Angularem i przemianowaniu Angulara 1.x na angular.js. Do dzisiaj w sieci z \u0142atwo\u015bci\u0105 znale\u017a\u0107 mo\u017cna raporty, kt\u00f3re przedstawiaj\u0105 satysfakcj\u0119 deweloper\u00f3w z korzystania z Angulara jako jedn\u0105 kategori\u0119. Niestety nigdy nie dowiemy si\u0119 jak wygl\u0105da\u0142by rozk\u0142ad si\u0142 w\u015br\u00f3d frontendowych framework\u00f3w gdyby Google spr\u00f3bowa\u0142 bardziej iteracyjnego podej\u015bcia lub gdyby zdecydowa\u0142 si\u0119 na rebranding swojego frameworku.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"559\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6137t1.jpeg\" alt=\"\" class=\"wp-image-3646\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6137t1.jpeg 500w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6137t1-268x300.jpeg 268w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/figure><\/div>\n\n\n\n<p>My tymczasem oddajmy angular.js nale\u017cne mu honory &#8211; niezale\u017cnie od tego co s\u0105dzicie na jego temat jest to spory kawa\u0142ek historii web developmentu.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"394\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/fetchimage.jpeg\" alt=\"\" class=\"wp-image-3647\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/fetchimage.jpeg 700w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/fetchimage-300x169.jpeg 300w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<p><a href=\"https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a\">https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a<\/a><\/p>\n\n\n\n<h2 id=\"2-ciag-dalszy-historii-faker-js\" data-num=2>2. Ci\u0105g dalszy historii faker.js \ud83d\ude48<\/h2>\n\n\n\n<p>Zwykle nie wracamy do tego samego tematu dwa tygodnie z rz\u0119du, jednak wok\u00f3\u0142&nbsp; Maraka Squires naros\u0142o w ostatnim czasie tyle dyskusji i kontrowersji, \u017ce nie mog\u0142em sobie odm\u00f3wi\u0107 wyj\u0105tku od regu\u0142y. Przedstawiaj\u0105c sytuacj\u0119 sprzed tygodnia w telegraficznym skr\u00f3cie: biblioteka faker.js zosta\u0142a ca\u0142kowicie skasowana przez swojego tw\u00f3rc\u0119 w ramach manifestu zwracaj\u0105cego uwag\u0119 na tajemnicz\u0105 \u015bmier\u0107 aktywisty Aarona Shwartz. Je\u015bli interesuj\u0105 Was szczeg\u00f3\u0142y to zapraszam do poprzedniej edycji naszego przegl\u0105du.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"577\" height=\"432\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6138dq.jpeg\" alt=\"\" class=\"wp-image-3648\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6138dq.jpeg 577w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6138dq-300x225.jpeg 300w\" sizes=\"auto, (max-width: 577px) 100vw, 577px\" \/><\/figure><\/div>\n\n\n\n<p>Co wydarzy\u0142o si\u0119 odk\u0105d ostatni raz opisywali\u015bmy ca\u0142\u0105 sytuacj\u0119? Zacznijmy od npm wycofuj\u0105cego wadliw\u0105 paczk\u0119 ze swojego repozytorium, oraz Githuba zawieszaj\u0105cego konto Maraka. Akcje podj\u0119te przez serwisy by\u0142y zgodne z ich regulaminem, ale mimo tego wzbudzi\u0142y spore kontrowersje. Cz\u0119\u015b\u0107 deweloper\u00f3w przyklaskuje podj\u0119tym akcjom i zwraca uwag\u0119 na potrzeb\u0119 przeciwdzia\u0142ania toksycznym akcjom. Pozosta\u0142a cz\u0119\u015b\u0107 zapowiada porzucenie GitHuba i m\u00f3wi o potrzebie przygotowania rozproszonej nie nadzorowanej alternatywy do kontroli wersji. Pikanterii ca\u0142emu zaj\u015bciu nadaje fakt, \u017ce Marak utrzymywa\u0142 dziesi\u0105tki, je\u015bli nie setki ma\u0142ych bibliotek do kt\u00f3rych z dnia na dzie\u0144 straci\u0142 dost\u0119p.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"twitter-tweet\" data-width=\"500\" data-dnt=\"true\"><p lang=\"en\" dir=\"ltr\">NPM has reverted to a previous version of the faker.js package and Github has suspended my access to all public and private projects. I have 100s of projects. <a href=\"https:\/\/twitter.com\/hashtag\/AaronSwartz?src=hash&amp;ref_src=twsrc%5Etfw\">#AaronSwartz<\/a> <a href=\"https:\/\/t.co\/zFddwn631S\">pic.twitter.com\/zFddwn631S<\/a><\/p>&mdash; marak.com (@marak) <a href=\"https:\/\/twitter.com\/marak\/status\/1479200803948830724?ref_src=twsrc%5Etfw\">January 6, 2022<\/a><\/blockquote><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script>\n<\/div><\/figure>\n\n\n\n<p>Wszystko wskazuje na to, \u017ce Marak finalnie odzyska\u0142 dost\u0119p do swojego konta na GitHubie, bo ju\u017c 10 styczna kolejna biblioteka sta\u0142a si\u0119 cz\u0119\u015bci\u0105 jego manifestu. Tym razem na tapet wzi\u0119ty zosta\u0142 color.js, kt\u00f3ry u\u017cywany jest w node do kolorowania tekstu w konsoli. W commicie o niepozornej nazwie `American flag` dodana zosta\u0142a funkcjonalno\u015b\u0107, kt\u00f3ra po zainicjalizowaniu biblioteki kilkukrotnie wpisuje w konsoli LIBERTY, a nast\u0119pnie wpada\u0142a w niesko\u0144czon\u0105 p\u0119tl\u0119 wy\u015bwietlaj\u0105c\u0105 losowe niestandardowe znaki ASCII.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1001\" height=\"632\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81.png\" alt=\"\" class=\"wp-image-3649\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81.png 1001w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81-300x189.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81-768x485.png 768w\" sizes=\"auto, (max-width: 1001px) 100vw, 1001px\" \/><\/figure><\/div>\n\n\n\n<p>Sam Marak odni\u00f3s\u0142 si\u0119 do ca\u0142ego zaj\u015bcia otwieraj\u0105ca Issue na Guthubie, w kt\u00f3rym ironicznie deklaruje, \u017ce ci\u0119\u017cko pracuje nad napraw\u0105 buga. Cz\u0119\u015b\u0107 os\u00f3b w zaistnia\u0142ej sytuacji doszukuje si\u0119 odniesie\u0144 do innego manifestu Maraka, kt\u00f3ry mia\u0142 miejsce w 2020 roku. Wtedy to na GitHubie opublikowa\u0142 on wpis m\u00f3wi\u0105cy o porzuceniu wszystkich utrzymywanych przez niego bibliotek je\u015bli ogromne korporacje nie zaczn\u0105 w ko\u0144cu p\u0142aci\u0107 tw\u00f3rcom Open Source. Trzeba przyzna\u0107, \u017ce Marak zwraca uwag\u0119 na wa\u017cne i interesuj\u0105ce tematy, ale robi to w bardzo drastyczny spos\u00f3b.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"597\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-1024x597.png\" alt=\"\" class=\"wp-image-3650\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-1024x597.png 1024w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-300x175.png 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-768x447.png 768w, https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27.png 1284w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p>Open Source nie cierpi pustki, dlatego je\u015bli szukacie alternatywy dla faker.js, to Netanel Basal (tw\u00f3rca biblioteki do zarz\u0105dzania stanem aplikacji Akita oraz rozpoznawalna osobisto\u015b\u0107 w \u015bwiecie Angulara) zaimplementowa\u0142 swoj\u0105 alternatyw\u0119 o nazwie falso. Pozostaje tylko czeka\u0107, a\u017c kto\u015b pokusi si\u0119 r\u00f3wnie\u017c o przepisanie color.js \ud83d\ude09<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\">import { cityName, streetAddress, dog, bear, databaseEngine } from &#039;@ngneat\/falso&#039;;\n\ncityName(); \/\/ Lake Charles\nstreetAddress(); \/\/ 58739 Bridie Mission\ndog(); \/\/ Newfoundland\nbear(); \/\/ Sloth bear\ndatabaseEngine(); \/\/ CSV<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<p><a href=\"https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected\">https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected<\/a><br><a href=\"https:\/\/github.com\/ngneat\/falso\">https:\/\/github.com\/ngneat\/falso<\/a><br><a href=\"https:\/\/github.com\/Marak\/colors.js\/issues\/285\">https:\/\/github.com\/Marak\/colors.js\/issues\/285<\/a><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>W minionym tygodniu ostatecznie po\u017cegnali\u015bmy angular.js. Opr\u00f3cz tego wiele si\u0119 dzia\u0142o w \u015bwiecie plotek i ploteczek, bo ci\u0105gu dalszego doczeka\u0142a si\u0119 historia tajemniczego znikni\u0119cia biblioteki faker.js. Przygotujcie sobie ciep\u0142\u0105 herbat\u0119, rozsi\u0105d\u017acie si\u0119 wygodnie w fotelu i zapraszamy na kolejn\u0105 edycj\u0119 naszego frontendowego przegl\u0105du prasy!<\/p>\n","protected":false},"author":12,"featured_media":7885,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[273],"tags":[],"class_list":["post-10020","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-frontend-pl"],"acf":{"weekly_summary":true,"push_notification_image":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/FRONTEND.png","estimated_reading_time":"5","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>Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - 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\/frontend-thursday-vol-71\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - Vived\" \/>\n<meta property=\"og:description\" content=\"W minionym tygodniu ostatecznie po\u017cegnali\u015bmy angular.js. Opr\u00f3cz tego wiele si\u0119 dzia\u0142o w \u015bwiecie plotek i ploteczek, bo ci\u0105gu dalszego doczeka\u0142a si\u0119 historia tajemniczego znikni\u0119cia biblioteki faker.js. Przygotujcie sobie ciep\u0142\u0105 herbat\u0119, rozsi\u0105d\u017acie si\u0119 wygodnie w fotelu i zapraszamy na kolejn\u0105 edycj\u0119 naszego frontendowego przegl\u0105du prasy!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2022-01-13T13:48:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:16:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/FRONTEND.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=\"Tomasz Borowicz\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/FRONTEND.png\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\"},\"author\":{\"name\":\"Tomasz Borowicz\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb\"},\"headline\":\"Frontend Thursday vol. 71 &#8211; po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js\",\"datePublished\":\"2022-01-13T13:48:21+00:00\",\"dateModified\":\"2022-09-19T11:16:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\"},\"wordCount\":1121,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg\",\"articleSection\":[\"Frontend\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\",\"url\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\",\"name\":\"Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg\",\"datePublished\":\"2022-01-13T13:48:21+00:00\",\"dateModified\":\"2022-09-19T11:16:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Frontend Thursday vol. 71 &#8211; po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js\"}]},{\"@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\/9d2a72fe7d0dfbb4092675afbab742bb\",\"name\":\"Tomasz Borowicz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g\",\"caption\":\"Tomasz Borowicz\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - 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\/frontend-thursday-vol-71\/","og_locale":"pl_PL","og_type":"article","og_title":"Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - Vived","og_description":"W minionym tygodniu ostatecznie po\u017cegnali\u015bmy angular.js. Opr\u00f3cz tego wiele si\u0119 dzia\u0142o w \u015bwiecie plotek i ploteczek, bo ci\u0105gu dalszego doczeka\u0142a si\u0119 historia tajemniczego znikni\u0119cia biblioteki faker.js. Przygotujcie sobie ciep\u0142\u0105 herbat\u0119, rozsi\u0105d\u017acie si\u0119 wygodnie w fotelu i zapraszamy na kolejn\u0105 edycj\u0119 naszego frontendowego przegl\u0105du prasy!","og_url":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/","og_site_name":"Vived","article_published_time":"2022-01-13T13:48:21+00:00","article_modified_time":"2022-09-19T11:16:33+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/FRONTEND.png","type":"image\/png"}],"author":"Tomasz Borowicz","twitter_card":"summary_large_image","twitter_image":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/FRONTEND.png","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/"},"author":{"name":"Tomasz Borowicz","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb"},"headline":"Frontend Thursday vol. 71 &#8211; po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js","datePublished":"2022-01-13T13:48:21+00:00","dateModified":"2022-09-19T11:16:33+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/"},"wordCount":1121,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg","articleSection":["Frontend"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/","url":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/","name":"Frontend Thursday vol. 71 - po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg","datePublished":"2022-01-13T13:48:21+00:00","dateModified":"2022-09-19T11:16:33+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/czynacisnales_xu69.jpeg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-71\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"Frontend Thursday vol. 71 &#8211; po\u017cegnanie angular.js i ci\u0105g dalszy historii faker.js"}]},{"@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\/9d2a72fe7d0dfbb4092675afbab742bb","name":"Tomasz Borowicz","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g","caption":"Tomasz Borowicz"}}]}},"blocks_vived":[{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>1. Czas po\u017cegna\u0107 angular.js \ud83e\udea6<\/h2>\n","innerContent":["\n<h2>1. Czas po\u017cegna\u0107 angular.js \ud83e\udea6<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wsparcie dla angular.js mia\u0142o zosta\u0107 wycofane ju\u017c w lipcu tego, ale nied\u0142ugo po wybuchu pandemii ze wzgl\u0119du na perturbacje przez ni\u0105 wywo\u0142ane Google zdecydowa\u0142 si\u0119 da\u0107 firmom dodatkowe p\u00f3\u0142 roku wsparcia. Dodatkowy czas w\u0142a\u015bnie dobieg\u0142 ko\u0144ca i 31 grudnia 2021 roku oficjalnie po\u017cegnali\u015bmy angular.js, (znany te\u017c jako Angular 1.x). Oczywi\u015bcie framework dalej dost\u0119pny jest w npm, ale Google nie planuje dalszych \u0142atek. Nie my\u015blcie r\u00f3wnie\u017c, \u017ce jest to koniec samego Angulara - Angular 13 ma si\u0119 \u015bwietnie i ju\u017c za 2-3 miesi\u0105ce mo\u017cemy oczekiwa\u0107 pojawienia si\u0119 Angulara 14.<\/p>\n","innerContent":["\n<p>Wsparcie dla angular.js mia\u0142o zosta\u0107 wycofane ju\u017c w lipcu tego, ale nied\u0142ugo po wybuchu pandemii ze wzgl\u0119du na perturbacje przez ni\u0105 wywo\u0142ane Google zdecydowa\u0142 si\u0119 da\u0107 firmom dodatkowe p\u00f3\u0142 roku wsparcia. Dodatkowy czas w\u0142a\u015bnie dobieg\u0142 ko\u0144ca i 31 grudnia 2021 roku oficjalnie po\u017cegnali\u015bmy angular.js, (znany te\u017c jako Angular 1.x). Oczywi\u015bcie framework dalej dost\u0119pny jest w npm, ale Google nie planuje dalszych \u0142atek. Nie my\u015blcie r\u00f3wnie\u017c, \u017ce jest to koniec samego Angulara - Angular 13 ma si\u0119 \u015bwietnie i ju\u017c za 2-3 miesi\u0105ce mo\u017cemy oczekiwa\u0107 pojawienia si\u0119 Angulara 14.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3652,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-2.gif\" alt=\"\" class=\"wp-image-3652\"\/><figcaption>Je\u015bli ktokolwiek korzysta z angular.js na produkcji to w\u0142a\u015bnie czas na to, \u017ceby zacz\u0105\u0107 panikowa\u0107.<\/figcaption><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-2.gif\" alt=\"\" class=\"wp-image-3652\"\/><figcaption>Je\u015bli ktokolwiek korzysta z angular.js na produkcji to w\u0142a\u015bnie czas na to, \u017ceby zacz\u0105\u0107 panikowa\u0107.<\/figcaption><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Z okazji pogrzebu angular.js powspominajmy troch\u0119 stare dobre czasy. Angular powsta\u0142 w 2010 roku jako projekt rozwijany po godzinach przez Misko Heveryego oraz Adama Abronsa. Misko Hevery pracowa\u0142 wtedy od kilku tygodni nad projektem Google Feedback. Zasugerowa\u0142 on swojemu managerowi, \u017ce jest w stanie przypisa\u0107 go w przeci\u0105gu dw\u00f3ch tygodni do rozwijanej przez siebie biblioteki. Manager da\u0142 si\u0119 przekona\u0107. Misko przekroczy\u0142 deadline o tydzie\u0144, ale uda\u0142o mu si\u0119 zredukowa\u0107 kod z 17k do 1.5k linii kodu. Od tego czasu Google zacz\u0105\u0142 inwestowa\u0107 w Angulara. Rzecz jasna r\u00f3wnolegle rozwijane by\u0142y alternatywne narz\u0119dzia wspieraj\u0105ce web development, ale z biegiem czasu to w\u0142a\u015bnie Angular sta\u0142 si\u0119 najcz\u0119\u015bciej u\u017cywanym frameworkiem w Google. Obecnie wykorzystuje go ponad 1500 aplikacji utrzymywanych przez firm\u0119.<\/p>\n","innerContent":["\n<p>Z okazji pogrzebu angular.js powspominajmy troch\u0119 stare dobre czasy. Angular powsta\u0142 w 2010 roku jako projekt rozwijany po godzinach przez Misko Heveryego oraz Adama Abronsa. Misko Hevery pracowa\u0142 wtedy od kilku tygodni nad projektem Google Feedback. Zasugerowa\u0142 on swojemu managerowi, \u017ce jest w stanie przypisa\u0107 go w przeci\u0105gu dw\u00f3ch tygodni do rozwijanej przez siebie biblioteki. Manager da\u0142 si\u0119 przekona\u0107. Misko przekroczy\u0142 deadline o tydzie\u0144, ale uda\u0142o mu si\u0119 zredukowa\u0107 kod z 17k do 1.5k linii kodu. Od tego czasu Google zacz\u0105\u0142 inwestowa\u0107 w Angulara. Rzecz jasna r\u00f3wnolegle rozwijane by\u0142y alternatywne narz\u0119dzia wspieraj\u0105ce web development, ale z biegiem czasu to w\u0142a\u015bnie Angular sta\u0142 si\u0119 najcz\u0119\u015bciej u\u017cywanym frameworkiem w Google. Obecnie wykorzystuje go ponad 1500 aplikacji utrzymywanych przez firm\u0119.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3645,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-1.gif\" alt=\"\" class=\"wp-image-3645\"\/><figcaption>Ciekawostka: W ramach test\u00f3w regresji wszystkie utrzymywane przez Google aplikacje s\u0105 aktualizowane do nadchodz\u0105cej wersji Angulara przed jej publikacj\u0105.<\/figcaption><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/giphy-1.gif\" alt=\"\" class=\"wp-image-3645\"\/><figcaption>Ciekawostka: W ramach test\u00f3w regresji wszystkie utrzymywane przez Google aplikacje s\u0105 aktualizowane do nadchodz\u0105cej wersji Angulara przed jej publikacj\u0105.<\/figcaption><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wracaj\u0105c do g\u0142\u00f3wnego w\u0105tku historii. Angular.js w wersji 1.0 zosta\u0142 opublikowany w 2012 roku i wraz z up\u0142ywem lat zyskiwa\u0142 na popularno\u015bci. Konkurencja w postaci backbone.js i ember.js zosta\u0142a w tyle. Pod wzgl\u0119dem gwiazdek na Githubie, w szczytowym momencie uda\u0142o si\u0119 wyprzedzi\u0107 nawet jquery!<\/p>\n","innerContent":["\n<p>Wracaj\u0105c do g\u0142\u00f3wnego w\u0105tku historii. Angular.js w wersji 1.0 zosta\u0142 opublikowany w 2012 roku i wraz z up\u0142ywem lat zyskiwa\u0142 na popularno\u015bci. Konkurencja w postaci backbone.js i ember.js zosta\u0142a w tyle. Pod wzgl\u0119dem gwiazdek na Githubie, w szczytowym momencie uda\u0142o si\u0119 wyprzedzi\u0107 nawet jquery!<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/www.youtube.com\/watch?v=3xKxSNw26ZU","type":"video","providerNameSlug":"youtube","responsive":true,"className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=3xKxSNw26ZU\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=3xKxSNw26ZU\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>&nbsp; <\/p>\n","innerContent":["\n<p>&nbsp; <\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Przed zespo\u0142em rozwijaj\u0105cym Angulara ros\u0142a jednak coraz wi\u0119ksza \u015bciana nie do przeskoczenia. By\u0142o ni\u0105 osi\u0105gni\u0119cie lepszego bezpiecze\u0144stwo typ\u00f3w i obej\u015bcie ogranicze\u0144 przyj\u0119tego u podstaw modelu. Podj\u0119ta zosta\u0142a decyzja o ca\u0142kowitym przepisaniu frameworku do postaci w jakiej znamy go dzisiaj. Zbieg okoliczno\u015bci sprawi\u0142, \u017ce nied\u0142ugo przed og\u0142oszeniem prac nad Angularem 2 na rynku pojawi\u0142a si\u0119 ma\u0142o znana biblioteka od Facebooka. Deweloperzy posiadaj\u0105cy nieuchronn\u0105 wizj\u0119 przepisanie swoich aplikacji zacz\u0119li rozgl\u0105da\u0107 si\u0119 za rozwi\u0105zaniami alternatywnymi tak trafiali w\u0142a\u015bnie na Reacta.<\/p>\n","innerContent":["\n<p>Przed zespo\u0142em rozwijaj\u0105cym Angulara ros\u0142a jednak coraz wi\u0119ksza \u015bciana nie do przeskoczenia. By\u0142o ni\u0105 osi\u0105gni\u0119cie lepszego bezpiecze\u0144stwo typ\u00f3w i obej\u015bcie ogranicze\u0144 przyj\u0119tego u podstaw modelu. Podj\u0119ta zosta\u0142a decyzja o ca\u0142kowitym przepisaniu frameworku do postaci w jakiej znamy go dzisiaj. Zbieg okoliczno\u015bci sprawi\u0142, \u017ce nied\u0142ugo przed og\u0142oszeniem prac nad Angularem 2 na rynku pojawi\u0142a si\u0119 ma\u0142o znana biblioteka od Facebooka. Deweloperzy posiadaj\u0105cy nieuchronn\u0105 wizj\u0119 przepisanie swoich aplikacji zacz\u0119li rozgl\u0105da\u0107 si\u0119 za rozwi\u0105zaniami alternatywnymi tak trafiali w\u0142a\u015bnie na Reacta.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>By\u0107 mo\u017ce w historii tej jest wi\u0119cej mitu ni\u017c prawdy, a do sukcesu Reacta z pewno\u015bci\u0105 przyczyni\u0142o si\u0119 wi\u0119cej czynnik\u00f3w ni\u017c tylko pora\u017cka angular.js. Patrz\u0105c na gwiazdki na GitHubie w momencie premiery Angular 1.x by\u0142 czterokrotnie popularniejszym rozwi\u0105zaniem ni\u017c React, a Angular 2.0 nigdy nie zbli\u017cy\u0142 si\u0119 nawet do wynik\u00f3w frameworka od Google.<\/p>\n","innerContent":["\n<p>By\u0107 mo\u017ce w historii tej jest wi\u0119cej mitu ni\u017c prawdy, a do sukcesu Reacta z pewno\u015bci\u0105 przyczyni\u0142o si\u0119 wi\u0119cej czynnik\u00f3w ni\u017c tylko pora\u017cka angular.js. Patrz\u0105c na gwiazdki na GitHubie w momencie premiery Angular 1.x by\u0142 czterokrotnie popularniejszym rozwi\u0105zaniem ni\u017c React, a Angular 2.0 nigdy nie zbli\u017cy\u0142 si\u0119 nawet do wynik\u00f3w frameworka od Google.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>angular.js w momencie premiery by\u0142 rozwi\u0105zaniem innowacyjnym, ale z czasem ros\u0142o grono jego przeciwnik\u00f3w. Angular 2 pomimo ca\u0142kowicie innego API odziedziczy\u0142 z\u0142\u0105 pras\u0119. Sytuacj\u0119 tylko pogorszy\u0142a decyzja o nazwaniu Angulara 2 po prostu Angularem i przemianowaniu Angulara 1.x na angular.js. Do dzisiaj w sieci z \u0142atwo\u015bci\u0105 znale\u017a\u0107 mo\u017cna raporty, kt\u00f3re przedstawiaj\u0105 satysfakcj\u0119 deweloper\u00f3w z korzystania z Angulara jako jedn\u0105 kategori\u0119. Niestety nigdy nie dowiemy si\u0119 jak wygl\u0105da\u0142by rozk\u0142ad si\u0142 w\u015br\u00f3d frontendowych framework\u00f3w gdyby Google spr\u00f3bowa\u0142 bardziej iteracyjnego podej\u015bcia lub gdyby zdecydowa\u0142 si\u0119 na rebranding swojego frameworku.<\/p>\n","innerContent":["\n<p>angular.js w momencie premiery by\u0142 rozwi\u0105zaniem innowacyjnym, ale z czasem ros\u0142o grono jego przeciwnik\u00f3w. Angular 2 pomimo ca\u0142kowicie innego API odziedziczy\u0142 z\u0142\u0105 pras\u0119. Sytuacj\u0119 tylko pogorszy\u0142a decyzja o nazwaniu Angulara 2 po prostu Angularem i przemianowaniu Angulara 1.x na angular.js. Do dzisiaj w sieci z \u0142atwo\u015bci\u0105 znale\u017a\u0107 mo\u017cna raporty, kt\u00f3re przedstawiaj\u0105 satysfakcj\u0119 deweloper\u00f3w z korzystania z Angulara jako jedn\u0105 kategori\u0119. Niestety nigdy nie dowiemy si\u0119 jak wygl\u0105da\u0142by rozk\u0142ad si\u0142 w\u015br\u00f3d frontendowych framework\u00f3w gdyby Google spr\u00f3bowa\u0142 bardziej iteracyjnego podej\u015bcia lub gdyby zdecydowa\u0142 si\u0119 na rebranding swojego frameworku.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3646,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6137t1.jpeg\" alt=\"\" class=\"wp-image-3646\"\/><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6137t1.jpeg\" alt=\"\" class=\"wp-image-3646\"\/><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>My tymczasem oddajmy angular.js nale\u017cne mu honory - niezale\u017cnie od tego co s\u0105dzicie na jego temat jest to spory kawa\u0142ek historii web developmentu.<\/p>\n","innerContent":["\n<p>My tymczasem oddajmy angular.js nale\u017cne mu honory - niezale\u017cnie od tego co s\u0105dzicie na jego temat jest to spory kawa\u0142ek historii web developmentu.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3647,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/fetchimage.jpeg\" alt=\"\" class=\"wp-image-3647\"\/><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/fetchimage.jpeg\" alt=\"\" class=\"wp-image-3647\"\/><\/figure><\/div>\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\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a\">https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a<\/a><\/p>\n","innerContent":["\n<p><a href=\"https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a\">https:\/\/blog.angular.io\/discontinued-long-term-support-for-angularjs-cc066b82e65a<\/a><\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>2. Ci\u0105g dalszy historii faker.js \ud83d\ude48<\/h2>\n","innerContent":["\n<h2>2. Ci\u0105g dalszy historii faker.js \ud83d\ude48<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Zwykle nie wracamy do tego samego tematu dwa tygodnie z rz\u0119du, jednak wok\u00f3\u0142&nbsp; Maraka Squires naros\u0142o w ostatnim czasie tyle dyskusji i kontrowersji, \u017ce nie mog\u0142em sobie odm\u00f3wi\u0107 wyj\u0105tku od regu\u0142y. Przedstawiaj\u0105c sytuacj\u0119 sprzed tygodnia w telegraficznym skr\u00f3cie: biblioteka faker.js zosta\u0142a ca\u0142kowicie skasowana przez swojego tw\u00f3rc\u0119 w ramach manifestu zwracaj\u0105cego uwag\u0119 na tajemnicz\u0105 \u015bmier\u0107 aktywisty Aarona Shwartz. Je\u015bli interesuj\u0105 Was szczeg\u00f3\u0142y to zapraszam do poprzedniej edycji naszego przegl\u0105du.&nbsp;<\/p>\n","innerContent":["\n<p>Zwykle nie wracamy do tego samego tematu dwa tygodnie z rz\u0119du, jednak wok\u00f3\u0142&nbsp; Maraka Squires naros\u0142o w ostatnim czasie tyle dyskusji i kontrowersji, \u017ce nie mog\u0142em sobie odm\u00f3wi\u0107 wyj\u0105tku od regu\u0142y. Przedstawiaj\u0105c sytuacj\u0119 sprzed tygodnia w telegraficznym skr\u00f3cie: biblioteka faker.js zosta\u0142a ca\u0142kowicie skasowana przez swojego tw\u00f3rc\u0119 w ramach manifestu zwracaj\u0105cego uwag\u0119 na tajemnicz\u0105 \u015bmier\u0107 aktywisty Aarona Shwartz. Je\u015bli interesuj\u0105 Was szczeg\u00f3\u0142y to zapraszam do poprzedniej edycji naszego przegl\u0105du.&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3648,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6138dq.jpeg\" alt=\"\" class=\"wp-image-3648\"\/><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/6138dq.jpeg\" alt=\"\" class=\"wp-image-3648\"\/><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Co wydarzy\u0142o si\u0119 odk\u0105d ostatni raz opisywali\u015bmy ca\u0142\u0105 sytuacj\u0119? Zacznijmy od npm wycofuj\u0105cego wadliw\u0105 paczk\u0119 ze swojego repozytorium, oraz Githuba zawieszaj\u0105cego konto Maraka. Akcje podj\u0119te przez serwisy by\u0142y zgodne z ich regulaminem, ale mimo tego wzbudzi\u0142y spore kontrowersje. Cz\u0119\u015b\u0107 deweloper\u00f3w przyklaskuje podj\u0119tym akcjom i zwraca uwag\u0119 na potrzeb\u0119 przeciwdzia\u0142ania toksycznym akcjom. Pozosta\u0142a cz\u0119\u015b\u0107 zapowiada porzucenie GitHuba i m\u00f3wi o potrzebie przygotowania rozproszonej nie nadzorowanej alternatywy do kontroli wersji. Pikanterii ca\u0142emu zaj\u015bciu nadaje fakt, \u017ce Marak utrzymywa\u0142 dziesi\u0105tki, je\u015bli nie setki ma\u0142ych bibliotek do kt\u00f3rych z dnia na dzie\u0144 straci\u0142 dost\u0119p.<\/p>\n","innerContent":["\n<p>Co wydarzy\u0142o si\u0119 odk\u0105d ostatni raz opisywali\u015bmy ca\u0142\u0105 sytuacj\u0119? Zacznijmy od npm wycofuj\u0105cego wadliw\u0105 paczk\u0119 ze swojego repozytorium, oraz Githuba zawieszaj\u0105cego konto Maraka. Akcje podj\u0119te przez serwisy by\u0142y zgodne z ich regulaminem, ale mimo tego wzbudzi\u0142y spore kontrowersje. Cz\u0119\u015b\u0107 deweloper\u00f3w przyklaskuje podj\u0119tym akcjom i zwraca uwag\u0119 na potrzeb\u0119 przeciwdzia\u0142ania toksycznym akcjom. Pozosta\u0142a cz\u0119\u015b\u0107 zapowiada porzucenie GitHuba i m\u00f3wi o potrzebie przygotowania rozproszonej nie nadzorowanej alternatywy do kontroli wersji. Pikanterii ca\u0142emu zaj\u015bciu nadaje fakt, \u017ce Marak utrzymywa\u0142 dziesi\u0105tki, je\u015bli nie setki ma\u0142ych bibliotek do kt\u00f3rych z dnia na dzie\u0144 straci\u0142 dost\u0119p.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/twitter.com\/marak\/status\/1479200803948830724","type":"rich","providerNameSlug":"twitter","responsive":true},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/twitter.com\/marak\/status\/1479200803948830724\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/twitter.com\/marak\/status\/1479200803948830724\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wszystko wskazuje na to, \u017ce Marak finalnie odzyska\u0142 dost\u0119p do swojego konta na GitHubie, bo ju\u017c 10 styczna kolejna biblioteka sta\u0142a si\u0119 cz\u0119\u015bci\u0105 jego manifestu. Tym razem na tapet wzi\u0119ty zosta\u0142 color.js, kt\u00f3ry u\u017cywany jest w node do kolorowania tekstu w konsoli. W commicie o niepozornej nazwie `American flag` dodana zosta\u0142a funkcjonalno\u015b\u0107, kt\u00f3ra po zainicjalizowaniu biblioteki kilkukrotnie wpisuje w konsoli LIBERTY, a nast\u0119pnie wpada\u0142a w niesko\u0144czon\u0105 p\u0119tl\u0119 wy\u015bwietlaj\u0105c\u0105 losowe niestandardowe znaki ASCII.<\/p>\n","innerContent":["\n<p>Wszystko wskazuje na to, \u017ce Marak finalnie odzyska\u0142 dost\u0119p do swojego konta na GitHubie, bo ju\u017c 10 styczna kolejna biblioteka sta\u0142a si\u0119 cz\u0119\u015bci\u0105 jego manifestu. Tym razem na tapet wzi\u0119ty zosta\u0142 color.js, kt\u00f3ry u\u017cywany jest w node do kolorowania tekstu w konsoli. W commicie o niepozornej nazwie `American flag` dodana zosta\u0142a funkcjonalno\u015b\u0107, kt\u00f3ra po zainicjalizowaniu biblioteki kilkukrotnie wpisuje w konsoli LIBERTY, a nast\u0119pnie wpada\u0142a w niesko\u0144czon\u0105 p\u0119tl\u0119 wy\u015bwietlaj\u0105c\u0105 losowe niestandardowe znaki ASCII.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3649,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81.png\" alt=\"\" class=\"wp-image-3649\"\/><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/148632459-55f818b0-1ee4-4ddf-b53a-defe656c1d81.png\" alt=\"\" class=\"wp-image-3649\"\/><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Sam Marak odni\u00f3s\u0142 si\u0119 do ca\u0142ego zaj\u015bcia otwieraj\u0105ca Issue na Guthubie, w kt\u00f3rym ironicznie deklaruje, \u017ce ci\u0119\u017cko pracuje nad napraw\u0105 buga. Cz\u0119\u015b\u0107 os\u00f3b w zaistnia\u0142ej sytuacji doszukuje si\u0119 odniesie\u0144 do innego manifestu Maraka, kt\u00f3ry mia\u0142 miejsce w 2020 roku. Wtedy to na GitHubie opublikowa\u0142 on wpis m\u00f3wi\u0105cy o porzuceniu wszystkich utrzymywanych przez niego bibliotek je\u015bli ogromne korporacje nie zaczn\u0105 w ko\u0144cu p\u0142aci\u0107 tw\u00f3rcom Open Source. Trzeba przyzna\u0107, \u017ce Marak zwraca uwag\u0119 na wa\u017cne i interesuj\u0105ce tematy, ale robi to w bardzo drastyczny spos\u00f3b.&nbsp;<\/p>\n","innerContent":["\n<p>Sam Marak odni\u00f3s\u0142 si\u0119 do ca\u0142ego zaj\u015bcia otwieraj\u0105ca Issue na Guthubie, w kt\u00f3rym ironicznie deklaruje, \u017ce ci\u0119\u017cko pracuje nad napraw\u0105 buga. Cz\u0119\u015b\u0107 os\u00f3b w zaistnia\u0142ej sytuacji doszukuje si\u0119 odniesie\u0144 do innego manifestu Maraka, kt\u00f3ry mia\u0142 miejsce w 2020 roku. Wtedy to na GitHubie opublikowa\u0142 on wpis m\u00f3wi\u0105cy o porzuceniu wszystkich utrzymywanych przez niego bibliotek je\u015bli ogromne korporacje nie zaczn\u0105 w ko\u0144cu p\u0142aci\u0107 tw\u00f3rcom Open Source. Trzeba przyzna\u0107, \u017ce Marak zwraca uwag\u0119 na wa\u017cne i interesuj\u0105ce tematy, ale robi to w bardzo drastyczny spos\u00f3b.&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":3650,"sizeSlug":"large","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-1024x597.png\" alt=\"\" class=\"wp-image-3650\"\/><\/figure><\/div>\n","innerContent":["\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/01\/Screenshot-2022-01-13-at-10.20.27-1024x597.png\" alt=\"\" class=\"wp-image-3650\"\/><\/figure><\/div>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Open Source nie cierpi pustki, dlatego je\u015bli szukacie alternatywy dla faker.js, to Netanel Basal (tw\u00f3rca biblioteki do zarz\u0105dzania stanem aplikacji Akita oraz rozpoznawalna osobisto\u015b\u0107 w \u015bwiecie Angulara) zaimplementowa\u0142 swoj\u0105 alternatyw\u0119 o nazwie falso. Pozostaje tylko czeka\u0107, a\u017c kto\u015b pokusi si\u0119 r\u00f3wnie\u017c o przepisanie color.js ;)<\/p>\n","innerContent":["\n<p>Open Source nie cierpi pustki, dlatego je\u015bli szukacie alternatywy dla faker.js, to Netanel Basal (tw\u00f3rca biblioteki do zarz\u0105dzania stanem aplikacji Akita oraz rozpoznawalna osobisto\u015b\u0107 w \u015bwiecie Angulara) zaimplementowa\u0142 swoj\u0105 alternatyw\u0119 o nazwie falso. Pozostaje tylko czeka\u0107, a\u017c kto\u015b pokusi si\u0119 r\u00f3wnie\u017c o przepisanie color.js ;)<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"prismatic\/blocks","attrs":{"language":"javascript"},"innerBlocks":[],"innerHTML":"\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\">import { cityName, streetAddress, dog, bear, databaseEngine } from '@ngneat\/falso';\n\ncityName(); \/\/ Lake Charles\nstreetAddress(); \/\/ 58739 Bridie Mission\ndog(); \/\/ Newfoundland\nbear(); \/\/ Sloth bear\ndatabaseEngine(); \/\/ CSV<\/code><\/pre>\n","innerContent":["\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\">import { cityName, streetAddress, dog, bear, databaseEngine } from '@ngneat\/falso';\n\ncityName(); \/\/ Lake Charles\nstreetAddress(); \/\/ 58739 Bridie Mission\ndog(); \/\/ Newfoundland\nbear(); \/\/ Sloth bear\ndatabaseEngine(); \/\/ CSV<\/code><\/pre>\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\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected\">https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected<\/a><br><a href=\"https:\/\/github.com\/ngneat\/falso\">https:\/\/github.com\/ngneat\/falso<\/a><br><a href=\"https:\/\/github.com\/Marak\/colors.js\/issues\/285\">https:\/\/github.com\/Marak\/colors.js\/issues\/285<\/a><br><\/p>\n","innerContent":["\n<p><a href=\"https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected\">https:\/\/www.theverge.com\/2022\/1\/9\/22874949\/developer-corrupts-open-source-libraries-projects-affected<\/a><br><a href=\"https:\/\/github.com\/ngneat\/falso\">https:\/\/github.com\/ngneat\/falso<\/a><br><a href=\"https:\/\/github.com\/Marak\/colors.js\/issues\/285\">https:\/\/github.com\/Marak\/colors.js\/issues\/285<\/a><br><\/p>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10020","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\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/comments?post=10020"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10020\/revisions"}],"predecessor-version":[{"id":10606,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10020\/revisions\/10606"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media\/7885"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=10020"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=10020"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=10020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}