Miasto stawia na e-firmy. Przemyski Inkubator Przedsiębiorczości i Innowacji poprowadzi ZETO.\n– Z jednej strony to ogromne wyzwanie, a z drugiej strony wiążemy z nim duże nadzieje. Inkubowanie firm – zwłaszcza młodych, nowych firm – nie jest prostym przedsięwzięciem. Chcemy się jednak tego podjąć, mając wieloletnie doświadczenie na tym polu. Wsparcie będzie się odbywać na wielu, wielu płaszczyznach – od najprostszych kwestii finansowo-księgowych, prawnych, po wsparcie merytoryczne, wsparcie naszą wiedzą i doświadczeniem – powiedział podpisując umowę z Miastem Janusz Błażej, prezes ZETO Rzeszów.\nDziałania Operatora mają wspierać innowacyjność, promowanie oraz rozwój przedsiębiorczości mikro, małych i średnich przedsiębiorstw na terenie Przemyśla, regionu, powiatu przemyskiego oraz województwa podkarpackiego tłumaczył Wojciech Bakun, prezydent Przemyśla. – Funkcja Inkubatora to nie tylko wynajęcie i zagospodarowanie powierzchni przez firmy. To cały proces inkubacji, sposób myślenia. Pomysł rodzi się w głowie początkującego przedsiębiorcy, ale często nie jest on sobie w stanie poradzić z kwestiami prawnymi, czy administracyjnymi i potrzebuje wsparcia. Tu powinien je otrzymać – podsumował Bakun.\nJakie więc pomysły mogą zyskać uznanie operatora Przemyskiego Inkubatora Przedsiębiorczości i Innowacji, aby zostały zakwalifikowane do korzystania z miejskiego wsparcia? Jeszcze nie wiadomo. Zasady naboru określi przygotowywany regulamin. – Instytucja ta jest inkubatorem technologicznym tłumaczy prezydent Bakun. – To jest inkubator branży nowoczesnych technologii, otwarty na firmy programistyczne, tworzące oprogramowanie, firmy z branży udostępniania usług internetowych, czy przechowywania danych. Te wszystkie podmioty będą mogły znaleźć tutaj swoje miejsce. – Z założeń projektowych Przemyskiego Inkubatora Przedsiębiorczości i Innowacji wynika, że będzie on obejmował swoim wsparciem 12 firm, chociaż jak stwierdził Prezes ZETO-Rzeszów, jest to plan minimum. – Nasza uczelnia wiąże nadzieje z tym przedsięwzięciem – mówi dr Sławomir Solecki, Prorektor ds. Współpracy i Rozwoju PWSW w Przemyślu: – Mamy zaproszenie do współpracy, więc sądzę, że nasi studenci będą częstymi gośćmi w Inkubatorze, że tam będą też rozwijali swoje zainteresowania, swoje pasje i że dzięki temu powstanie wiele dojrzałych pomysłów biznesowych i w końcu startupy tej branży IT”.\nPo tych deklaracjach wydawałoby się, że młodzi przedsiębiorcy innych dziedzin niż informatycze, nie będą mieli szans na pomoc Miasta, które w swoim rozwoju stawia na nowe technologie. To nowum w specjalności Przemyśla. Co zatem z innymi domenami miasta? Co np. z turystyką, która jakby nie patrzeć, była dziedziną dominującą, choć nie w pełni wykorzystaną w rozwoju miasta. Złośliwi powiedzieliby nawet – w powstrzymaniu jego degradacji? Niestety w czasach pandemii turystyka mocno ucierpiała i straciła na swoim znaczeniu. Jako jedna z pierwszych potrzebuje pomocy, bo przecież pandemia kiedyś skończy się, turyści wrócą do swoich pasji i wrócą do miasta. Do tego czasu należałoby się przygotować. Dzisiaj w turystyce wszystko zaczyna się od nowa.\nSytuacja poepidemiczna, wymaga nowego podejścia do rozwoju i promocji turystyki. Ograniczenia w przemieszczaniu się i konieczność izolacji spowodowały, że turystyka zamarła i przeniosła się z rzeczywistości off-line do on-line. To było zauważalne w miejskich działaniach promocyjnych – także Przemyśla i funkcjonujących w tym czasie, w sposób ograniczony, instytucji kultury. Wirtualne spacery, zwiedzanie, internetowe, emisje filmów i spotów reklamowych promowały atrakcje. Niestety nie sprzedawały. Stąd kompletny krach turystyki i poszukiwania dróg wyjścia z kryzysu. Tu internet i nowe technologie znowu pokazały nowe możliwości. Wykorzystali je np. warszawscy przewodnicy, którzy sprzedawali vouchery na zwiedzanie miasta po epidemii.\nBadania i praca nad wykorzystaniem nowych technoligii w e-turystyce przez turystyczno-promocyjna spółkę zarejestrowaną w inkubatorze, to szansa dla Przemyśla. Dzięki temu miasto może wskoczyć na wyższy poziom postrzegania go, jako turystycznego i uzyskać nową, dodatkową cechę wyróżniającą Przemyśl wśród miast turystycznych – specjalizację – innowacje w turystyce, zbieżną z innowacyjnym marketingiem w samorządach, zagadnieniem realizowanym przez samorząd województwa podkarpackiego. Tak się składa, że w ramach projektu Przemyski Inkubator Przedsiębiorczości i Innowacji przewiduje się, że infrastruktura inkubatora wraz z wyposażeniem będzie sprzyjała podmiotom MŚP w takich obszarach, jak rozwój zastosowań rzeczywistości rozszerzonej (wirtualnej, VR, AR) np. w turystyce. Miasto Przemyśl ma duże możliwości w tym zakresie przedstawiając m.in. swoje atrakcje w ramach e-usług, e-handlu i e-dystrybucji produktów podnoszących jakość życia i inteligentnej turystyki. Dla potencjalnych najemców przestrzeni Inkubatora e-commerce, to również potencjalne źródło dochodów oraz upowszechnianie aplikacji wspierających osiąganie wysokiej jakości życia i inteligentnej turystyki.\nTak więc wraz z otwarciem Przemyskiego Inkubatora Przedsiębiorczości i Innowacji może nastąpić nowe otwarcie w przemyskiej turystyce. Pod warunkiem, że znajdą się prywatni inwestorzy, chętni na zainwestowanie w realizację nowej koncepcji turystyki, jej promocji i sprzedaży lokalnych ofert turystycznych, noclegowych, produktów regionalnych oraz atrakcji i wydarzeń. Pierwsze koty za płoty Miasto ma za sobą. Właśnie uruchomiło Wirtualny Jarmark Bożonarodzeniowy, który pokazuje jak może wyglądać promocja Przemyśla przez produkty i usługi lokalnych przedsiębiorców i wytwórców nie do końca z turystyką związanych, a doskonale wpisujących się w ideę promocji i wsparcia lokalsów, z korzyścią dla turystyki i dla marki Przemyśl.\nWydaje się, że spółka zarejestrowana w inkubatorze będzie mogła korzystać z wszystkich jego dobroci, dzięki temu, że Miasto będzie finansować jej funkcjonowanie i wspomagać w ten sposób działających w niej przedsiębiorców. Ci uzyskane dochody będą mogli inwestować w kolejne zaplanowane do realizacji projekty promocyjno – turystyczne. Miasto ma szansę zyskać w spółce przedsiębiorców solidnego partnera w budowie marki Przemyśl. Ta powinna być bardziej wydajna, niż społeczny klaster turystyczny, opierający swoją działalność tylko na składkach członkowskich. Po jakimś czasie spółka przedsiębiorców razem z Miastem będą mogli realizować wspólne cele promocyjno – turystyczne, zbieżne dla Miasta i przedsiębiorców. Działalność oparta na rachunku ekonomicznym zawsze jest bardziej wydajna, niż społeczna czy bazująca na wolontariacie.\nTak więc w inkubatorze może narodzić się nowy e-Przemyśl, miasto nowych technologii w e-turystyce.\nzdj. GM Przemyśl


Publicystyka Kto się boi Rockstara? Jesień pod dyktando Red Dead Redemption 2 15.06.2018 - Forum | GRYOnline.pl\nPublicystyka Kto się boi Rockstara? Jesień pod dyktando Red Dead Redemption 2\npost wyedytowany przez [email protected] 2018-06-15 12:54:03\ndlaczego mam wrażenie że w tym komentarzu chodziło ci o wywyższenie konsol nad pecety ?\nNie chodziło mi o wywyższenie tylko o zwrócenie uwagi na to że z portem może być tak jak zwykle, czyli ciężko.\nPS: Masz rację, mój komentarz rzeczywiście nie był zbyt subtelny, mój błąd :\_\npost wyedytowany przez [email protected] 2018-06-15 13:47:43\nTa same gry dekady... Na 10 godzin. I 2 miesiące i do zapomnienia.\nA gry dekady dalej żywe... I grane od 10 lat.\nA kolezka konrad nie grał jeszcze w żadną grę dekady bo na ps4 nie ma takiej. Zresztą korporacyjne gry singlowe są bez szans. Chyba tylko GTA coś namieszalo ale daleko im do szczytu.\npost wyedytowany przez futureman16 2018-06-15 20:49:50\nO ile o port Rockstara raczej bym się nie martwił, o tyle trzeba przyznać - że wydawcy traktują rynek PC'towy jak rynek drugo, a nawet często trzeciorzędny. I niestety jestem zdania, że ta tendencja będzie coraz bardziej widoczna.\nZabawne. W 2005 r. słyszałem to samo... W 2010 również słyszałem to samo... 3 lata temu też wszyscy "szpece" wieszczyli koniec PCtów, a te jak na złość zdechnąć nie chcą. I w dodatku cały czas mają wydawane świetne gry. No skandal.\nKucharek PC przetrwa wszystkie konsole i zostanie kiedy wszystko inne zniknie z rynku. A to dlatego że tam są gry w które się gra długo i dużo. A takie gry na korporacyjnym sprzęcie do robienia $ się nie sprawdzają bo za duże ograniczenia i za mała dokładność.\nA korporacje będą wieszczyc koniec PC bo na PC gracz coraz bardziej wymagajacy i coraz trudniej sprzedać byle co. Korporacyjne produkty na 10 godzin z nastawieniem na zysk sa dostosowywane pod konsole bo tam łatwiej to opylic ale to nie wyznacznik grania grywalnosci czy gier tylko biznesu.\npost wyedytowany przez futureman16 2018-06-16 10:43:54\nJak "trzeciorzędny" Oo? To pomiędzy konsolami (w twojej konstrukcji "pierwszym rzędem"), a PCtami (czyli u ciebie "trzecim rzędem") jest coś jeszcze?\nMoże telefony ? :DDD\nobecne assasyny fallouty i jc (to juz w ogoel tragedia) to przy tym śmiecie\nO ile zwykle stronię od zgadzania się z ludźmi, którzy nazywają rzeczy podobające się innym "śmieciami", tak teraz się chyba zgodzę.\nAC stracił dla mnie jakikolwiek urok, o "survivalowym" Falloucie nawet nie chce mi się czytać, a JC4... no dobra, kiedyś pewnie zagram.\nHype mi chyba za mocno wszedł, bo Red Dead i Cyberpunk zapowiadają się tak zajebiście, że Assassin, COD, Battlefield i reszta tytanów współczesnej rozgrywki elektronicznej jest dla mnie kompletnym gównem.\nZa to asasyn, Fallout i JC 4 wyglądają świetnie.\nMnie otwarty świat po prostu nudził. Nie było nic tma do roboty, najlepiej jak by mnie teleportowało do misji.\nTeż skończyłem mniej więcej w połowie.\nPewnie, powiedz tym milionom co kupują AC co roku. Na pewno się zgodzą z tobą, bo obrazony fanboy Rockstara przebiera nóżkami.\nMiałem tak samo dokładnie.\nMiliony januszy kupują AC na premiere.\nKto sie zna na temacie, poczeka jak stanieje bo wiadomo ze to kotlet i jezeli juz jest warty ogrania to za pol ceny.\nRockstar to jakosc sama w sobie, lata dopracowywania gier, a nie jakies tam sredniaki robione na pol gwizdka.\npost wyedytowany przez Ghost2P 2018-06-17 15:52:58\nNie jestem pewien, czy cały ten komentarz to nie zgrywa, ale okej.\nLubię Rockstar, uważam ich za wyjątkowo uzdolnioną ekipę deweloperów, ale nawet ja nie podejrzewałem ich o zdolności prekognicji. Bo jak inaczej wytłumaczyć fakt, że zapowiadając premierę na początku lutego tego roku mieliby uciekać przed grami, których daty premier poznaliśmy dopiero pod koniec maja (Pokemony) i na E3 (Smash)?\nPoza tym piszesz o tytułach ekskluzywnych na Switcha, któremu ledwo co puknął rok i chociaż sukces nowej konsoli Nintendo rzeczywiście jest powalający, to jednak nie jest to te ~120 milionów egzemplarzy PlayStation 4 i Xboksa One. Tymczasem zarówno RDR 2, jak i Assassin's Creed, Battlefield, CoD to są gry zmierzające na te same platformy (prócz PC), a co za tym idzie - rywalizujące o klienta bezpośrednio między sobą. Pozostaję przy opinii, że przesunięcia wszystkich tych trzech serii, które dotychczas wychodziły w swoim ustalonym okienku, to przejaw tego, że ich twórcy z Rockstarem konkurować po prostu nie chcą.\nA to, że może i "GTA V było mimo wszystko wielkim zawodem dla fanów serii" akurat wydawców i inwestorów raczej średnio obchodzi, bo ta gra po prostu sama drukuje pieniądze. 95 milionów egzemplarzy sprzedanych, do tego jakieś chore dochody z mikrotransakcji - to są kosmiczne wyniki, o których inne firmy mogą sobie pomarzyć.\nSkąd to wiesz, skoro nie było nawet oficjalnej prezentacji rozgrywki?\nLikfidator to fanboj Nintendo\nNie ukrywajmy też, że GTA V było mimo wszystko wielkim zawodem dla fanów serii.\nEhe, dlatego bije rekordy sprzedaży i dlatego zebralo tak samo rewelacyjne oceny jak kazda inna cześć.\nNie to ty jesteś oderwany, zdejmij klapki z oczu, bo fantazjujesz z tym Nintendo jak malo kto.\npost wyedytowany przez Trzynaście; 2018-06-15 16:44:46\nJestem fanem N od ponad 20 lat ale nie posunął bym się do pisania takich bzdur.\nJestem w stanie się założyć że obie gry razem nie sprzedadzą się nawet w połowie tak dobrze jak RDR2.\n"Na niekorzyść RDR 2 działa też technologia. Ta gra powstaje od długiego czasu i niestety bazuje na technologii z poprzedniej generacji. Nie wygląda może źle, ale to bardziej poziom gry z X360 odpalonej w 4K na XO X niż gra obecnej generacji."\ni to piszesz w kontekście nitendo i ich technologi z lat 90tych?\nchyba sam wiesz że to nie sama technologia sprzedaje grę.\npost wyedytowany przez not2pun 2018-06-15 18:17:38\nJak będę miał zły humor, to będę wchodził w ten wątek i czytal post Likfidatora.\nDawno nikt tak bardzo mnie nie rozbawił.\nChyba sobie to wydrukuje i powiesze na scianie xD\nPrzecież obie ekipy wydają zupełnie różnie gry więc nie wiem jak mieliby ze sobą konkurować.\nA już na pewno nie pod względem ilości sprzedanych sztuk...\nchyba że w tym samym miesiącu premierę będzie miało The Last of Us II\nWiemy już, że nie ma takiej opcji i na 100% TLoU2 nie pojawi się w 2018.\nCo do RDR2 to czekam na to tak samo jak na Spier-Mana. Dziękować, że Metro przesunęli na 2019 bo bym chyba zbankrutował :p\nJakby tak było,nikt nie gralby w RdR, bo do ligii gier ND Rockstarowi daaaaaaleeeeeekooooo\nA ty co? Zostałeś zbanowany, że masz nowe konto?\nA czego oczekiwałeś od westernu, wielkich metropolii i samochodów??? Klimat westernowy w tej grze był super.\nPrawie miesiąc bez gier dużych wydawców w okresie premiery RDR II, kiedy w ubiegłych latach wychodziły takie gry jak Ac, Cod I masa innych. Uwielbiam jak ludzie nienawidzą tej gry bo nie ma na PC. Nic nie zmieni faktu że RDR, God of War, Spider Man I Monster Hunter zawalczą o tytuł gry roku, żadnej z nich nie ma na PC.\nChyba się nie umyłeś kolego. Gdzie z mojej strony hejt na grę ? Uwielbiam produkcje Rockstara, więc zarzut z dupy. Wszystkie duże tytuły wychodzą na przestrzeni 3 tygodni, więc nie przesadzajmy z tym strachem przed konkurencją. Bardziej prawdopodobny wydaje się scenariusz zmowy producenckiej, żeby każdy mógł jak najwięcej się nachapać.\npost wyedytowany przez lilSantiago 2018-06-16 14:13:48\nI własnie dlatego nie napalam się wogóle na RDR 2. Rockstar już delikatnie mówiąc zszedł na psy i wszelki syf typu online tylko zabruździ single każdej ich gry\nA co jest złego w dodatkowej zawartości za którą nie trzeba płacić?\nWłasnie przez takich, którym taka multikowa zawartosc nie przeszkadza, mamy smętne, obrzydliwie nudne i rozwleczone gry singlowe, bo deweloperzy wolą zrobić mape i dać pare broni żeby grupki pajaców się naparzały zamiast skupić siły i finanse na dobrej i zwięzłej histori. Epickie niegdyś kampanie z Coda zamieniają się teraz w cyrk, w nowym Falloucie próbują wcisnac jakieś wesołe interakcje z innymi graczami, o Asasynie nawet nie ma co wspominać, długo by wymieniać serie, które się zeszmaciły\npost wyedytowany przez FanGta 2018-06-18 00:00:21\nTo tylko korporacyjne produkty pod robienie $$$ więc szukają sposobów żeby zarabiać więcej.\nAmbitne gry dla pojedynczego gracza skończyły się jakis czas temu czasami pojedynczy tytuł się ukaże i to tyle. Te czasy już nie wrócą pozostaną proste robione pod konsole gry albo oparte o sieć i czasami ambitny projekt i to tyle.\nPo spędzeniu długiego czasu z GTA Online mogę stwierdzić, że ta gra ma jeden z najbardziej obrzydliwych systemów monetyzacji i jest kompletnie P2W\nGuzik prawda. Do wszystkiego można dojść sumiennie grając. Rockstar często organizuje jakieś eventy z premiami RP, jak i $, sami też rozdają pieniądze. Więc pisanie o Online, że jest P2W mija się z prawdą. Owszem, są mikrotransakcje, ale nikt Cię do nich nie zmusza, a ktoś kto z nich korzysta nie ma przewagi nad Tobą (nie licząc stanu konta).\nMoże będzie to lepsze i poważniejsze od GTA dlatego sprawdzimy opinie i recenzje i jak będzie ok to zagramy.


