iTechArt logo

“Wyrosłem ze stwierdzenia, że Linux jest lepszy” - wywiad z Mateuszem Adamkiem

Development & QA

Mateusz tłumaczy nam, dlaczego Kubernetes to nie “taki lepszy Docker”, do czego chce dążyć w iTechArt, oraz z czyją jaźnią jego jaźń stanowi jedność. Opowiada o budowaniu blue boxa, pierwszej domowej sieci i o tym, dlaczego od 30 lat nie wstał od komputera. 

Michal_Kwiatkowski.jpg

Michał Kwiatkowski

Senior Content Specialist

Dziennikarz społeczny i kulturalny, rzecznik i organizator festiwali, członek zespołu komunikacji iTechArt

Na Facebooku, na popularnej grupie poświęconej programowaniu, postawiono niedawno pytanie... 

Czym właściwie zajmuje się DevOps? 

Dokładnie. 150 komentarzy nie wystarczyło, żeby wskazać jednoznaczną odpowiedź. 

Ja skłaniam się ku nazwaniu tego metodologią. Nie jestem w tym odosobniony, bo wielu doświadczonych specjalistów, z którymi rozmawiam, zgadza się, że to metodologia, której nikt nie spisał. Nie jest tak, jak ze Scrumem, z Agile czy z innym Waterfallem. Wiem, że takie stwierdzenie często wywołuje śmiech, ale to coś, co po prostu czujesz. 

Nie ma zbioru dobrych praktyk? 

Jest, ale to nie są praktyki dobre w DevOps jako ogóle, tylko na przykład przy tworzeniu architektury aplikacji, która będzie mikroserwisowa, dobre praktyki przy deployowaniu aplikacji w Kubernetesie, dobre praktyki przy deployowaniu aplikacji w AWSie i tak dalej. Jedyny wspólny mianownik, który w tym wszystkim jest, brzmi "to zależy". Czy chcesz uruchomić tę aplikację w tym, czy w tym, w ten czy w inny sposób, czy to AWS, czy to ma być managed service czy tylko AWS jako dostawca infrastruktury? Czy to ma się integrować z czymś na zewnątrz? To wszystko zależy. 

Dlaczego DevOpsi są tacy "hot” na rynku?  

Bo często mają umiejętności odpowiadające na potrzeby obszarów, którymi nikt nie chce się zajmować. Takie niewdzięczne obszary to, na przykład ze strony SysOps, zarządzanie Artifactory lub Docker Registry, ze strony dev wymyślanie, jak zautomatyzować proces deployowania aplikacji i promowania między środowiskami. DevOps ma też jakąś wiedzę programistyczną, wiedzę o infrastrukturze i deployowaniu i jest w stanie wymóc odpowiedni kształt architektury aplikacji i wprowadzić standaryzację. 

Jesteś fanem Kubernetesa?  

Lubię. Podoba mi się abstrakcja, którą dostarcza, orkiestracja czy standaryzacja. Są rzeczy, które bez Kubernetesa - lub innej analogicznej technologii - byłyby nieopłacalne. Dodatkowo Kubernetes wymusza na Tobie pewien sposób developmentu. Wiem, że dla osób znających temat brzmi to jak banał. Ale spotkałem się wielokrotnie ze stwierdzeniami, że "Kubernetes to taki lepszy Docker, więc wrzućmy co tam mamy i będzie OK". Nóż się wtedy w kieszeni otwiera. Pokazuje to, że są różne poziomy znajomości tego rozwiązania. 

Ludzie go nie rozumieją? Wydaje się, że po takim czasie już wszyscy powinni rozumieć i używać. 

Tak naprawdę znam niewiele firm, które potrafią realnie zutylizować to, co daje Kubernetes. Bardzo często jest używany jak armata na muchy. To tak jak z chmurą – jest do wielu rzeczy bardzo dobrym rozwiązaniem, ale trzeba sobie odpowiedzieć na pytanie, czy na pewno potrzebnym. Aplikacja uruchamiana w Kubernetesie musi spełniać określone wymagania. Jeżeli masz poczucie, że wszyscy już go znają, to tylko dlatego, że przestali o nim mówić, bo nie zdawali sobie sprawy, że jest bardziej skomplikowany, niż się wszystkim zdawało. 