Najlepszy program do czyszczenia iPhone'a do czyszczenia / optymalizacji / przyspieszania iPhone'a w kilka minut\nStrona główna > Zasób >iPhone Cleaner >iPhone Cleaner\nNajlepsze propozycje dla iPhone Cleaner - Oczyść iPhone'a (bezpłatne i płatne)\n14 lutego 2022 r.Ashley Mae\nJest tak wiele miejsc, takich jak muzyka, filmy, aplikacje, e-maile i niezliczone inne lokalizacje na Twoim iPhonie, w których gromadzą się śmieci i bałagan. Udowodniono, że jest poręczny iPhone do czyszczenia może pomóc Ci pozbyć się irytującego bałaganu i utrzymać iPhone'a przy życiu i działać jak najlepiej. W tym artykule kupiliśmy razem jedne z najlepszych aplikacji do czyszczenia iPhone'a, aby wyczyścić zbędne pliki, pliki tymczasowe, niepotrzebne pliki, pamięci podręczne i pliki cookie, zoptymalizować wykorzystanie miejsca i stworzyć więcej wolnego miejsca na iPhonie.\nCzęść 1. 5 najlepszych programów do czyszczenia iPhone'a dla iPhone'a\nCzęść 2. Jak wyczyścić iPhone'a w systemie Mac i Windows\nCzęść 3. Często zadawane pytania dotyczące iPhone Cleaner\nTutaj otrzymujemy listę programów do czyszczenia iPhone'a dla komputerów Mac i Windows. Dzięki tym narzędziom do czyszczenia pamięci możesz wyczyścić pamięć podręczną aplikacji, usunąć dokumenty i dane, a następnie zwolnić więcej miejsca na iPhonie.\n1. Narzędzie do czyszczenia iPhone'a Aiseesoft\nJeśli chodzi o środki czyszczące do iPhone'a, Narzędzie do czyszczenia iPhone'a Aiseesoft to bogata w funkcje aplikacja do czyszczenia iPhone'a, która oferuje przejrzysty i intuicyjny interfejs użytkownika oraz wiele przydatnych funkcji czyszczenia. Można uznać, że jest to najlepszy darmowy program do czyszczenia pamięci dla iPhone'a. Jednym kliknięciem możesz uzyskać Aiseesoft iPhone Cleaner, aby szybko przeskanować pamięć iPhone'a, przejrzeć wszelkiego rodzaju dane, aby zdecydować, czego się pozbyć, a co zachować, i poszukać sposobów na przyspieszenie systemu. Oferuje darmową wersję, abyś mógł spróbować, jeśli potrzebujesz więcej funkcji, musisz uaktualnić do wersji premium.\nKliknij raz, aby usunąć pamięć podręczną obrazu, niepotrzebne i niechciane pliki, niepotrzebne aplikacje, pliki tymczasowe itp. Na swoim iPhonie.\nDokładnie wyczyść wszystkie dane na swoim iPhonie.\nUsuń selektywnie prywatne dane i dokumenty.\nNiezawodny i bezpieczny, bez reklam i złośliwego oprogramowania.\nOtrzymuj regularne i terminowe aktualizacje.\nAiseesoft iPhone Cleaner - Najlepsza aplikacja do czyszczenia iPhone'a\nUsuń nieużywane aplikacje, aby zwolnić więcej miejsca i przyspieszyć działanie iPhone'a.\nTwórz kopie zapasowe i usuwaj duże pliki, aby zwolnić więcej miejsca na iPhonie.\nTrwale usuń wszystkie dane z iPhone'a.\nDziała na wszystkich iPhone'ach, kompatybilny z najnowszą wersją iOS.\nPhoneClean to jedno proste i łatwe oprogramowanie do czyszczenia iPhone'a dla systemu Windows i Mac. Koncentruje się na zwolnieniu plików cookie i pozostałości aplikacji.\nZwolnij trochę miejsca i napraw kilka drobnych błędów na swoim iPhonie.\nPo usunięciu danych nie pozostał żaden plik, dlatego należy zachować ostrożność.\nW 100% bezpieczne i wydajne narzędzie do czyszczenia iOS bez jailbreaka.\nMacgo Free iPhone Cleaner to potężny program do czyszczenia iPhone'a do czyszczenia aplikacji na iPhone'a. Dzięki niemu możesz wyczyścić pamięć podręczną aplikacji, usunąć dokumenty i inne dane.\nKonfiguruj, organizuj i zarządzaj aplikacjami i plikami w telefonie.\nSzybko znajduj duże pliki i bezpiecznie je usuwaj, a także usuwaj dane osobowe.\nTrwale usuń wszystkie dane z iPhone'a bez możliwości ich odzyskania.\niFreeUp to jeden darmowy i łatwy w czyszczeniu iPhone'a, który koryguje niektóre konfiguracje i sprawia, że Twój iPhone działa dobrze.\nWyczyść duże niepotrzebne pliki, aby zwolnić więcej miejsca i eksportuj / importuj rekordy gier i dane aplikacji.\nPrzesyłaj wszystkie rodzaje plików multimedialnych między urządzeniami z systemem iOS a komputerem.\nPrzyspiesz swój stary iPhone, aby działał szybciej.\nCisdem iPhoneCleaner to jeden środek do czyszczenia pamięci dla iPhone'a na Macu. Pozwala całkowicie wyczyścić pliki tymczasowe.\nPrzeskanuj cały swój iPhone, aby znaleźć pliki, które zajmują dużo miejsca na Twoim iPhonie.\nUsuń puste foldery, pliki utworzone przez odinstalowane aplikacje, pamięci podręczne aplikacji itp.\nPrzed czyszczeniem wykonaj kopię zapasową danych.\nW powyższych akapitach przedstawiliśmy 5 najlepszych środków czyszczących do iPhone'a. Mają swoje specjalne cechy. Możesz więc wybrać jeden według swoich potrzeb. Aby pomóc Ci dowiedzieć się więcej o tym, jak wyczyścić iPhone'a, weźmiemy Aiseesoft iPhone Cleaner, aby pokazać, jak wyczyścić iPhone'a, aby zwolnić więcej miejsca.\nNa początek musisz pobrać i zainstalować iPhone Cleaner na swoim komputerze. I upewnij się, że masz zainstalowaną najnowszą wersję iTunes na swoim komputerze.\nUruchom program, a następnie zobaczysz główny interfejs w następujący sposób.\nPodłącz iPhone'a do komputera za pomocą kabla błyskawicy. Gdy program rozpozna Twoje urządzenie, możesz zobaczyć, co zajmuje miejsce na Twoim iPhonie.\nGdy program wykryje Twój iPhone, możesz kliknąć plik szybkie skanowanie przycisk do procesu czyszczenia iPhone'a. Po zeskanowaniu możesz selektywnie wyczyścić iPhone'a z różnych opcji, w tym Usuń niepotrzebne pliki, Odinstaluj aplikacje, Usuń duże pliki i Oczyść zdjęcia. Wybierz żądaną kategorię, którą chcesz wyczyścić, a następnie kliknij wymazać przycisk, aby przejść dalej.\nProgram skanuje i wyświetla wszystkie niepotrzebne pliki ukryte w systemie iOS, takie jak pamięć podręczna obrazu, pamięć podręczna iTunes, nieprawidłowe pliki, pobieranie plików tymczasowych i pliki dziennika awarii.\nSprawdź typ danych, który chcesz usunąć, a następnie naciśnij wymazać przycisk.\nMożesz zainstalować zbyt wiele aplikacji na swoim iPhonie i wiele z nich nie jest już potrzebnych. Następnie ta funkcja może pomóc w łatwym odinstalowaniu wszystkich bezużytecznych aplikacji.\nZnajdź aplikację, której już nie potrzebujesz, kliknij ikonę Odinstaluj przycisk. Następnie wszystkie wybrane aplikacje zostaną natychmiast usunięte z iPhone'a.\nProgram może również skanować wszystkie duże pliki, które spowalniają system iOS. Po wykryciu i wyświetleniu wszystkich plików można ustawić określony format pliku z pliku Typ Pliku aby szybko znaleźć plik, którego szukasz. Następnie sprawdź pliki, które chcesz usunąć, a następnie naciśnij wymazać przycisk.\nJeśli chcesz utworzyć kopię zapasową dużego pliku, zaznacz pole obok Kopia zapasowa przed skasowaniem.\nW tej części masz 2 opcje zarządzania zdjęciami. Jednym z nich jest kompresowanie zdjęć bez usuwania, a drugim eksportowanie zdjęć do komputera i usuwanie ich z iPhone'a.\nAby skompresować zdjęcia, wybierz Kopia zapasowa i kompresja. Następnie wybierz zdjęcia do kompresji i kliknij Kompresować.\nJeśli miejsca na Twoim iPhonie jest za mało, możesz kliknąć Eksportuj i usuń aby wyeksportować zdjęcia do komputera, a następnie usunąć je z iPhone'a.\nJeśli chcesz trwale usunąć wszystkie dane z iPhone'a, program oferuje również najłatwiejszy i najszybszy sposób na usunięcie wszystkich danych jednym kliknięciem. Wybierz Usunąć wszystkie dane opcję z lewego panelu, a następnie wybierz poziom bezpieczeństwa, aby usunąć dane iPhone'a. Im wyższy poziom bezpieczeństwa, tym mniejsze prawdopodobieństwo odzyskania danych. W międzyczasie usunięcie wyższego poziomu zabezpieczeń może zająć więcej czasu.\nWchodzić "0000"I kliknij wymazać aby potwierdzić operację, gdy będziesz gotowy. Następnie poczekaj na koniec procesu i nie odłączaj iPhone'a przez cały czas.\nJak wyczyścić pamięć podręczną aplikacji na iPhonie\niPhone mówi, że pamięć jest pełna - oto 14 najlepszych poprawek, o których powinieneś wiedzieć\nCzy iPhone ma odkurzacz?\nNie, to nieprawda. Jeśli potrzebujesz aplikacji do czyszczenia iPhone'a, aby wyczyścić iPhone'a, istnieje wiele aplikacji, które wykonują szybką i wydajną pracę, aby pozbyć się plików, których już nie potrzebujesz.\nJak działa iPhone Cleaner?\nAplikacja do czyszczenia iPhone'a wykonuje automatyczne skanowanie w celu wyszukania śmieci, złośliwego oprogramowania i niechcianych plików na Twoim iPhonie. Po wygenerowaniu wyników skanowania użytkownik może zaznaczyć i usunąć niechciane pliki i aplikacje, aby zwolnić znaczną ilość miejsca na iPhonie.\nDlaczego potrzebujesz oprogramowania do czyszczenia iPhone'a?\nKażdy iPhone wymaga aplikacji czyszczącej. Podczas każdej sesji na iPhonie, niezależnie od tego, czy chodzi o korzystanie z aplikacji, czy przeglądanie stron internetowych, generowanych jest wiele tymczasowych dzienników, pamięci podręcznej i śmieci. Narzędzie do czyszczenia pomaga usunąć te niechciane pliki.\nCzy uważasz, że ta lista środków do czyszczenia iPhone'a na rok 2022 była pomocna? Udostępnij swoje recenzje w sekcji komentarzy poniżej.\nOcena: 4.7 / 5 (na podstawie głosów 365)Śledź nas na\nJak wyczyścić pamięć podręczną na telefonie z Androidem, aby ją przyspieszyć? Ta strona zawiera 3 sposoby, które pomogą Ci usunąć pamięć podręczną aplikacji / systemu / przeglądarki na Samsung, LG, HTC itp. Działającą na Pie, Oreo, Nougat itp.\nŚrodki czyszczące na Androida iPhone Cleaner Clean Master na iPhone'a Środek do czyszczenia pamięci iPhone'a WyczyśćMyPhone Alternative Darmowy Mac Cleaner Mac Cleaner Oczyszczanie plików śmieci Najlepszy środek do czyszczenia iPhone'a Wyczyść alternatywę dla mojego telefonu Najlepszy środek do czyszczenia iPada Recenzja iMobie PhoneClean Mobikin Cleaner dla iOS Recenzja Recenzja Cisdem iPhone Cleaner Recenzja iMyfone Umate Pro