A co z Twojej perspektywy jest interesujące, czego chciałbyś się dowiedzieć w obszarze technicznym? 

Nie mam na to jednej odpowiedzi. Nadal Kubernetes, nadal rzeczy związane z dockeryzacją, systemy zrobione stricte pod kontenery - Fedora CoreOS, Flatcar. Z rzeczy nie dotykających bezpośrednio DevOps - bardzo lubię składać własne rozwiązania, na których uruchamiam emulatory starych konsol. Wiem, że są gotowe rozwiązania na rynku, ale lubię złożyć coś sam. Biorę jakieś Raspberry Pi, pada od XBOXa i integruję. 

Zejdźmy niżej. Mocno skupiamy się teraz w firmie na koncepcji tzw. „snowflake’s” (o którym dużo opowiedział Mateusz Grajnert). To tworzenie jasnych ścieżek rozwoju dla osób startujących w danym obszarze w iTechArt wraz z listą kompetencji, jakie trzeba po drodze pozyskać. Jak udało się z DevOpsem?

Na razie mamy wersję, która oddaje zapotrzebowanie klientów iTechArt, bo to jest punkt wyjścia dla funkcjonowania firmy. Zidentyfikowaliśmy 8 kierunków rozwoju. Dopiero kiedy zbudujemy silną pozycję iTechArt DevOps, będziemy mogli zacząć trochę kreować, nie tylko odpowiadać. Finalnie chcę, żebyśmy proponowali klientom nasz własny zestaw narzędzi DevOps, wspierany przez naszych ekspertów. 

Czemu to jest takie wciągające?  

Do tej pory nie miałem realnej możliwości zbudowania czegoś od zera w taki sposób, w jaki sobie wymyśliłem i wymarzyłem. Wprawdzie miałem możliwości budowania rzeczy, ale nigdy z taką swobodą, jaką dostałem tutaj. Dołączyłem do firmy na wczesnym etapie jej rozwoju w Polsce. Jeśli nie dostaniesz od firmy pełnej swobody do budowania czegoś takiego, to tego nie zbudujesz. Łatwo jest znaleźć na rynku IT pracę, ale trudno znaleźć firmy na takim etapie rozwoju, gdzie dostajesz obszar, który masz pokryć w całości. 

Szukałeś takiego miejsca? 

Tak, od jakiegoś czasu. Do tego poszczęściło mi się, że Group Manager, którego dostałem, czuje to. Nasze jaźnie stanowią w takich kwestiach jedność. Przez co faktycznie na razie czuję się komfortowo. 

Uprzedziłeś moje pytanie, bo mam tutaj napisane "teraz jest dobry moment, żebyś opowiedział w samych superlatywach o swoim Group Managerze". Niejako to zrobiłeś, a teraz wypowiedz się proszę o swojej rodzinie, jako Head of Family. Będzie z nich coś? 

Chciałbym wyraźnie zaznaczyć, że nie lubię tego słowa, tylko nie wiem, czym je zastąpić. Family to jest w domu. Nie traktuję swoich współpracowników jako rodziny i uważam, że jest to całkowicie normalne. Wracając do twojego pytania: będzie. Bardzo na plus zadziałało to, że mogłem wpływać na kształt zespołu jeszcze przed dołączeniem. 

Czy to się dzieje często?  

Niespecjalnie. Miałem trzymiesięczny okres wypowiedzenia, rozpoczynałem pracę z początkiem lutego, ale już wcześniej powiedziałem Pawłowi (dyrektor obszaru delivery w iTechArt Poland), że nie wyobrażam sobie, że ktoś inny będzie kształtował mój zespół. 

Jak już wspomniałeś o tym, co robiłeś wcześniej, to może opowiedz, jaka jest twoja historia. 

Mój ojciec mówił, że jak pierwszy raz usiadłem przy komputerze w wieku pięciu lat, to do tej pory od niego nie wstałem. W szóstej klasie podstawówki nauczyłem się Turbo Pascala z książki Ryszarda Jarży, zachęcił mnie do tego mój ówczesny nauczyciel informatyki Ryszard Dytkowicz. Pamiętam, że z pomocą tej książki zobaczyłem, że coś tam wpisałem, skompilowałem i powstał plik, którym zawsze się gry uruchamiało, z rozszerzeniem ".exe". Więc wcisnąłem, zobaczyłem tekst "podaj imię". Jak dotarło do mnie, że sam to zrobiłem, pomyślałem "o tak, jestem hakerem". To było dla mnie coś fantastycznego. 