Prezentacje i wystąpienia publiczne - Wszechnica UJ\nPrezentacje i wystąpienia publiczne to program adresowany do osób, których sukces zawodowy i profesjonalny wizerunek zależą między innymi od umiejętności przemawiania w sposób klarowny, przekonujący i przyciągający uwagę. Szczególnie skorzystają na nim uczestnicy, którzy:\nprowadzą szkolenia i wystąpienia konferencyjne;\nprezentują przełożonym efekty pracy zespołu lub działu;\nprowadzą prezentacje produktów i usług świadczonych przez ich firmę;\nsą zaangażowani w projekty zmiany organizacyjnej wymagające umiejętności inspirowania i przekonywania współpracowników\nProgram może być dopasowany do potrzeb osób o różnym poziomie kompetencji i doświadczenia.\npraktycznym doświadczeniu nowych narzędzi\ni umiejętności, pracy z kamerą;\nrozwoju indywidualnego stylu prezentacji uczestników;\ninformacji zwrotnej od trenera\nzdobędą praktyczną wiedzę dotyczącą przygotowania i prowadzenia prezentacji oraz warunków skutecznego docierania i wpływania na odbiorców;\nzyskają świadomość indywidualnego stylu prowadzenia prezentacji;\nokreślą mocne strony i obszary wymagające dalszej pracy;\nnauczą się stosować narzędzia i modele ułatwiające szybkie projektowanie prezentacji różnego typu;\nwzmocnią umiejętność panowania nad mową ciała, aby budować bardziej spójny przekaz i wzmacniać jego oddziaływanie;\nzwrócą uwagę na prawidłową emisję głosu i dykcję;\npoznają zasady dalszej pracy z głosem, oparte na fizjologii właściwego oddychania i mówienia;\nwzmocnią umiejętność pracy nad trudnymi emocjami podczas wystąpień publicznych;\ndocenią rolę prezentacji jako narzędzia komunikacji biznesowej i zwiększą motywację do jej doskonalenia\nSzkolenie prowadzone będzie z zastosowaniem różnorodnych technik warsztatowej pracy z grupą – symulacji, prezentacji, pracy w grupach, pracy indywidualnej, ćwiczeń z wykorzystaniem kamery. Program kładzie nacisk na dużą liczbę wystąpień realizowanych przez uczestników. Na życzenie uczestników, nagranie każdego ćwiczenia, w jakim wzięli udział, zostanie im przekazane do dalszej, samodzielnej analizy. Uczestnicy otrzymają kompleksową informację zwrotną od grupy i prowadzącego, co pozwoli im dostrzec postępy w rozwoju.\nWprowadzenie do szkolenia, określenie indywidualnych celów;\nWyzwania związane z prowadzeniem prezentacji;\nĆwiczenia i gry „rozgrzewające” – kompetencje prezentacyjne\nAktualny styl prezentacji\nPraca z kamerą: krótkie wystąpienia uczestników;\nInformacja zwrotna od grupy i prowadzącego;\nWskazówki dla całej grupy dotyczące zaobserwowanych trudności\nPsychologia wystąpień publicznych\nPrzegląd technik stosowanych w wystąpieniach publicznych;\nRozumienie roli i wchodzenie w rolę jako narzędzie kształtowania własnego wizerunku;\nWpływ przekonań mówcy na umiejętność zarządzania emocjami podczas wystąpień publicznych;\nMetody radzenia sobie z emocjami podczas wystąpień publicznych\nNarzędzia projektowania wystąpień\nModel komunikacji prezentacyjnej wg schematu Jacobsona;\nNarzędzia tworzące strukturę: narracje, dramatyzacje, struktura zagadkowa, rozprawa, rekwizyty, budowanie utożsamienia, itp.;\nĆwiczenie projektowania prezentacji\nMowa ciała, praca z przestrzenią\n„Niemilknące ciało” – wprowadzenie do komunikacji pozawerbalnej;\nWpływowe style nadawcze: styl intelektualny i emocjonalny;\nPodstawowe zasady zarządzania przestrzenią, kreowania skutecznej komunikacji poprzez mimikę, gesty i postawę\nEmisja i artykulacja głosu – typowe błędy i wskazówki dla uczestników;\nReguły języka polskiego – typowe błędy i wskazówki dla uczestników;\nĆwiczenia rozgrzewające głos\nProjektowanie wystąpień w oparciu o dotychczas otrzymane wskazówki;\nPraca z kamerą: wystąpienia uczestników;\nAnaliza nagrań; indywidualna informacja zwrotna od uczestników i prowadzącego\nWnioski i dalsze kroki\nPrzekucie wniosków po prezentacji na praktyczne zalecenia;\nRefleksja nad mocnymi stronami i indywidualnym stylem prezentacyjnym;\nStworzenie wstępnego planu rozwoju umiejętności;\nPodsumowanie szkolenia i „zadanie domowe” (nagranie wystąpienia na zadany temat)\nFollow up - Dzień 3 [opcjonalnie]\nPrzegląd postępów uczestników\nPrzegląd osiągnięć i wyzwań związanych z wystąpieniami publicznymi uczestników od czasu zakończenia szkolenia;\nSprawdzenie poziomu realizacji zaleceń i postanowień; dyskusja o efektach pracy uczestników\nAnaliza materiałów wideo przygotowanych przez uczestników w ramach „zadania domowego”;\nInformacja zwrotna od uczestników i prowadzącego;\nNowe zalecenia wdrożeniowe dla całej grupy\nTrening dykcji i pracy głosem\nPrzygotowanie wystąpienia w oparciu o identyczny dla uczestników tekst;\nPraca z kamerą: analiza wystąpień z punktu widzenia poprawności wymowy i umiejętności interpretowania tekstu w sposób wzbudzający reakcję audytorium;\nInformacja zwrotna od uczestników i prowadzącego\nPodsumowanie i kolejny etap rozwoju\nWskazówki i teoria przydatna w kontekście aktualnych wyzwań uczestników;\nUaktualnienie planu rozwoju umiejętności kompetencji;\nOpracowanie programu szkolenia i jego modyfikacje na podstawie wyników analizy potrzeb;\nPrzygotowanie i realizację szkolenia;\nMateriały szkoleniowe dla uczestników w wersji elektronicznej;\nNagrania wystąpień dla uczestników;\nZaświadczenia dla uczestników szkolenia;\nRaport ewaluacyjny na podstawie ankiet ewaluacyjnych (zgodnych ze wzorem przygotowanym przez Wszechnicę UJ) i obserwacji trenera;\nDojazd trenera do miejsca realizacji usługi;\ndo ustalenia z klientem 2 dni szkoleniowe + opcjonalnie follow up rekomendowane 8-12 osób


Emiliano Sala - NaszeMiasto.pl\nWięcej na temat: katastrofa katastrofa lotnicza\nWypadek samolotu w Pyrzowicach: w Żyglinie rozbiła się awionetka [Zdjęcia + Wideo]\nCztery osoby zginęły w wypadku awionetki, która miała wylądować w Pyrzowicach. Samolot chwilę przed lądowaniem zniknął z radarów.\nWięcej na temat: wypadek awionetki w Żyglinie Pyrzowice wypadek awionetki pyrzowice katastrofa lotnicza\nWięcej na temat: awionetka bugaj wypadek awionetka Bugaj wypadek awionetki Bugaj zdjęcia wypadek awionetki bugaj wypadek awionetki w bugaju wypadek bugaj dziś katastrofa awionetki Bugaj\nWięcej na temat: starogard wypadki tragedie starogard linowiec wypadek starogard pożar młyn\nRozbiła się niemiecka awionetka. Są ofiary\nNajprawdopodobniej dwie osoby zginęły w okolicach Zielonej Góry, w miejscowości Gubinek. Rozbiła się tam niemiecka awionetka.\nWięcej na temat: gubin gubinek katastrofa awionetki rozbiła się awionetka zielona góra\nAnna Sala - Wojnowska


obudowa przełącznika nie działa poprawnie w C\nPytanie w sprawie c – obudowa przełącznika nie działa poprawnie w C\nSource Set 30 May 2012, 10:36 z Krunal Gandhi\nW moim programie jest niewielki problem.\nPo naciśnięciu 2 lub 3 lub 4 wyświetli się poprawnie, ale po naciśnięciu a lub b lub c itd. Wyświetli poprzedni wynik zamiast wydrukować opcję Nieprawidłowy.\nWłaściwie kod działa zgodnie z oczekiwaniami, o ile dodasz; poIn this add logic linia. Mike Kwan\nProblem polega na tym, że używaszscanf(). Jest to diabelnie trudne, aby to zrobić dobrze. Gdy użytkownik wpisze literę,scanf() wybór nie powiedzie się (powinieneś sprawdzić wynik każdegoscanf() aby upewnić się, że zadziałało, i powinieneś poradzić sobie z błędami), aby wartość nie uległa zmianie. Drugiscanf() jest zaprojektowany do pobierania nowej linii, ale gdy pismo zostało wpisane, zamiast tego pobiera literę. Jeśli jesteś w systemie Windows,getch() to rozsądna opcja. Alternatywnie użyjfgets() czytać linię, a następniesscanf() analizować to. To zazwyczaj bardziej solidna strategia. Jonathan Leffler\n@JonathanLeffler - Właściwie, ponieważ wydaje się, że OP chce wprowadzić pojedynczy znak. Chciałbym skorzystać z prostego rozwiązania oferowanego przez standard C:fgetc. ArjunShankar\n@ArjunShankar:fgetc() nie przeczytam niczego, dopóki nie wpiszesz nowej linii, a potem będziesz musiał uporać się z pominięciem nowej linii. Z pewnością jest to możliwe; nie byłoby to, co polecam. Jonathan Leffler\nscanf("%c" , &c); Po co to? Nigdy go nie używasz. ArjunShankar\n@MikeKwan - W programie jest zdecydowanie coś dziwnego. Iteraz że wiem, co to jest, opublikowałem odpowiedź. Dobry chwyt, średnik! ArjunShankar\nfflush(stdin); tynie może Zrób to.fflush nie jest dla strumieni INPUT. Nie można „opróżnić” strumienia INPUT.fflush jest dla strumieni OUTPUT (np. aby upewnić się, że cokolwiek wydrukujesz zostanie wysłane do terminala) ArjunShankar\n@MikeKwan - Może być. Moje komentarze to komentarze, a nie odpowiedzi :) ArjunShankar\n30 May 2012, 08:39 z valdo\nscanf zwraca wartość, której nie sprawdzasz.\nGdy używany z%d specyfikator - powinien analizować liczbę całkowitą. Ponieważ wpisujesz wartość niecałkowitą -scanf zwraca kod błędu ichoice jest niezmieniony\nojej, masz rację valdo\n30 May 2012, 08:45 z 80\nHmm, jedną z błędów w twoich kodach jest:\nponieważ funkcja scanf wymaga od użytkownika naciśnięcia klawisza enter, zanim będzie mógł zapisać znak w odpowiedniej zmiennej.\nWięc jeśli kompilator czyta wiersz:\nodczytuje twoje wejście, PLUS, ENTER.\nTak więc wymuszenie funkcji scanf do przechowywania danych wejściowych, PLUS, ENTER, w zmiennej znakowej.\nByłoby lepiej, gdybyś używał funkcji getche () lub getch () zamiast używać funkcji scanf () i nie używaj nigdy:\nponieważ spowodowałoby to błąd.\nPrzykład użycia funkcji getche () lub getch ():\nRóżnica między nimi polega na tym, że getche () wyświetla twoje naciśnięcie klawisza, podczas gdy getch () nie.\nUwaga: nie zapomnij umieścić\nDodatkowe informacje: Jeśli nadal chcesz korzystać z funkcji scanf (), upewnij się, że deklarujesz swoją ulubioną zmienną jako:\nwtedy możesz użyć:\nale twoja zmienna może zawierać tylko 19 znaków, tak jak zadeklarowaliśmy na tablicy znaków.\nA podsumowanie nie jest używane:\nponieważ może to wpłynąć na inne funkcje scanf (). :)\nROZWIĄZANIE (Ostrzeżenie Spoilera):\nMożesz także użyć przełącznika, aby porównać znaki. Po prostu zmień wartości\nHmm, nic dziwnego, że inni o tym nie wiedzą. Myślę, że jestem trochę prymitywny w tym języku. Zrobię inne rozwiązanie dla tego, ale byłoby znacznie dłużej. ChinoCarloSedilla\nChociaż OP może być w porządku z tą odpowiedzią, użycie „conio.h” jest zazwyczaj złym pomysłem. Jeśli chodzi o standard C, nie ma czegoś takiego jakconio.h. Wiele maszyn tego nie robimieć a conio.h. Ponadto definicje wconio.h mają też nieco inne zachowanie w zależności od tego, który kompilator je wysłał. Możesz przeczytać dlaczego tutaj:en.wikipedia.org/wiki/Conio.h ArjunShankar\n@ArjunShankar dzięki za ten pomysł. Już zaktualizowałem go do znacznie lepszego rozwiązania. ChinoCarloSedilla\nWłaściwie może to być strasznie złe. Co jeśli użytkownik wprowadzi 100 znaków i użyjesz 20-znakowego bufora?scanf zapisze adresy pamięci, których nie wolno dotykać. Prawdopodobnie spowoduje to błąd wykonania. ArjunShankar\ndzięki ChinoCarloSedilla twoja odpowiedź jest dla mnie idealna .. Krunal Gandhi\n@ArjunShankar, dlatego określiłem, że może pomieścić do 19 znaków, nie martw się, zaktualizuję go teraz. :) ChinoCarloSedilla\nPokaż 6 komentarze\n07 Aug 2013, 06:28 z jipris\nDzieje się tak, ponieważ c, gdy czytasz znaki jako liczby całkowite (scanf („% d” i wybór);) przyjmuje kod ascii znaków, na przykład a = 97, b = 98 c = 99 d = 100, jeśli chcesz przeczytaj a jako 1 b jako 2 itd. będziesz musiał dodać dodatkowy kod, który powie programowi, czy liczba jest równa kodowi ASCII abcd lub e odejmij go od 96, więc otrzymasz 1,2,3 ..\nNie, wybór jest odczytywany jako „% d” i będzie liczbą całkowitą, problem istnieje gdzie indziej. Antti Haapala\n30 May 2012, 08:41 z WonderfulDay\nWygląda na to, że dostajesz liczby do Choice, a znaki do c. ale używasz tylko opcji Choice w przełączniku, nigdy nie sprawdzasz C var.\nZasadniczo, jeśli trafisz literę, zapisuje ją w C var, a następnie ponownie używa starej wartości w Choice.\nTo ma dla mnie sens. OP ma nieco dziwny program i wydaje się, że zrozumiałeś, czego chcą poprawnie. ArjunShankar\nco oznacza wskaźnik funkcji zerowej w C?\nNie blokowanie muteksu dla pthread_cond_timedwait i pthread_cond_signal (w systemie Linux)\nUżywanie funkcji członka klasy C ++ jako funkcji zwrotnej C\nCzy C ma zajęcia? [Zamknięte]\nWyodrębnij liczbę całkowitą z bufora znaków\nJak wstawić syntetyczne zdarzenia myszy do kolejki wejściowej X11\nprzechwytywanie myszy za pomocą Xlib\nDlaczego nie drukuje parametrów Unicode?\nWylicz wszystkie uchwyty okien na pulpicie\nPisz aplikacje w C lub C ++ na Androida? [Zamknięte]\nProces w tle (demon) w C nie execvp () -ing\nWielokrotne wykonanie tego samego podprogramu wątku przy komentowaniu pthread_join dla tego wątku [duplikat]\nC - konwersja niepodpisanej int na tablicę bez znaku\nC - Czytanie ze standardowego wejścia w postaci wpisywanych znaków\nJak obliczyć skrót MD5 dużego pliku w C?\nWstępne pobieranie danych do pamięci podręcznej dla x86-64\nbłąd segmentacji z strcpy [duplikat]\nPriorytet operatora i operator trójskładnikowy\nJak połączyć się ze sterownikiem tuningu Linuksa\nZnalezienie maksimum i minimum z CUBLAS\nCzy char * envp  jest trzecim argumentem dla main () portable\nUżywanie makr w C do definiowania struktur danych\njak przekonwertować datetime na uniksowy znacznik czasu w c?\nJakiej wartości zaległości powinienem użyć?\nPrzenośny sposób na wychwytywanie sygnałów i zgłaszanie problemu użytkownikowi\nczy możemy używać funkcji ankiety z nienazwanymi rurami?\nJak wykryć UTF-8 w zwykłym C?\nJak sprawdzić GPU w CentOS Linux\nWłaściwie kod działa zgodnie z oczekiwaniami, o ile dodasz; poIn this add logic linia.\nProblem polega na tym, że używaszscanf(). Jest to diabelnie trudne, aby to zrobić dobrze. Gdy użytkownik wpisze literę,scanf() wybór nie powiedzie się (powinieneś sprawdzić wynik każdegoscanf() aby upewnić się, że zadziałało, i powinieneś poradzić sobie z błędami), aby wartość nie uległa zmianie. Drugiscanf() jest zaprojektowany do pobierania nowej linii, ale gdy pismo zostało wpisane, zamiast tego pobiera literę. Jeśli jesteś w systemie Windows,getch() to rozsądna opcja. Alternatywnie użyjfgets() czytać linię, a następniesscanf() analizować to. To zazwyczaj bardziej solidna strategia.\n@JonathanLeffler - Właściwie, ponieważ wydaje się, że OP chce wprowadzić pojedynczy znak. Chciałbym skorzystać z prostego rozwiązania oferowanego przez standard C:fgetc.\n@ArjunShankar:fgetc() nie przeczytam niczego, dopóki nie wpiszesz nowej linii, a potem będziesz musiał uporać się z pominięciem nowej linii. Z pewnością jest to możliwe; nie byłoby to, co polecam.\nscanf("%c" , &c); Po co to? Nigdy go nie używasz.\n@MikeKwan - W programie jest zdecydowanie coś dziwnego. Iteraz że wiem, co to jest, opublikowałem odpowiedź. Dobry chwyt, średnik!\nfflush(stdin); tynie może Zrób to.fflush nie jest dla strumieni INPUT. Nie można „opróżnić” strumienia INPUT.fflush jest dla strumieni OUTPUT (np. aby upewnić się, że cokolwiek wydrukujesz zostanie wysłane do terminala)\n@MikeKwan - Może być. Moje komentarze to komentarze, a nie odpowiedzi :)


IDC: wzrost znaczenia edge computingu i spadek zaufania do technologii - Platforma Przemysłu Przyszłości\nNa całym świecie jest dziś 55 miliardów tzw. urządzeń brzegowych, dzięki którym rosną zyski przedsiębiorstw.\nSpada zaufanie do technologii, w związku z czym organizacje powinny być bardziej empatyczne wobec klientów.\nW ciągu 5 lat niemal wszystkie zadania wykonywane na komputerach zostaną zautomatyzowane.\nRelacjonujemy warszawską konferencję IDC Predictions 2020.\nBrzeg sieci jest wszystkim, co stoi poza serwerownią – w taki sposób zdefiniował Edge Computing Michał Zajączkowski z Hewlett Packard Enterprise. Prezes zarządu firmy wspomniał, że w swoich fabrykach (np. w czeskim zakładzie) HPE używa urządzeń brzegowych do zbierania danych dla rozwiązań Predictive Maintenance i podnoszenia jakości produkcji. Firma współpracuje m.in. z Seagate’m, który gromadzi 50 milionów zdjęć dziennie:\n– Wszystkie fotografie trzeba przeanalizować. Robimy to, żeby w odpowiednim momencie wychwycić problem na linii produkcyjnej. Zapobiegamy powielaniu go i zdążamy zdjąć wadliwe produkty. Większość danych pochodzi z miejsc styczności technologii informatycznych z produkcyjnymi – podkreślił Zajączkowski.\nW sieci działa obecnie 55 miliardów urządzeń brzegowych. Przedstawiciel HPE zauważa, że wpływa to na wszystkie aspekty życia – obecność edge computingu upraszcza wiele działań, pozwala firmom więcej zarobić lub zmniejszyć koszty spowodowane np. przestojami, które bez IoT są częstsze.\n(Michał Zajączkowski w czasie swojej prezentacji mówił również o gospodarce o obiegu zamkniętym – fot. PPP)\nDo 2025 roku zautomatyzowanych zostanie 90 proc. działań wykonywanych na komputerach i związanych z zarządzaniem danymi, a w usługach chmurowych znajdzie się 600 razy więcej informacji niż jest dzisiaj. Ale równocześnie rozpowszechnienie AI i IoT niesie ze sobą bardziej wyrafinowane i częstsze cyberataki. Dyrektor Oracle, Tomasz Bochenek, uważa, że w Europie Środkowo-Wschodniej mamy szansę reagować na zagrożenia sprawniej, ucząc się na błędach krajów, które technologię chmurową wprowadzały wcześniej.\nCyfrowa transformacja sprzedaży\nTomasz Maciejak z CCC zaznaczał z kolei, że najważniejsze zmiany w funkcjonowaniu centrali firmy oraz poszczególnych sklepów przyniosło uruchomienie systemu do zarządzania produktem i współpracy z dostawcami. Polskie przedsiębiorstwo we wszystkich swoich sklepach korzysta z narzędzia do planowania grafiku, które kontroluje, czy jego układ jest zgodny z przepisami prawa pracy. Przedsiębiorstwo zautomatyzowało zaopatrzenie, a także monitoruje wskaźniki finansowe. Maciejak opowiadał również o urządzeniach dla klientów, pozwalających im skanować stopy i dobierać wygodne obuwie oraz o aplikacji mobilnej z rozszerzoną rzeczywistością do wirtualnej przymiarki.\nDyrektor IDC Polska, Ewa Lis-Jeżak, zwróciła w trakcie konferencji uwagę, że cały czas spada zaufanie do technologii. W przewidywaniach IDC po raz pierwszy pojawiła się kwestia empatii potrzebnej zarówno wobec klientów, jak i zespołów w organizacjach. Prognozy firmy analitycznej dotyczą też wydatków na transformację cyfrową – w 2020 roku europejskie przedsiębiorstwa wydadzą na ten cel ponad 271 miliardów dolarów (1054 miliardy złotych). Do 2023 pieniądze na zmiany procesów będą połową wszystkich inwestycji w IT (w 2018 roku stanowiły jedną trzecią). Utrzymać lub nawet zwiększyć nakłady na ten sektor planuje 95 proc. przedsiębiorstw w Europie, a w Polsce takie zamiary ma 91 proc. firm. 2020 rok przyniesie więcej zakupów systemów z AI, na Starym Kontynencie wydamy na nie 10 mld dolarów (niemal 39 mld złotych).\n(Philip Carter: przyszłość wiążę się ze wszechobecną AI – fot. PPP)\nW 2025 roku 60 proc. europejskich organizacji użyje cloud computingu do unowocześniania swoich głównych systemów informatycznych, co przełoży się na wyższą wydajność w co czwartej organizacji. Philip Carter, główny analityk IDC, zaznaczył, że jedna trzecia firm poniesie porażkę przy próbach rozwoju biznesu i innowacji, bo nie wypracuje własnej metody, tylko skopiuje cudze pomysły.\nAI Cloud computing Edge computing Predictive maintenance