Wszystko kręciło się wokół komputera? 

Komputery i piłka nożna były od zawsze moją pasją. Po drodze bardzo zainteresowałem się też filmowaniem, efektami specjalnymi, dużo bawiłem się w Adobe Premiere, zacząłem od takiego niszowego programu Ulead MediaStudio Pro, potem też After Effects. Namówiłem rodziców, żeby kupili mi książkę z kursami, przerobiłem całą, nauczyłem się rzucać ogniem i szeregu innych, przydatnych rzeczy. Nagrywaliśmy z przyjaciółmi różne filmy krótkometrażowe, zbudowaliśmy nawet blue boxa, montując pozszywane prześcieradła na rurkach od namiotów. W tym filmowaliśmy, robiliśmy tło i próbowaliśmy to montować, żeby wyglądało np. jakby człowiek był w powietrzu. Siedziałem przy tym po nocach i bawiłem się w postprodukcję. 

Komputery cały czas. 

Nawet jeśli miałem jakąś grę i była po angielsku, to zastanawiałem się, jak mogę ją przetłumaczyć, szukałem plików źródłowych w Norton Commanderze. Znalazłem kiedyś plik z tekstami w grze World Cup 98, próbowałem zmieniać je na polski i po raz pierwszy trafiłem na taki problem, że się nie wyświetlały. Nie rozumiałem dlaczego. A potem się okazało, że to był plik, w którym było wiadomo, które pole od którego do którego było wyświetlone i że musi się po prostu zgadzać ilość znaków. Jak po polsku było krócej, to trzeba było dodać spacji. Kończyło się na tym, że więcej czasu spędzałem na majstrowaniu, niż przy samym jego efekcie. Pamiętam, że pierwszą sieć położyliśmy, jak mieszkałem jeszcze w Słodkowie, w mojej wsi pod Turkiem, gdzie przy szkole zbudowany był blok na sześć mieszkań. Miałem tam dwóch kolegów, którzy też jarali się komputerami. Pierwsza sieć położona na kabelkach BNC, kiedy już RJ było standardem, no ale my sobie ubzduraliśmy, że tak będzie taniej.  

Było? 

Rzeczywiście było, ale nie chciało działać. Ostateczne wszystko zrobiliśmy na RJkach, wyszło dwa razy drożej. Wtedy zacząłem interesować się co to w ogóle jest IP, po co ta maska, dlaczego ona ma 255. O co w tym chodzi, jak to liczyć, do czego to wszystko jest potrzebne. Potem poszedłem do liceum. 

Czułeś już wtedy, że to będzie Twoje życie? 

Pod koniec już tak. Wiedziałem, że chcę iść na studia informatyczne. Zacząłem na kierunku elektronika i telekomunikacja, ale zobaczyłem, co na informatyce robił mój współlokator i wtedy poczułem, że też chcę to robić. No i zrobiłem. Weszło jakieś C, C++, Python, sieci. Pracę inżynierską napisałem w JAVIE, o własnego autorstwa systemie lokalizacji urządzeń mobilnych za pomocą GPS. 

Po studiach typowo szukanie pracy? 

Wysłałem CV w różne miejsca. Trafiłem do firmy, w której robiliśmy systemy wbudowane oraz sieci oparte o WiMAX, mało popularna w Polsce technologia bezprzewodowa. Byłem tam adminem, dużo się tam nauczyłem. W kolejnym miejscu też byłem adminem, w firmie kolegi z tej poprzedniej pracy. Otrzymałem tam dużo podłoża sieciowego, całą serwerownię trzeba było zbudować od zera. Wszystko robiliśmy sami, w dwóch kolejnych siedzibach. Postawiłem tam pierwszą wersję OpenStacka, wtedy jeszcze nawet nie było do niego dokumentacji. 

To tam zaczął się klarować temat DevOps? 