Elixir - Porozmawiajmy o IT\n06 paź 2021 POIT #134: Elixir\nWitam w sto trzydziestym czwartym odcinku podcastu „Porozmawiajmy o IT”. Tematem dzisiejszej rozmowy jest Elixir.\nW tym odcinku o Elixir rozmawiamy w następujących kontekstach:\ndlaczego firma Michała postawiła na Elixir?\njak ten język się narodził? Kto go stworzł?\nna jakie zapotrzebowanie odpowiada Elixir i związane z nim technologie?\njak skonstruowany jest język i jak wygląda architektura jego środowiska uruchomieniowego?\nczy programowanie funkcyjne z wykorzystaniem Elixira jest trudne?\njakie najpopularniejsze lub najszerzej używane biblioteki i frameworki aplikacyjne dla języka Elixir są godne odnotowania?\nkto stoi obecnie za rozwojem tego języka?\njak wygląda popularność tego języka w branży?\njak rozpocząć naukę tego języka?\njak wygląda rynek pracy i zapotrzebowanie na specjalistów znających Elixir?\nczy tranzycja z języków obiektowych na Elixira jest trudna?\njakie są problemy albo braki tego języka?\nczy jest to dobry język na start w programowaniu?\nElixir – https://elixir-lang.org/\nCuriosum – https://curiosum.com/\nProfil Michała na LinkedIn – https://www.linkedin.com/in/michal-buszkiewicz/\nTo jest 134. odcinek podcastu Porozmawiajmy o IT, w którym z moim gościem rozmawiam o języku programowania Elixir.\nPrzypominam, że w poprzednim odcinku rozmawiałem o Kubernetes.\nWszystkie linki oraz transkrypcję dzisiejszej rozmowy znajdziesz pod adresem porozmawiajmyoit.pl/134.\nSponsorem podcastu jest firma Apptension, wiodący polski twórca produktów cyfrowych i wydajnych, skalowalnych aplikacji. Zerknij na ich portfolio na apptension.com/portfolio\nSponsorem dzisiejszego odcinka jest również platforma rekrutacyjna SOLID.Jobs. Jeśli szukasz pracy w IT, koniecznie odwiedź adres solid.jobs. Znajdziesz tam tylko oferty pracy z widełkami wynagrodzeń. Jeśli aktualnie nie myślisz o znalezieniu nowej pracy, to koniecznie zapisz się na Job Alert, a otrzymasz regularnie wiadomość e-mail z zestawieniem ofert, które mogą Cię zainteresować. Jeśli w swojej pracy dalej korzystasz z SVN-a, to koniecznie odwiedź SOLID.Jobs.\nNazywam się Krzysztof Kempiński, a moją misją jest poszerzanie horyzontów ludzi z branży IT. Środkiem do tego jest między innymi ten podcast. Zostając patronem na platformie Patronite możesz mi w tym pomóc już dziś. Wejdź na porozmawiajmyoit.pl/wspieram i sprawdź szczegóły. Jednocześnie bardzo dziękuję moim obecnym patronom.\nCześć, Michał! Bardzo mi miło gościć cię w podcaście.\nCześć! Fajnie, że się spotykamy, cieszę się bardzo.\nTak sobie teraz pomyślałem, że właściwie nie dołożyłem do tego przedstawienia ciebie, wątku prelegenta na konferencjach, bycia gościem w podcastach – z tego co widzę, jest to też znaczący element twojej działalności.\nTak. To było bardzo fajne doświadczenie, pokazać się podczas ElixirConf EU w Warszawie niedawno. Porozmawialiśmy trochę o debugowaniu aplikacji. Generalnie prezentacja pokazywała trochę bardziej nieszablonowe podejścia do tematu, co też tak jak wspomniałeś, bardzo lubię. Odzew był bardzo pozytywny, nawet wśród osób, które gdzieś tam z tymi podejściami się nie do końca zgadzały, tak że bardzo się cieszę, że udało się i że mieliśmy okazję spotkać się wszyscy razem po dwóch latach.\nTak, dokładnie, teraz wszyscy są wytęsknieni tego typu spotkań.\nTen odcinek jest też dla mnie wyjątkowy pod tym względem, że Elixir, o którym będziemy dzisiaj rozmawiać, jest technologią, czy powiedzmy tą gałęzią technologii, w której się obracam od około trzech lat, więc tym bardziej miło mi będzie porozmawiać z osobą, która też w tym stacku się odnajduje.\nDobrze, to przejdźmy może do konkretów. Na początku stały punkt programu, czyli pytanie do gościa. Michał, czy ty słuchasz podcastów? Jeśli tak, to masz jakieś swoje ulubione audycje, o których możesz powiedzieć?\nMuszę przyznać, że jestem typem odbiorcy, który raczej najlepiej się czuje jako czytelnik. Zdarza mi się czasem słuchać podcastów typowo nastawionych na Elixir, takich jak Thinking Elixir, w którym zresztą też kiedyś brałem udział, Elixir Mix czy też podcasty trochę szczerzej patrzące na programowanie, Running in Production przykładowo.\nNatomiast jeśli chodzi o takie zasoby czytane, które gdzieś tam są bardziej w moim stylu, jeśli chodzi o odbiór treści, to bardzo lubię wszystko, co podsyłają mi takie topowe newslettery, takie jak Data Elixir, ElixirWeekly. Tak że jeśli chodzi o takie źródła wiedzy na bieżąco, to to są rzeczy, które najczęściej do mnie docierają.\nPewnie, rozumiem. Wcale mnie to nie dziwi, ponieważ mam takich odbiorców podcastu, którzy jedyne, w jaki sposób konsumują ten podcast, to jest czytanie transkrypcji, więc doskonale rozumiem, że po prostu każdy ma swoje preferencje, jedni wolą słuchać, niektórzy oglądać, a jeszcze inni czytać.\nWiesz co, myślę, że to jest kwestia też jakiejś takiej umiejętności skupienia się na jednym wątku przez dłuższy czas. Muszę przyznać, że jest to coś, z czym czasem też walczę. I odbiór treści czytanej w takiej formie, że gdzieś przeczytam sobie fragment artykułu, później przeczytam kolejny fragment, później kolejny, często wydaje mi się po prostu łatwiejsze dla mojego sposobu funkcjonowania umysłu.\nAle podcasty też oczywiście cenię, tak że nie zamykam się na nie zdecydowanie.\nTak jak powiedziałem we wstępie, jesteś współzałożycielem software house’u Curiosum, i stawiacie na Elixira, jest to wiodąca technologia w waszej działalności. Ale nie zamykacie się tylko na te projekty, które realizujecie, ale też udzielacie się właśnie w community, prowadzicie bloga, tak jak powiedziałeś, byłeś ostatnio prelegentem na ElixirConf EU.\nZastanawiam się skąd ten wybór? Co by nie było, Elixir nie jest najpopularniejszą technologią wśród software house’ów, a w Polsce to już na pewno.\nTo nigdy nie było dla nas najważniejszym faktem, ale po jakimś czasie po założeniu firmy, dotarło do nas, że prawdopodobnie jesteśmy pierwszym software housem w Poznaniu i nie jestem do końca pewien, ale prawdopodobnie również w Polsce, który od samego początku postawił twardo na Elixir, nie przechodząc na tę technologię z jakiejś innej. To jest dość istotne, bo dzięki temu możemy powiedzieć, że jesteśmy w tej technologii specjalistami, nie rozmieniamy się gdzieś tam na drobne, dalej inwestując jakoś resztkowo w stosy technologiczne, w które nie do końca wierzymy.\nNatomiast posiadając takie doświadczenie zaczerpnięte z naszych doświadczeń podczas wcześniejszej pracy zawodowej w tworzeniu aplikacji webowych dla wielu branż, doskonale wiemy, jakie ograniczenia niosły za sobą technologie, których używaliśmy do tej pory w zakresie skalowalności czy zdolności do obsługi liczb jednoczesnych połączeń sięgających setek tysięcy, czy w niektórych przypadkach milionów. Tak że po prostu uświadomiliśmy sobie, że języki tradycyjnie kojarzące się z radością pracy developerów i prostotą wejścia w nie oraz tworzenia przy ich pomocy aplikacji, są po prostu nieprzystosowane do równoległego i szybkiego przetwarzania danych.\nTo wszystko generuje później koszty skalowania infrastruktury, o których inwestorzy i twórcy startupów nie mają pojęcia w początkowej fazie rozwoju ich produktów. Tak że postanowiliśmy wyjść naprzeciw technologią, która jest zarówno produktywna w samym tworzeniu aplikacji, jak i gotowa na wyzwania stojące przed startupem, kiedy ta aplikacja opuszcza już fazę MVP i staje się czymś dużo więcej.\nJasne, rozumiem. Czyli był to świadomy wybór, zdefiniowanie sobie tych problemów technologii, z którymi wcześniej mieliście do czynienia i postawienie mocne na Elixir, rozumiem.\nTo teraz prosiłbym cię, żebyś opowiedział trochę o samym języku. Skąd się wziął, kto go stworzył? Bo język jako taki nie jest może super, powiedzmy historyczny, ale bazuje na rozwiązaniach, które mają już sporo doświadczenia. Opowiedz, proszę, co to jest za język i jak powstał.\nGłównym twórcą tego języka i w zasadzie pomysłodawcą całej tej idei jest Brazylijczyk José Valim, związany zresztą przez długi czas z ekosystemem, środowiskiem języka Ruby. Ten oto programista rozwinął w sobie zainteresowanie językami, narzędziami bardziej odpowiadającymi wyzwaniom związanym z wymaganiami wydajności i skalowalności, które stawiają dzisiejsze aplikacje.\nSzczególną pasję wzbudziła w nim maszyna wirtualna języka Erlang, który już od lat 80., kiedy to został stworzony w firmie Ericsson, był szeroko stosowany w telekomunikacji do rozwiązywania właśnie takich zagadnień. Okazuje się, że tego rodzaju problemy w dużej mierze wróciły i uświadomiono sobie, że jest to tak naprawdę zagadnienie, które jest bardzo istotne.\nElixir jest pewnego rodzaju nadbudową nad ową VM-kę, która odpowiada za odczuwane przez José braki w języku Erlang, jeśli chodzi o składnię czy też wygodę użycia. Czerpie też inspiracje z innych języków funkcyjnych, czyli Haskella, Clojure oraz tak składniowo z Ruby. Z pierwszego z nich zaczerpnął m.in. konstrukcję pattern matchingu, drugi z nich dał początek pewnym koncepcjom związanym z organizacją kodu i różnym syntactic sugarom, a trzeci to tak naprawdę stylistyka składniowa.\nAczkolwiek porównując to do języków naturalnych, porównałbym Ruby i Elixir do języków, które mają, powiedzmy podobną ortografię, ale całkowicie różną gramatykę, ponieważ często występuje takie sprzedawanie Elixira jako podobnego do Ruby, co jest dość, powiedziałbym powierzchowne, jeśli nie bzdurne.\nTak, na pierwszy rzut oka tak się może wydawać, ale pod spodem zupełnie inne mechanizmy.\nTak, to też wynika z tego, że trochę zazębia się tutaj to community. Sami twórcy zresztą byli też związani z językiem Ruby i gdzieś tam dość mocno się przyczynili do rozwoju jego ekosystemu. Tak że tutaj jest dużo zbiegów okoliczności, a mało tak naprawdę jakichś faktycznych powiązań.\nTak, myślę, że to raczej są tacy bracia, jeśli można tak powiedzieć o technologiach, natomiast faktycznie są to de facto dość mocno różniące się rozwiązania. Tak jak powiedziałeś, José Valim jako wówczas core member Ruby on Rails szukał rozwiązania problemu właśnie współbieżności, patrzył, jak to wygląda w innych językach, i tak trafił tak jak mówiłeś na Erlanga.\nI tak jak sam później mówił, pokochał wszystko to, co w tym Erlangu, w tej maszynie wirtualnej znalazł, ale też znienawidził to, czego tam brakowało, czyli właśnie prostoty tworzenia kodu, która w Ruby powiedzmy, jest czymś, co de facto definiuje cały język. Postanowił więc te swoje doświadczenia z Ruby trochę portować, powiedzmy na nowy język, który właśnie stworzył, i który działa na maszynie wirtualnej, więc jest tutaj możliwość uruchamiania wręcz kodu erlangowego.\nChciałbym cię zapytać, na jakie zapotrzebowanie odpowiada Elixir? Języków programowania jako takich pewnie powstaje do szuflady bardzo wiele, niektóre giną tak samo szybko, jak powstają, ale Elixir jakoś się wybił czy wybija. W związku z tym należy podejrzewać, ze faktycznie zaspokaja jakiś problem czy jakąś niszę. Mógłbyś coś takiego wymienić, jeśli chodzi o Elixira?\nTo jest pewnego rodzaju sweet spot między efektywnością, prostotą kodowania a jakością wyników pracy, można tak to najkrócej określić. Myślę, że istnieje niejeden powód, dla którego to właśnie Elixir, a nie takie języki bardziej powiedzmy, purystyczne funkcyjnie, jak np. Haskell, są na pewnego rodzaju drodze do mainstreamu, można powiedzieć.\nSądzę, że Elixir odpowiada na odwieczny problem ściany, na jaką natrafiają startupy wybierające na początku technologię znaną z szybkiego developmentu aplikacji, powiedzmy radości pracy developerów, time to deliver itd. Te technologie nie mają wiele do zaoferowania w kwestii dalszego skalowania tych aplikacji. Oczywiście samo zastosowanie odpowiedniej technologii, czyli tutaj Elixira, nie jest gwarancją czegokolwiek, dlatego że jest masa projektów źle prowadzonych i wykorzystujących to w nie do końca świadomy sposób, ale charakterystyka języka i tego toolsetu sprawia, że jednak daje większe możliwości i wprowadzi w naturalny sposób do lepszych rozwiązań.\nDobrze, teraz może wejdźmy trochę w to, jak ten język jest zbudowany. Jak wygląda konstrukcja tego języka, jak wygląda architektura środowiska uruchomieniowego? Rzuć, proszę na to trochę światła.\nTo zacznijmy właściwie od narzędzi dzielonych z językiem Erlang, czyli BEAM – jest to maszyna wirtualna, która z kolei jest częścią OTP, czyli Open Telecom Platform, który jest po prostu zestawem standardowej biblioteki narzędzi dla języka Erlang. I jest to ta podstawa, która zapewnia właśnie skalowalność i fault tolerance, czyli taką kolejną ważną cechę zarówno Erlanga, jak i Elixira. No i do tej właśnie maszyny wirtualnej kompilowane są zarówno aplikacje w języku Erlang, jak i Elixir.\nSame cechy tej maszyny wirtualnej są zdecydowanie ważniejsze od tego, co czasami wspomina się jako istotne w przypadku maszyn wirtualnych choćby Javy, czyli jakieś wieloplatformowości itd. Tutaj tak różowo nie jest, jeśli chodzi np. o uruchamianie kodu skompilowanego w jednej platformie na drugiej platformie, ale nie jest to najważniejszy aspekt i nie na tym się skupiamy.\nNatomiast istotną cechą samego języka jest fakt, że zadania jego własnego kompilatora są relatywnie skąpe, biorąc pod uwagę fakt, że znaczna część kluczowej konstrukcji języka jest zbudowana przy pomocy makr, czyli takich funkcji przyjmujących pewne dane i zwracających kod. Przykładowo słówko tworzące funkcję, czyli „dev” jest także zdefiniowane jako makro, w kodzie źródłowym samego języka można dokładnie zauważyć, co dzieje się w trakcie definiowania funkcji, jak jest rejestrowana itd. Ten kompilator po wstępnym parsingu kodu przechodzi do fazy macro expansion, podczas której kolejne makra, czyli te nasze funkcyjki generujące kod są rozwijane do postaci, w której już nie ma czego rozwijać. Znajdują się w niej tylko elementy złożone z czegoś, co widzimy w takim module Kernel Special Forms, czyli takich konstrukcji obsługiwanych bezpośrednio przez kompilator. I ta postać z kolei jest już kompilowana do bytecode’u.\nTo tak w największym skrócie sposób, w jaki Elixir wygląda i można powiedzieć, że to jest dość ważna cecha, dlatego że ona bardzo mocno określa sposób tworzenia biblioteczek, jakichś tam DSL-i, gdzie to jest potrzebne. I oczywiście cały aspekt metaprogramowania, który też jest bardzo ważny.\nWłaśnie, to jest ciekawa rzecz, że całkiem spora część Elixira jest obecnie napisana w Elixirze tak de facto.\nTo jest fajna rzecz. To, co powiedziałeś, że ten bytecode, czyli Elixir kompilowany do bytecode’u, uruchamianego później na maszynie wirtualnej, to jest tak jakby, jak to się mówi, stać na ramionach gigantów, czyli bazujemy na tym, co przez dziesiątki lat tak naprawdę, jeśli chodzi o maszynę wirtualną Erlanga, było rozwijane i na tym dokładamy jeszcze coś, co pozwala w przyjemniejszy, łatwiejszy, bardziej dostępny sposób pisać właśnie oprogramowanie. Myślę sobie, że analogia, która byłaby tutaj może bliższa słuchaczom, jest taka, że można porównać to trochę do Scali i maszyny wirtualnej Javy. Można powiedzieć, że jest to podobny koncept przynajmniej.\nTak jak powiedziałeś Elixir bazuje na paradygmacie funkcyjnym, to jest jak gdyby core’owy paradygmat tego języka. Co by nie było, ten paradygmat zyskuje obecnie trochę na popularności, ale ciągle jest jeszcze niszowy. Programowanie obiektowe zdecydowanie króluje, jeśli chodzi o nowoczesne języki programowania.\nMyślę sobie, że trochę na to niestety wpływa to, że w takim powszechnym mniemaniu, jak się z kimś rozmawia, to programowanie funkcyjne odbierane jest jako bardzo skomplikowane, matematyczne, wręcz naukowe, nacechowane, naszpikowane taką teorią – taki jest odbiór. Czy ty się z czymś takim spotykasz, programując w Elixirze? Czy tak to programowanie funkcyjne wygląda?\nElixir jest raczej daleko od tego rodzaju cech, które właściwie bardziej przypisuje się językom bardziej purystycznym, jak Haskell, Elm, może F Sharp. Pewnych koncepcji istniejących w tych językach po prostu celowo wręcz do Elixira nie przenoszono. Są to języki często statycznie typowane, kiedy w Elixirze mamy typowanie dynamiczne, i jest to naprawdę sól w oku programistów, którym przyszłoby korzystać z Elixira, a którzy do tej pory korzystali np. z Haskella. W Elixirze mamy podejście let it crash, w kontraście do takiego ścisłego wyłapywania błędów już w trakcie kompilacji np. w Haskellu. Tak że zagorzali fani języków funkcyjnych takich bardzo purystycznych, z dużą dozą teoretyzmu, raczej Elixira nie polubią.\nJa traktuję tutaj programowanie funkcyjne jako taki paradygmat, który po prostu kładzie nacisk na pewnego rodzaju procesy przetwarzania danych z jednej postaci w drugą. Myślę, że to jest ten aspekt programowania funkcyjnego, który w Elixirze jest najistotniejszy i bardzo ułatwiony w użyciu przez choćby pipe operator.\nWracając jeszcze do wszystkich innych języków – uwielbiany przez wszystkich ludzi bardzo zajaranych tym matematycznym aspektem programowania funkcyjnego, np. Haskell, pozostanie prawdopodobnie językiem też świetnym, ale wybieranym w konkretnych projektach, do osiągnięcia konkretnego celu, w sposób świadomy. Natomiast Elixir ma przed sobą przyszłość obejmującą szersze zastosowanie.\nNiebagatelne znaczenie ma tu pewnego rodzaju prostota oraz zalety jego maszyny wirtualnej w porównaniu z językami obiektowymi, do których, można powiedzieć, dobudowano pewne elementy programowania deklaratywnego czy też funkcyjnego – w zasadzie wszystkie znane nam współcześnie języki jakieś takie elementy posiadają. Zdecydowanie największym plusem jest tutaj i mutowalność danych i całkowity brak obiektowości – jakkolwiek dziwnie to brzmi dla kogoś przyzwyczajonego do OOP – ponieważ dzięki temu banalnie proste jest rozumowanie o interakcjach pomiędzy modułami i np. przesyłanie kodu w środowisku tak lokalnym, jak i rozproszonym.\nTak. Myślę, że istotna też jest praktyczność i pragmatyczność tego. Jednak Erlang jako język służący w telekomunikacji musiał być bardzo pragmatyczny, i tak samo tutaj mam wrażenie, że wszystkie te koncepty programowania funkcyjnego, które występują i w Erlangu, i w Elixirze właśnie temu też mają służyć. Tutaj nie chcemy teoretyzować, tylko faktycznie zająć się budowaniem czegoś, co po prostu będzie na produkcji działało.\nA jeśli mówimy już o produkcji i o tych zastosowaniach, to chciałbym cię zapytać, jakie takie najszerzej używane frameworki, biblioteki, właśnie zastosowania Elixira są, powiedzmy, znaczące i godne odnotowania?\nNie da się ukryć, że jeżeli rozmawiamy o aplikacjach elixirowych gdzieś tam w webie, to najczęściej myślimy o Phoenix Framework lub którychś z jego składowych. Jest to framework, który można porównywać w pewnym sensie do Ruby on Rails, jednak jest on zdecydowanie bardziej modułowo skonstruowany i zdecydowanie łatwiej poszczególne jego elementy gdzieś tam z siebie odłączać, jeżeli to jest potrzebne, z którychś rezygnować itd. Zresztą twórcy tego frameworka nie raz otwarcie mówili, że korzystali z doświadczeń frameworków właśnie takich jak Ruby on Rails i pewne zastosowane w nich rozwiązania projektowe po prostu uznali za błędne, i nauczyli się na swoich czy też cudzych błędach.\nDość ciekawym elementem, obecnie jeszcze niebędącym w wersji 1x jest Phoenix LiveView, który w pewien sposób przypomina Reacta, choć jest to porównanie, które należałoby tak naprawdę obwarować wieloma gwiazdkami. Jest to de facto wykorzystanie możliwości maszyny wirtualnej Erlanga w zakresie umiejętności przetwarzania setek tysięcy procesów na raz do przeniesienia, zarządzania stanem interfejsu aplikacji webowej, tak naprawdę na nasz serwer, który utrzymuje dla każdego połączenia z tym serwerem użytkownika, który np. wyświetla daną stronę. Tak naprawdę osobny proces, który utrzymuje stan i przesyła go klientowi, czyli przeglądarce przez WebSockety, co też jest zresztą mocną stroną Phoenixa.\nDalej mamy też oczywiście frameworki stosowane często wspólnie z nim, np. Absinthe do konstrukcji API w GraphQL’u, co też jest bardzo fajną sprawą. Oczywiście nie wspominając o wszystkich innych bibliotekach, które są niezbędne dla większości apek, choćby Ecto do baz danych, które zresztą jest ciekawym podejściem do mapowania tabel na struktury w naszym języku, gdyż rzecz jasna nie mamy tu do czynienia z językiem obiektowym, więc nie może to być mapowanie obiektowo-relacyjne. Natomiast główną cechą jest to, że Ecto stara się być tak blisko koncepcji czysto SQL-owych, jak to tylko możliwe. I to jest troszeczkę inne podejście niż w wielu innych frameworkach ORM-owych.\nDalej: jest wiele gotowych bibliotek, które pozwalają na interakcje z popularnymi usługami chmurowymi, choćby z AWS-em, tak że tutaj nie trzeba, powiedzmy, wyważać otwartych drzwi czy też wymyślać koła na nowo. Jest wiele różnych klientów HTTP, które pozwalają na interakcje z jakimiś API, które musimy konsumować w sposób taki bardziej zorganizowany. Generalnie wszystkie biblioteki takich najpopularniejszych zagadnień, z którymi mamy do czynienia w aplikacjach webowych są dostępne.\nA już odchodząc trochę od weba, mamy też oczywiście Nerves, czyli framework służący do budowy aplikacji IoT, głównie na poziomie takich urządzeń, jak Rasberry Pi, co też jest bardzo fajnym zagadnieniem. Jeśli chodzi o zupełnie inne zastosowania, to czasami szukam sobie jakichś takich zupełnie innych rzeczy i okazuje się, że jest np. framework do dwuwymiarowych interfejsów użytkownika jak Scenic. Albo framework do konstrukcji jakichś takich ładnych wizualnie dashboardów z użyciem również Racta, jak Kitto.\nTak że tutaj zastosowań jest naprawdę dużo. Wiele bibliotek, które zostały stworzone np. kilka lat temu i nie są do dzisiaj rozwijane, działa dzisiaj bez przeszkód z uwagi na to, że Elixir jest językiem, który mocno stawia na taką harmonijność rozwoju. W tej chwili jest to język, jeśli chodzi o ficzery z pierwotnego backloga, zamknięty. One zostały wszystkie zrealizowane, i jedynie czasami pojawiają się jakieś depracations, które tak naprawdę zostaną skasowane dopiero wtedy, kiedy powstanie Elixir 2.0. Natomiast ogólnie rozwój języka jest taki, że raczej trudno jest się spodziewać, że gdzieś tam z wersji załóżmy 1.12 na 1.13 pojawią się jakiekolwiek breaking changes, taka jest po prostu ich polityka. I to jest fajne, bo mniej zaskoczeń następuje.\nAle oprócz tego, taka branża właśnie jak IoT czy też urządzenia embedded, to też są takie zastosowania, o których może na pierwszy rzut ucha nie słychać, ale które w pewnych miejscach naprawdę się odnajdują. Ja znam np. takie zastosowanie w przypadku nawigacji na łodzie, gdzie łódź wypływa na miesiące wręcz w morze, więc nawigacja nie może tam zawieść, musi działać w sposób ciągły i w sposób przewidywalny.\nOkazuje się, że jest taka firma, która właśnie produkuje takie zaawansowane rozwiązania i chwalili się jakiś czas temu wykresami z tego, jak np. wygląda konsumpcja pamięci, procesora itd. To jest naprawdę przewidywalna technologia, w sensie maszyna wirtualna wstaje, aplikacja jest uruchamiana, konsumpcja zasobu jest na jakimś poziomie i przez miesiące utrzymuje się to na tym samym poziomie, nie ma tutaj żadnych wahnięć.\nDodatkowo na takich, już może nie zabawkach, ale takich płytkach jak np. Rasberry, Arduino itd. – tam też można uruchomić taką bardzo, bardzo odchudzoną wersję maszyny wirtualnej właśnie z Elixirem, to wszystko bootuje się bardzo szybko. Tak że takie zastosowania też jak najbardziej są.\nPowiedziałem o tej niezawodności trochę, ty wspominałeś Michał o tym, że w sposób współbieżny i w sposób rozproszony możemy taki kod sobie uruchamiać. Czy według ciebie właśnie te ficzery pod tytułem niezawodność, współbieżność, jakaś rozproszoność tego kodu – czy to są takie główne ficzery, które sprzedają Elixira?\nTak, tutaj myślę, że wszelkie systemy, które wymagają wysokiego poziomu współbieżności lub takie, które mogą tego w przyszłości wymagać, są dobrym miejscem, żeby tej technologii użyć. Na przykład Elixir m.in. dzięki maszynie wirtualnej Erlanga pozwolił Discordowi na obsługę 5 milionów równoległych połączeń klientów. Później z kolei troszkę to podrasowano jeszcze z użyciem Rusta, ale cały czas jest to wynik, który budzi respekt.\nI tak jak mówiłem, mamy tutaj często do czynienia z podejściem let it crash, umożliwionym przez bardzo sprawne zarządzanie procesami i zajmowanymi przez nie zasobami przez VM, który bardzo sprawnie je czyści wtedy, kiedy jakiś proces się nam wykrzacza w kontrolowany sposób. I oczywiście filozofia ta to nie jest takie coś, że świecimy użytkownikom w oczy błędami – są to takie błędy, których oczekujemy na poziomie serwera, z którymi liczymy się już na etapie projektowania w zależności między procesami.\nMyślę, że bardzo fajną rzeczą jest to, że rozumowanie na temat współbieżności przetwarzania jest banalnie proste dzięki temu, że mamy model aktorów i komunikację międzyprocesową przez message passing, a nie współdzielenie danych. I tak jak wspominałem, brak stanowych obiektów znanych z OOP zdecydowanie ułatwia implementację wszelkich zagadnień związanych choćby z przesyłaniem kodu między węzłami w celu odpalania jakichś funkcji zdalnie.\nWłaśnie, José Valim jest twórcą tego języka, o ile mnie pamięć nie myli, był to 2012 rok, gdy w ogóle pojawiły się jakieś pierwsze wersje Elixira. Kto obecnie stoi za rozwojem tej technologii? Jak to obecnie się kształtuje?\nTak, obecnie jest to 6-osobowy Elixir Core Team, którego José również jest członkiem. Natomiast język jest oczywiście wspierany przez szereg firm współtworzących i sponsorujących główne biblioteki i najszerzej zaadaptowane frameworki, jak Phoenix czy Nerves. Core Team oczywiście dba o to, by z jednej strony jak najlepiej wysłuchać głosu społeczności w kwestii funkcjonalności i kierunków rozwoju… Sam José podczas ostatniego ElixirConfa stwierdził, że gdyby zależało to tylko od niego, niektóre elementy języka wyglądałyby zupełnie inaczej, ale decydował głos społeczności.\nNatomiast z drugiej strony chwalebne jest to, że ten Core Team pilnuje, by język nie dostawał za dużo takiego bloatu, czyli funkcji, które nie są na tyle uniwersalnie potrzebne całemu community, by wbudowywać je w jego core. Jest taki silny nacisk, by tego typu rzeczy stawały się osobnymi bibliotekami i jakby rywalizowały ze sobą na czymś na kształt wolnego rynku.\nDobrze, powiedz jak z twojej perspektywy, wygląda popularność tego języka obecnie w branży? Oczywiście możemy sobie zobaczyć na TIOBE index albo innych tego typu indeksach, natomiast chodzi mi tutaj np. o podaż developerów, co może być jakimś znaczącym czynnikiem na przykład dla firm, jeśli chodzi o zdecydowanie się na pójście w tę technologię. I też firmy, które produkcyjnie wykorzystują właśnie Elixira w swoich zastosowaniach.\nZaczynając od końca – oczywiście firm wykorzystujących Elixir produkcyjnie jest coraz więcej i są to naprawdę sporzy gracze, choćby Pinterest, który był w stanie zmniejszyć o połowę liczbę serwerów, która jest im potrzebna, 10 razy mniej kodu w pewnych obszarach aplikacji. Moz, który bardzo zredukował użycie dysków i przyspieszył jego API. Lonely Planet, Financial Times, Toyota, Bleacher Report, Discord…\nPepsiCo, dokładnie. WhatsApp, który wprawdzie używa wprost raczej Erlanga, natomiast jest to oczywiście oparte na tej samej infrastrukturze, więc można tutaj to podpiąć. Tak że tych firm jest coraz więcej, więc myślę, że to jest najlepszy dowód na to, ze ten język ma rzeczywiście wiele do zaoferowania. Natomiast jeśli chodzi o środowisko takie typowo startupowe, to o ile hasło takie jak Ruby on Rails jest pewnego rodzaju triggerem, oczywistością, która od razu kojarzy się z określonymi zaletami znanymi od lat, to Elixir czy Phoenix dalej jest czymś, co trzeba w aktywniejszy sposób sprzedawać.\nWzbraniałbym się jednak przed takim stwierdzeniem, że jest to technologia niszowa. Może raczej bym powiedział mniej oczywista, jeśli chodzi o jej wybór do określonych celów. Natomiast tak jak mówiłem – coraz więcej naprawdę dużych graczy kojarzonych z webem i nie tylko, chwali się użyciem Elixira, co jednak dobrze świadczy o jego sile przebicia.\nNatomiast wracając do rynku pracy – nie da się ukryć, że jest trudny. Większość developerów przechodzi do Elixira z innych języków, na poziomie takim powiedzmy przynajmniej Regularowym. Podaż takich osób jest relatywnie niewielka, gdyż zdolni developerzy bardzo szybko znajdują zatrudnienie. Można powiedzieć, że podaż nie nadąża tutaj za popytem, który jest zdecydowanie widoczny zarówno w software house’ach, które korzystają z tego języka, jak i startupach, które działają na własną rękę. Czasami powstaje w ten sposób troszeczkę niezdrowy wyścig, którego efektem wcale nie jest udana rekrutacja, zarówno w takich firmach bardziej produktowych, jak i software house’ach, ale trzeba się z tym liczyć.\nNatomiast inną strategią, którą również z sukcesami stosujemy w Curiosum, jest rekrutacja młodych utalentowanych programistów, którzy brzydko mówiąc, nie są skażeni programowaniem obiektowym, i wewnętrznie szkolimy ich naszymi autorskimi metodami oraz z dużym powodzeniem powierzamy im zadania rozwoju projektów komercyjnych pod okiem bardziej doświadczonych kolegów.\nI ci Juniorzy naprawdę szybko uczą się tworzenia zgrabnych, uporządkowanych i wydajnych architektur aplikacji. Okazuje się, że tak naprawdę learning curve tego języka jest taki, że wcale nie trzeba developera z jakimś nie wiadomo jak ogromnym doświadczeniem, aby był efektywny. Zależy nam oczywiście, by każdy programista, który dołącza z naszego ramienia do projektów, spełniał określone przez nas standardy, dzięki czemu CV konkretnego developera, który dołącza do konkretnego projektu, ma mniejsze znaczenie niż sam fakt współpracy z nami i dostępu do naszej bazy wiedzy, naszego know-how.\nNatomiast inną strategią, którą również z sukcesami stosujemy w Curiosum, jest rekrutacja młodych utalentowanych programistów, którzy brzydko mówiąc, nie są skażeni programowaniem obiektowym, i wewnętrznie szkolimy ich naszymi autorskimi metodami oraz z dużym powodzeniem powierzamy im zadania rozwoju projektów komercyjnych pod okiem bardziej doświadczonych kolegów. I ci Juniorzy naprawdę szybko uczą się tworzenia zgrabnych, uporządkowanych i wydajnych architektur aplikacji. Okazuje się, że tak naprawdę learning curve tego języka jest taki, że wcale nie trzeba developera z jakimś nie wiadomo jak ogromnym doświadczeniem, aby był efektywny.\nJasne. Właśnie, jak jesteśmy przy nauce tego języka, to chciałbym cię zapytać, jak rozpocząć tę naukę, gdzie szukać materiałów, z czego najpierw skorzystać?\nJest wiele książek na PragProg, m.in. „Learn Functional Programming with Elixir”, która bardzo fajnie spina temat samego Elixira z programowaniem funkcyjnym tak ogólnie, i to jest bardzo fajna książka. Na późniejszych etapach fajnie jest też sięgnąć po książki mówiące o jakichś bardziej konkretnych zagadnieniach z tego języka. Bardzo dużo dała mi choćby książka Chrisa McCorda o metaprogramowaniu w Elixirze, które naprawdę jest czymś zupełnie innym, niż koncepcje, które służą do tego celu w innych językach.\nNatomiast jeśli chodzi o pozostałe zasoby, ja się osobiście uczyłem języka z materiałów dostępnych na jego stronie, w takim bardzo podstawowym zakresie i pomimo że nie są jakoś bardzo obszerne, to mi jako wówczas programiście innych języków, który w miarę dobrze się czuł w nowych rzeczach, wystarczyło to do poznania podstaw.\nJest też Elixir School, czyli taki kurs dostępny też za darmo online, który traktuje to trochę obszerniej. Czasami polecamy też materiały wideo na Udemy, jakieś kursy, które dość szeroko pokrywają zagadnienia związane z Elixirem. Generalnie tych materiałów jest sporo. Może nie tak dużo jak w przypadku jakichś tradycyjnych języków typu Java itd., natomiast generalnie uważam, że są zdecydowanie wyższej jakości i tu na pewno jest z czego się uczyć.\nPewnie. Ja bym może jeszcze do tego dorzucił Exercism.io – to jest taki system do ćwiczenia swoich umiejętności programistycznych, oczywiście w wielu językach, m.in. w Elixirze, gdzie rozwiązuje się poszczególne zadania, które mają rosnący poziom trudności. Swoje rozwiązanie możemy oczywiście sprawdzić lokalnie, ale też wysłać do tej platformy i tam liczyć na komentarz, na sprawdzenie swojego rozwiązania, w takim przyjaznym środowisku. To też jest fajny sposób, żeby albo rozpocząć naukę, albo podszkolić się, robiąc sobie takie codzienne cuty, takie codzienne testy.\nWspominałeś o tym, że np. rekrutujecie czy też przyjmujecie osoby, które douczacie do Elixira. Ja mam bardziej doświadczenie z osobami, które powiedzmy migrują do Elixira w tym sensie, że mają już jakieś doświadczenie, nieraz nawet całkiem duże, w programowaniu w innych językach, zazwyczaj obiektowych. Czy taka tranzycja według ciebie – kiedy ktoś już rzeczywiście ma jakiś warsztat, ale taki mocno obiektowy i chce przejść na Elixira – jest łatwa, jest trudna, czy ma to w ogóle jakieś znaczenie, że ktoś ten bagaż doświadczeń obiektowych duży już posiada?\nJa bym może jeszcze do tego dorzucił Exercism.io – to jest taki system do ćwiczenia swoich umiejętności programistycznych, oczywiście w wielu językach, m.in. w Elixirze, gdzie rozwiązuje się poszczególne zadania, które mają rosnący poziom trudności. Swoje rozwiązanie możemy oczywiście sprawdzić lokalnie, ale też wysłać do tej platformy i tam liczyć na komentarz, na sprawdzenie swojego rozwiązania, w takim przyjaznym środowisku. To też jest fajny sposób, żeby albo rozpocząć naukę, albo podszkolić się, robiąc sobie takie codzienne cuty, takie codzienne testy.\nOczywiście, ma to duże znaczenie. I to wszystko zależy od tego, czy tej tranzycji dokonuje utalentowany programista, solidny developer, który rozumie różnicę paradygmatów i jest gotowy, by ich świadomie powiedzmy nie mieszać, czy jest to koder, który robi to z musu, zostaje wrzucony na głęboką wodę, znając uprzednio, powiedzmy PHP lub jakiś inny język. Widzieliśmy na własne oczy wiele przykładów, w których do programowania w języku funkcyjnym zabierały się osoby, które kompletnie tego paradygmatu nie rozumiały. Tak że dużo zależy od umiejętności konkretnej osoby.\nNatomiast wspominałem wcześniej o pewnej powtarzanej często opinii o podobieństwie Elixira do Ruby, mówiąc teraz trochę o ludziach, którzy robią tego rodzaju przejście, tak zresztą jak i ja. Trzeba uważać, żeby osobie uczącej się Elixira czy też chcącej potencjalnie to robić nie wyrządzić w ten sposób troszeczkę krzywdy, bo to jest trochę tak, jakbyś powiedział, że turecki jest podobny do polskiego, bo mają podobne alfabety.\nTutaj w Elixirze oczywiście mamy całkowity brak obiektowości i mutowalność danych, i kolejną najważniejszą różnicą jest podejście do metaprogramowania, ponieważ oba języki są bardzo elastyczne, ale na kompletnie różne sposoby. W Ruby w zasadzie wszystko można monkey patchować dosłownie w dowolnym momencie w run time’ie, klasy i metody można sobie definiować wedle uznania.\nW Elixirze monkey patching jest praktycznie niemożliwy by design, a magiczne generowanie kodu odbywa się w trakcie kompilacji przez ten mechanizm makr, o których wspomniałem. I zasadniczo z chwilą skompilowania apki, jej moduły są zamknięte na wszelkie dodatki, które w Ruby można dodawać, kiedy się chce. To jest bardzo ważna różnica na etapie, w którym np. jako Senior Developer Ruby’iego jesteś asem tworzenia DSL-i przy pomocy metod Missing Define Method i innych kruczków, a nagle stoisz przed językiem takim jak Elixir, w którym, aby ogarnąć metaprogramowanie, musisz zrozumieć, jak działa choćby AST, Parser i inne zagadnienia z makrami związane. I to jest element, który mi najprawdopodobniej sprawił więcej problemów niż sam fakt odejścia od paradygmatu obiektowego do funkcyjnego.\nTak, czyli ta świadomość tego, co się robi, jest tutaj kluczowa.\nOK, to teraz może trochę niewygodne pytanie, ale chcę cię zapytać, jakie są problemy, braki w twojej opinii, jeśli chodzi o ten język, ten ekosystem?\nProblemy, z którymi mierzymy się, jeśli chodzi o sam język, bo już nie będę tutaj mówił, powiedzmy, o kwestiach już zupełnie pozajęzykowych, to czasami jest to słaba dokumentacja pewnych szeroko używanych bibliotek. Być może ich twórcom czasami brakuje zapału, żeby ją utrzymywać. Czasami jest tak, że dokumentacja rzeczywiście kończy się na READ ME i jest to wszystko, z czym masz do czynienia. Czasami jest tak, że rzeczywiście tego zapału brakuje nawet na rozwijanie samych bibliotek. Np. biblioteka Arc, którą stosuje naprawdę mnóstwo osób, służąca do uploadu plików, poprawcie mnie, jeśli się mylę, ale cały czas jest nieutrzymywana przez jej pierwotnych twórców.\nInne braki? Ostatnio byłem na ElixirConfie właśnie z prezentacją na temat debugowania i generalnie cały czas szukam takiego złotego środka, jeśli chodzi o narzędzia do analizy kodu pod kątem błędów, które w nim wystąpiły. Tak że są pewne braki. Nie będę tu nawet wspominał o sytuacjach, gdy widzę dostępne gotowe biblioteki konsumujące jakieś API dla innych języków i ich brak do Elixira, dlatego że to jest naprawdę rzecz o mniejszym znaczeniu, jeśli API, o którym rozmawiamy, jest dobrze udokumentowane i da się po prostu zrobić dobry klient HTTP do tego celu, tak że to jest naprawdę coś mniej istotnego.\nGeneralnie czasami pojawia się też temat czasów kompilacji, jest to coś, nad czym zespół Elixira bardzo mocno pracuje od kilku przynajmniej wersji. Jest naprawdę wyraźna poprawa w stosunku do tego co było np. w Elixirze 1.8. Głównie związane jest to z pewnymi szczegółami dotyczącymi śledzenia zależności pomiędzy modułami i tego, jakiego rodzaju zależności powinny skutkować automatyczną rekompilacją danego modułu itd. Natomiast ja tutaj widzę naprawdę na tyle ciągły i znaczący postęp, że ufam, że akurat te braki zostaną w pewnym momencie zażegnane i ten czas kompilacji oczywiście będzie się poprawiał. Tutaj jest naprawdę dobrze, jeśli chodzi o odpowiedź na tego rodzaju problemy.\nJasne, rozumiem. Chciałbym jeszcze nawiązać do tego, co mówiłem – że pokutuje takie powszechne mniemanie, że języki funkcyjne są trudniejsze niż obiektowe i przez to może się wydawać, że rozpoczynanie swojej przygody programistycznej od języków funkcyjnych to może nie być dobry pomysł. Że trzeba na początku trochę nasiąknąć doświadczeniem, wiedzą i dopiero później ewentualnie dokonać takiej tranzycji. Mówiliśmy już, że to oczywiście nie jest prawda, ale chcę cię jeszcze zapytać, czy według ciebie Elixir to jest dobry język na start w programowaniu?\nPowiem tak – chciałbym, żeby tak było, natomiast czy tak jest, to w zasadzie zależy od tego, jakie są cechy takiego potencjału intelektualnego osoby, która uczy się programowania, ponieważ są osoby o bardzo różnych predyspozycjach. Jeśli osoby, o których mówimy, mają typowo ścisły umysł, to jak najbardziej programowanie funkcyjne ma przed sobą interesującą przyszłość dla takich ludzi. Ja bym naprawdę chciał spotykać na swojej drodze coraz więcej osób, które w ogóle są, że tak to ujmę, nietknięte takimi zwyczajami związanymi z programowaniem obiektowym.\nNatomiast cały czas jest wiele osób, którym zalecałbym raczej rozpoczęcie od nauki programowania w którymś języku zorientowanym obiektowo, gdyż tak jak mówiłem, rozumiem programowanie funkcyjne – przynajmniej w takim kształcie, w jakim jest ono widziane w Elixirze – jako bardzo mocno skupiające się na takich procesach przetwarzania danych z jednego stanu w drugi. I niekoniecznie jest to sposób rozumowania, który będzie najłatwiejszy dla każdego na początku obcowania z programowaniem.\nDla wielu osób paradygmat obiektowy będzie na tyle bliski do sposobu definiowania zjawisk nas otaczających, że będzie to po prostu paradygmat, w którym te osoby będą efektywniejsze. No i fajnie, też będą miały swoje miejsce, takim osobom też kibicuję. Myślę, że programowanie jest prawie dla każdego. Tak że tak, jest to w dużej mierze zależne od tego, jakie dana osoba ma predyspozycje.\nTak jest, od nastawienia i predyspozycji, faktycznie.\nMichał Buszkiewicz był moim gościem, rozmawialiśmy o języku Elixir.\nMichał, bardzo ci dziękuję za rozmowę!\nNa końcu zapytam cię jeszcze, gdzie cię można znaleźć w internecie, jak się z tobą skontaktować? Gdzie poczytać twoje blog posty?\nOczywiście. Dość często piszę content na naszym blogu curiosum.com, tak że tam przede wszystkim zapraszam po jakieś większe kawałki mojej twórczości. Zapraszam też na mój profil na Linkedin. Jeśli chodzi o Twitter, głównie można mnie znaleźć na naszym profilu firmowym @curiosum_dev. To są takie główne miejsca, w których można mnie spotkać. Czasami też piszę na grupach związanych z językiem Elixir, choćby na Facebooku, głównie informując o nowych postach, więc tam też można mnie złapać.\nSuper. Standardowo wszystkie linki będą w notatce do odcinka.\nMichał, jeszcze raz bardzo ci dziękuję!\nI to na tyle z tego, co przygotowałem dla Ciebie na dzisiaj! Elixir to funkcyjny język programowania, działający na maszynie wirtualnej Erlanga. W najnowszej ankiecie Stack Overflow Developer Survey Elixir zajął 4. miejsce wśród najbardziej lubianych przez programistów języków programowania. Sam od kilku lat działam w ekosystemie Elixira i zdecydowanie polecam!\nNazywam się Krzysztof Kempiński, a to był odcinek podcastu Porozmawiajmy o IT o języku Elixir.


Z Londynu i Ohio - Historia - rp.pl\nAktualizacja: 27.12.2009, 00:05\nZ Londynu i Ohio\nŻołnierze amerykańskiej 89. Dywizji Piechoty forsują Ren pod St. Goar, 26 marca 1945 r.\nTo jest tekst o wojnie zachodnich aliantów z Niemcami, lecz w jego całkiem niegłębokich tłach rozwija się dobrze znana opowieść o Anglikach i Amerykanach, o ich rywalizacji i im tylko właściwych dziwactwach.\nSłowem, o wyższości rytualnej herbatki nad osobliwym zwyczajem żucia gumy.Zapewne w turnieju na ekscentryczność Anglicy wzięliby górę, choćby za sprawą marszałka Bernarda Lawa Montgomery’ego, który z upodobaniem ubierał się w różowy sweter, jakkolwiek trzeba pamiętać, że w tym sporcie USA mogło wystawić gen. George’a Pattona, który również lubował się w kostiumologicznych innowacjach, nie mówiąc już o manierach, które w przybliżeniu można określić jako cezariańsko-kowbojskie. Poniżej dalsza część artykułu\nTylko że Patton był dużo energiczniejszy od Monty’ego, który długo gromadził masy sprzętu, zanim ruszył w wyścig z jankesami. Te wyścigi – czy to w wykonaniu Pattona bądź Clarka, czy ich brytyjskich konkurentów – to zresztą jedna z najbardziej irytujących cech alianckich kampanii na kontynencie, gdyż bardzo utrudniały synchronizację rozmaitych działań bojowych. Ale taka już jest generalska natura, wciąż niesyta chwały i sławy. Koniec końców, Koniew i Żukow też ścigali się do Berlina i oprócz ambicji obu sowieckich marszałków stała za tym również niezbyt budująca żądza łupu.\nBrytyjczycy byli słabszym partnerem w sojuszniczym tandemie. Karty rozdawali Amerykanie, co Brytyjczycy dobrze rozumieli, choć od czasu do czasu mieli jakieś frustracyjne odruchy. Zresztą do dziś ich stosunek do Amerykanów bywa zabarwiony specyficzną ironią. Jakiś czas temu w londyńskim metrze widziałem taką scenę. Siedzi sobie grzecznie bardzo angielski Anglik, całkiem tweedowy, ze starannie przystrzyżoną bródką. Nad nim zaś stoi, lekko się chwiejąc (po części w rytm pędzących wagoników metra, po części w rytm wypitego alkoholu), pokaźnej postury Amerykanin. Na głowie kowbojski kapelusz, na nogach takież buty, w ustach guma do żucia. Anglik zerkał nań, zerkał, wreszcie nie wytrzymał i pyta: – Sorry sir, are you from Texas? Amerykanin ponuro popatrzył w dół i wycedził: – No, I am from Ohio. I jak tu nie wierzyć w stereotypy?