Rzeczywiście tam chłopaki coraz częściej angażowali mnie do zbudowania obrazu systemu, jakieś Jenkinsy ogarniałem. W następnej firmie zostałem zatrudniony już jako DevOps integrator. Okazało się, że zestaw umiejętności, który zdobyłem do tej pory, ktoś olabelował właśnie jako DevOps. Tam pracowałem więcej z klientem i tworzeniem architektury aplikacji. Mocno tam wystrzeliłem. Potem kolejna zmiana firmy, Kubernetes. O każdej z tych firm mógłbym gadać po godzinie, no ale najważniejsze, że ostatecznie jestem tutaj, siedzimy, rozmawiamy sobie, cześć Michał! 

Cześć! Powiedz mi dlaczego Linux jest lepszy? 

Nieprawda, że jest lepszy. 

Może dla Ciebie jest lepszy? 

Po prostu bardziej pasuje mi do rzeczy, które robię. Dużo płynniej poruszam się po zdalnych serwerach, łączę się po nich z SSH, ponieważ Linux dostarcza wiele rzeczy wraz z systemem. Rzeczy, z których korzystam, są natywnie pisane na systemy Unixowe. Posiadając odpowiedni poziom doświadczenia, mogę zainstalować sobie taki system dokładnie w taki sposób, w jaki sobie życzę. Niemniej jednak wyrosłem ze stwierdzenia, że Linux jest lepszy. 

Dokończ zdanie: zapamiętajcie sobie radę, którą dziś Wam wszystkim dam... 

Możecie liczyć na przyjaciół, pomogą Wam. 

Można powiedzieć, że Kazik to jest Twój idol? 

Tak. 

Co wyróżnia go na tle innych polskich artystów? 

Zawsze pasowała mi jego antysystemowość. Lubię język, którym się posługuje i sposób, w jaki zajmuje się narracją rzeczywistości. On nic szczególnie odkrywczego nie porusza, ale kwiecisty sposób, w jaki to przedstawia, piękny, a zarazem bardzo dosadny, jest dla mnie fascynujący. Jego światopogląd pokrywa się z moim, przynajmniej na tyle, na ile mogę wyczytać z jego piosenek czy wywiadów. 

Masz idoli w swojej branży? 

Mam, ale czułbym się skrępowany, gdybym wymienił ich z imienia i nazwiska. Można powiedzieć, że w niektórych firmach, w których pracowałem, napotkałem na swojej drodze ludzi, którzy w pewnych aspektach byli dla mnie wzorem. 

A pan Ryszard, Twój nauczyciel? 

Tutaj mogę powiedzieć wprost. Bardzo dobrze zaszczepił mi wiele rzeczy na samym początku. 

To na koniec zapytam Cię o coś takiego: co myślisz o roli nauczycieli informatyki w Polsce? To przecież często osoby, szczególnie kiedyś, które zaczynały uczyć tej informatyki trochę znikąd. 

– Przerobiłem kilku nauczycieli i nauczycielek informatyki w swoim życiu, nikt nawet nie dorastał do pięt Ryszardowi. To wynika raczej z tego, że po prostu jest dobrym nauczycielem, bo nadal pracuje w tej szkole. Mało tego, w ostatnich kilku latach zdarzało się, że dzwonił do mnie z prośbą o pomoc w ustawianiu sieci w szkole, bo była oparta o Linuxa. Moja córka w jednej z łódzkich szkół podstawowych miała nauczyciela, który na wielu płaszczyznach przypominał mi tego mojego, bo faktycznie uczył tej informatyki, a nie tylko przerabiał materiał, którego nauczył się po jednym kursie. Jeśli jesteś całe życie nauczycielem biologii i nie lubisz się z komputerami, to po jednym kursie, choć bardzo się postarasz, ciężko będzie ci zachęcić tych ludzi do czegoś innego, niż granie w gry. Moja córka w szkole miała zajęcia, na których uczyła się prostych algorytmów, w postaci klocków (Scratch). Nie wiem, czy jest to w podstawie programowej, czy wynikało z inicjatywy nauczyciela, ale miało sens, pokazało elementarne zasady tego, jak się myśli przy komputerze. Nie wiem, jak odpowiedzieć na pytanie o rolę, tym niemniej doświadczenie pokazuje, że są różni nauczyciele, nie ma rzeczy czarno-białych. Bo “różne są odcienie szarości, od czerni do białości”. 

Chyba nie pozostaje nam nic innego, niż zakończyć tę rozmowę Twoją klamrą z "12 Groszy". Dzięki za wywiad!