Pudry do włosów - Profesjonalny Sklep Wyczesani.com\nDodano: 30-04-2016 w kategorii: Porady autor: ewa\nPudrowane peruki używane były do końca XVIII wieku, a kres pudrowanym fryzurom położył podatek od pudru na głowie, pobierany przez rząd.\nDziś również wracamy do tego dawnego zwyczaju i pudrujemy włosy, jednak już w zupełnie innej formie i zastosowaniu, a i cel tego zabiegu daleko odbiega od tego z XVIII wieku.\nDziś pudry stosowane są przede wszystkim do zwiększenia objętości fryzurze, czyli nadania jej objętości, a dodatkowo przedłużą fryzurze świeżość.\nPuder nakłada się w miejsca, gdzie chcemy uzyskać większą objętość włosów – zarówno u nasady jak i na końce. Niewielką ilość pudru wystarczy „nasypać” na wybraną partię włosów (najlepiej je unosząc ) i palcami rozprowadzić po powierzchni kosmyków. Możesz też rozprowadzić puder na dłoniach lub rozetrzeć w palcach i nałożyć na wybrane partie włosów. Pudru nie musisz wyczesywać. Nie pozostawia żadnych widocznych resztek, jednak matuje włosy. Usuniesz go w trakcie kolejnego mycia szamponem.\nNależy pamiętać że pudry mają dwie formy aplikacji w sprayu lub solniczce.\n#jak uzyc pudru do wlosow


Sprzedaż samochodu niejednokrotnie kojarzy się nam z długofalowym procesem, obejmującym dawanie ogłoszenia, poszukiwanie nabywców oraz przeprowadzanie z nimi negocjacji. Można również podejść do sprawy nieco inaczej i cały proces powierzyć firmie, w tym komisowi samochodowemu.\nPraca informatyka jest zajęciem ciekawym i jednocześnie różnorodnym. Osoba po studiach informatycznych może pracować na trzy podstawowe sposoby.\nPierwszy z nich o umowa o pracę. Tak może być zatrudniony pracownik firmy na stałe lub na przykład nauczyciel akademicki czy szkolny. Taka praca jest bardzo bezpieczna, stabilna, a nie zamyka dróg rozwoju. Osoba z umowa o prace jest spokojna o swoją posadę, więc wolny czas może poświecić na własny rozwój oraz badania nad tematem, który je interesuje. Bardzo wiele osób podsiadających stałe zatrudnienie dorabia sobie dodatkowo. Może tworzyć lub pozycjonować strony internetowe albo zajmować się poprawianiem błędów w kodach stron www.\nformat projektowanie przedsiębiorstwo oprogramowanie program do fakturowania erp aplikacja usługi programowanie systemy crm marketing firma osoby reklama komputer programy narzędzia internet program do faktur relacje przedsiębiorstwa strony rozwiązania crm aplikacje praca firmy program sprzedaż reklamy sieci system branża produkt systemy


Robert Lewandowski będzie ojcem chrzestnym syna Kuby Wesołowskiego? | PlotkiMagazyn.pl\nRobert Lewandowski będzie ojcem chrzestnym syna Kuby Wesołowskiego?\nW pierwszy tydzień sierpnia Kuba Wesołowski z żoną Agnieszką(30 l.) spędził kilka dni nad Bałtykiem. Aktor brał udział w dorocznym triathlonie, a ukochana mu kibicowała. Po zawodach, choć pogoda nie dopisała, spacerowali po plaży, obejmowali się i przytulali. Agnieszka, już w widocznej ciąży, od czasu do czasu głaskała swój brzuszek. Jak zdradził ostatnio Kuba, będą mieli syna.\nWszystko układa się tak, jak sobie zaplanowali. Dwa lata temu w czerwcu wzięli ślub i marzyli o powiększeniu rodziny. Teraz te pragnienia się spełniają. Oczekując na dziecko, para zastanawia się, jakie imię dać chłopcu, oraz planuje chrzciny.\n- Kuba marzy, by ojcem chrzestnym synka został Robert Lewandowski. Poznali się jakiś czas temu i polubili. Piłkarz jest fanem filmu.Oglądał “Czas honoru”, w którym grał Kuba. Ich żony bardzo się zaprzyjaźniły – mówi “Dobremu Tygodniowi” znajomy aktora.\nKuba od dawna podziwiał talent piłkarski Roberta Lewandowskiego (27 l.). Sam od dziecka trenował piłkę nożną, dziś występuje w zespole piłkarskim artystów. Ich ścieżki przecięły się dzięki żonom.\n- Anię poznałam przez projektantkę Violę Piekut. Przygotowywałam się wtedy do ślubu. Stojąc przed lustrem w przymierzalni,\ndoszłam do wniosku, że warto nad sobą popracować, potrenować. Viola poleciła mi obóz organizowany przez Anię – wspomina Wesołowska.\nŻona piłkarza namówiła Agnieszkę do zmiany nawyków żywieniowych i do tego, by sama przygotowywała posiłki. Kuba był zaskoczony, kiedy ukochana zaczęła szaleć w kuchni, ale wkrótce rozsmakował się w kaszach i owsiankach. Koszem kwiatów dziękował żonie za smaczne gotowanie. A ona była wdzięczna przyjaciółce za dobre rady.\nGdy tylko Ania jest w Polsce, spotykają się choćby na godzinkę. W 27. urodziny przyjaciółki Agnieszka złożyła jej życzenia na Facebooku.\n- Dziękuję Ci, Aniu, za nasz wspólny rok, zmieniłaś moje życie o 180 stopni! Chciałabym choć w małym stopniu być dla Ciebie taką podporą, jaką Ty jesteś dla mnie – napisała Agnieszka.\nAktor z żoną odwiedzają Lewandowskich w Monachium. Wiele razy byli na stadionie podczas meczów, uczestniczyli w słynnym Oktoberfest, czyli monachijskim święcie piwa. W ubiegłym roku bawili się na imprezie urodzinowej Roberta.\nPotem gościli sławnego piłkarza na imieninach Kuby, które aktor zorganizował w jednej z restauracji na Starym Mieście w Warszawie. Kubę i Roberta wiele łączy, przede wszystkim tradycyjne wartości, które obaj wyznają.\n- Jestem konserwatystą. Rodzina, dom, dobro, sprawiedliwość,odwaga – to wartości, które cenię – mówi aktor.\nPiłkarz publicznie deklaruje przywiązanie do wiary i do polskości. Kilka lat temu brał udział w akcji “Nie wstydzę się Jezusa”. Przed meczami zawsze odmawia modlitwę. Taki ojciec chrzestny to wzór do naśladowania dla pierworodnego syna Wesołowskich.\nLewandowscy odpoczywają w Rzymie! Brzuszek Ani jest już naprawdę duży!


Pościel 3D Zwierzęta 160x200 PIES i KOT Best Friends 013 | Tania pościel bawełniana, prześcieradła, narzuty, koce | eStilex.pl\nDom Pościel Pościel 160X200 Pościel 3D Zwierzęta 160x200 PIES i KOT Best Friends 013\nNumer produktu w sklepie 2937\nPościel z nadrukiem 3D 160x200 wykonana jest z wysokiej jakości bawełny. Dzięki nowoczesnej technologii druku wzór na pościeli jest niezwykle wyraźny i trwały, tworząc jednocześnie jednolitą strukturę z tkaniną. Kolory są żywe i nie bledną, nawet po wielu praniach. Dominującym kolorem pościeli jest: biały, rudy i odcienie szarości. Pościel jest miła w dotyku, nadruk nie powoduje efektu szorstkości jak ma to miejsce w tanich pościelach.\nPościel stanowi świetny pomysł na prezent dla kogoś bliskiego. Nie ważne czy jest to dziecko, czy osoba dorosła. Jeśli ktoś jest miłośnikiem psów lub kotów i nie widzi świata poza swoim pupilem z pewnością będzie się cieszył gdy zrobimy mu taką niespodziankę. Pościel z kolekcji Best Friends marki Faro zapewnia najwyższą jakość oraz staranność wykonania. Produkt posiada certyfikat bezpieczeństwa Oeko-Tex Standard 100.


Napisane: 24 cze 2016, o 19:51\nU mnie po 27 zł chyba, że w doniczce ceramicznej wtedy po 30 zł ale 4 pędowych nie widziałam.\nNapisane: 25 cze 2016, o 09:28\nU mnie też nie ma, same 2 pędowe.\nNapisane: 30 cze 2016, o 18:55\nW Castoramie dendrobia nobile białe, żółte, różowe i pomarańczowe Firebird wszystkie po 19.98\nW LM w ostatni weekend widziałam P. Liodoro przecenione o 50% z 55 zł\nNapisane: 7 lip 2016, o 21:16\nTesco- nawiązując do oferty z aktualnej gazetki, od dzisiaj dostępne są miniaturki Phalaenopsis za 9,99 zł. /w praktyce w niektórych sklepach były już dostępne najprawdopodobniej 2-3 dni wcześniej/.\nDodatkowo dostępne Phalaenopsisy w 'normalnych' rozmiarach, (o których w gazetce nie wspomniano) cena : 19,99zł za sztukę, niby opisane jako dwupędowe, w praktyce wiele egzemplarzy ma 3 lub 4 pędy.\nPędem, bo warto.\nNapisane: 14 lip 2016, o 20:08\nW Kauflandzie phalaenopsisy w cenie 19,99 zl/szt. Piękne kolory. Niestety jednopędowe. Dwupędowe ponad 30,00 zł.\nNapisane: 11 sie 2016, o 22:44\nW Biedronce od dzisiaj dwupędowe storczyki po 19,99\nNapisane: 12 sie 2016, o 21:52\nDwa dni temu kupiłam w Tesco za 15,00 z jednym kwitnącym pędem.\nNapisane: 18 sie 2016, o 14:40\nPiękny mix w obi, po 21,90zl, różne rodzaje.\nNapisane: 20 sie 2016, o 02:16\nWiecie może gdzie w miarę tanio dostanę młode sadzonki Vand? Na ebay'u znalazlem kilka niektóre nawet po 4 euro + 5 euro przesyłka, ale jakoś kolorystyka mi średnio odpowiada. Niebieska Vanda to by było marzenie ;)\n,,Być ateistą to żaden wstyd. Wprost przeciwnie: wyprostowana postawa, która pozwala spoglądać dalej, powinna być powodem do dumy" - R. Dawkins\nzapożyczone od kornik\nNapisane: 21 sie 2016, o 18:53\nPotwierdzam, we Wrocławskim Obi tez widziałam sporo cambriowatych po 21,90 do tego zygopetalum po 35 zł. Dendrobia nobile białe ale nie pamiętam w jakiej cenie. Było nawet jedno cymbidium z dwoma pędami olbrzymie po 89 zł.\nNapisane: 24 sie 2016, o 14:53\nTo komarzyca - Plectranthus "Lime light".\nNapisane: 24 sie 2016, o 21:43\nW L-M dendrobium Firebird - 35,-\n[ Posty: 96 ] Idź do strony nr... 1, 2, 3, 4, 5, 6, 7\nUżytkownicy przeglądający ten dział: sylvi76 i 15 gości


Peter Hyballa mówi, co myśli. "Mak? Był słaby. Chuca? Głupota" - Sport WP SportoweFakty\nPeter Hyballa mówi, co myśli. "Mak? Był słaby. Chuca? Głupota"\nPeter Hyballa nie owija w bawełnę i mówi, jak jest. Po meczu z Legią Warszawa (1:2) nie szukał usprawiedliwień dla swoich piłkarzy. Zachowanie Chuki, który podarował rywalom rzut karny, nazwał wprost "głupotą".\nMaciej Kmita 12 Grudnia 2020, 23:36\nLegia zaskoczyła... Czesława Michniewicza. "Nie tak to miało wyglądać"\nBiała Gwiazda uległa mistrzowi Polski 1:2, ale do 81. minuty prowadziła po golu Yawa Yeboaha. Krakowianie zaskakująco dobrze radzili sobie w pressingu i dość długo realizowali plan stawiającego wysokie wymagania Petera Hyballi.\nKoncepcja posypała się 9 minut przed końcem meczu, gdy Chuca sfaulował w swoim polu karnym Luquinhasa. Hiszpan nadepnął na stopę próbującego wstać z murawy rywala i sędzia Jarosław Przybył wskazał na "wapno", z którego Tomas Pekhart wyrównał. Poproszony o komentarz do sytuacji, która była momentem zwrotnym spotkania, Peter Hyballa odparł bez ogródek: - To zachowanie było głupie.\nNiemiec nie ugryzł się też w język, gdy został zapytany o zmienienie Michała Maka już w przerwie. Przed meczem chwalił go, że jest największym wygranym ostatnich dni, ale skasował go już po 45 minutach. - Michał grał źle. Nie rozumiał wszystkich poleceń dotyczących pressingu. Do tego miał żółtą kartkę. Nie było to najlepsze spotkanie w jego wykonaniu, dlatego dokonałem zmiany - wyjaśnił z zaskakującą bezpośredniością Hyballa.\nA co trener Wisły miał do powiedzenia o meczu? - Szkoda, że przegraliśmy, ale muszę skomplementować moją drużynę. Przez pierwsze 60 minut wyglądało to dobrze. Graliśmy super pressingiem, widać było ten nasz nowy styl. Stwarzaliśmy też okazje, ale mieliśmy problemy, będąc przy piłce. Nie wyglądaliśmy też najlepiej kondycyjnie. Z tygodnia na tydzień będzie się to jednak poprawiało.\n- Straciliśmy bramkę po głupim rzucie karnym w 81. minucie, następnie najlepszy napastnik ligi strzelił gola w 89. minucie. Jak będziemy lepsi kondycyjnie, to takie mecze będziemy wygrywać - zapewnił Hyballa.\nPo 13 kolejkach Wisła ma na koncie 11 punktów i zajmuje 13. miejsce w tabeli, ale po wszystkich meczach trwającej serii krakowianie mogą spaść na przedostatnią pozycję.\nCzy Peter Hyballa utrzyma Wisłę w PKO Ekstraklasie?\nWaldi73 14-12 22:44 Zgłoś komentarz\nDobry trener ,ale zawistne polaki ( podoliński ) już zaczął szczuć na Hyballę w telewizji. I nie wiem,czy leni z polskiego klubu będzie wstanie zmusić do treningu. Już Petrescu kiedyś\npróbował to go grajki zwolnili.\njerrypl 13-12 20:12 Zgłoś komentarz\n@werty W przeciwieństwie do Sa Pinto wydaje się bystry.\nsanta66 13-12 13:52 Zgłoś komentarz\nPanie trenerze, jeszcze ze 2-3 takie publiczne analizy pomeczowe i możesz rozglądać się za nową posadą. Polska liga tego nie toleruje. Jak nie wierzysz, zapytaj von Heesena, byłego\nwerty 13-12 09:20 Zgłoś komentarz\nMichał Mak Chuca Piłka nożna Legia Warszawa Wisła Kraków Polska PKO Ekstraklasa Peter Hyballa