POIT #196: Web3 od strony technicznej

Witam w sto dziewięćdziesiątym szóstym odcinku podcastu „Porozmawiajmy o IT”. Tematem dzisiejszej rozmowy jest Web3 od strony technicznej.

Dziś moim gościem jest Konrad Kokosa – Założyciel crowdpub.org, serwisu na nowo definiującego sposób pisania i czytania książek. Współzałożyciel inicjatywy dotnetos.org mającej na celu nauczanie w obszarze .NET, w szczególności o wydajności aplikacji. Niezależny konsultant programujący od kilkunastu lat, prelegent konferencyjny i autor książki Pro .NET Memory Management. Sceptyczny fan technologii Web3 i blockchain. Microsoft MVP.

Sponsor odcinka

Sponsorem odcinka jest firma Farnell.

W tym odcinku o Web3 rozmawiamy w następujących kontekstach:

  • droga Konrada do Web3
  • co to jest Web3 i co ono nam właściwie daje?
  • jak się ma Web3 do blockchaina? 
  • czym różni się projekt Web3 od “klasycznego” Web2?
  • czy Web3 jest tylko dla programistów?
  • jakie języki programowania, biblioteki czy frameworki są kluczowe dla świata Web3?
  • czym są smart contracts, tokeny, wyrocznie?
  • jak zacząć zabawę w Web3?
  • jakie wyzwania techniczne z Web3 będą zaadresowane w najbliższej przyszłości?

Farnell – podzespoły elektroniczne

Zapraszam do odwiedzenia strony sponsora odcinka, firmy Farnell, producenta podzespołów elektronicznych.

Subskrypcja podcastu:

Linki:

Wsparcie na Patronite:

Wierzę, że dobro wraca i że zawsze znajdą się osoby w bliższym lub dalszym gronie, którym przydaje się to co robię i które zechcą mnie wesprzeć w misji poszerzania horyzontów ludzi z branży IT.

Patronite to tak platforma, na której możesz wspierać twórców internetowych w ich działalności. Mnie możesz wesprzeć kwotą już od 5 zł miesięcznie. Chciałbym oddelegować kilka rzeczy, które wykonuję przy każdym podcaście a zaoszczędzony czas wykorzystać na przygotowanie jeszcze lepszych treści dla Ciebie. Sam jestem patronem kilku twórców internetowych i widzę, że taka pomoc daje dużą satysfakcję obu stronom.

👉Mój profil znajdziesz pod adresem: patronite.pl/porozmawiajmyoit

Pozostańmy w kontakcie:

 

Muzyka użyta w podcaście: „Endless Inspiration” Alex Stoner (posłuchaj)

Transkrypcja podcastu

To jest 196. odcinek podcastu Porozmawiajmy o IT, w którym z moim gościem rozmawiam o Web 3 od strony technicznej. Przypominam, że w poprzednim odcinku rozmawiałem o pracy jako analityk danych. Wszystkie linki oraz transkrypcję dzisiejszej rozmowy znajdziesz pod adresem porozmawiajmyoit.pl/196.

Ocena lub recenzja podcastów w Twojej aplikacji jest bardzo cenna, więc nie zapomnij poświęcić na to kilku minut. Oceny podcastom można wystawiać również w Spotify. Będzie mi bardzo miło, jeśli w ten sposób odwdzięczysz się za treści, które dla Ciebie tworzę. Dziękuję. 

Zastanawiasz się nad zmianą pracy, ale gdy przeglądasz oferty na popularnych stronach, to nie jesteś przekonany, czy młody, dynamiczny zespół oraz owocowe środy są dla Ciebie? Na szczęście jest Solid Jobs – portal z ofertami pracy dla ludzi, którzy chcą wiedzieć, ile będą zarabiać, z jakimi technologiami i nad jakim projektem będą pracować. Solidne oferty pracy znajdziesz na solid.jobs. 

Ja się nazywam Krzysztof Kempiński, a moją misją jest poszerzanie horyzontów ludzi z branży IT. Środkiem do tego jest m.in. ten podcast. Wspierając mnie przez Patronite, dzieląc się tym odcinkiem w swoim kręgu lub feedbackiem na jego temat ze mną, pomagasz w realizacji tej misji. 

A teraz życzę Ci już miłego słuchania. 

Odpalamy! 

Cześć! 

Mój dzisiejszy gość to założyciel crowdpub.org, serwisu na nowo definiującego sposób pisania i czytania książek. Współzałożyciel inicjatywy Dotnetos, mającej na celu nauczanie w obszarze Dot Netos , w szczególności o wydajności aplikacji. Niezależny konsultant programujący od kilkunastu lat, prelegent konferencyjny i autor książki Pro .NET Memory Management. Sceptyczny fan technologii Web 3 i blockchain, Microsoft MVP. Moim i waszym gościem jest Konrad Kokosa. 

Cześć Konrad! Miło mi gościć Cię w podcaście. 

Cześć, bardzo mi miło być gościem w Twoim podcaście. 

A z Konradem będę dzisiaj rozmawiał o Web 3, ale od takiej nieco bardziej technicznej strony. Właśnie z tej strony sporo się już o Web 3 mówiło. Myślę, że Konrad przedstawi taką bardzo pragmatyczną stronę całej tej technologii czy trendu, czy jakiegoś zjawiska – pewnie tak do tego też można podejść. 

Wiesz Konrad, standardowo wobec tego zaczynamy od pytania do gościa, czy słuchasz podcastów. Jeśli tak, to jakie tam masz ulubione na liście, o których chciałbyś może powiedzieć?

Słucham Twojego oczywiście, ale tak na serio to mało słucham. Lubię podcasty, ale nie mam za bardzo kiedy ich słuchać. Jak się pracuje z domu, to nie ma tego czasu dojazdu do pracy umożliwiającego słuchanie. Ciągle nie mogę sobie znaleźć jakiejś rutyny, gdzie słuchać. Czasem na zakupach słucham właśnie Twojego. Słucham też sentymentu chłopaków z Ostrej Piły. Nie wiem, czy kojarzysz Jarka i Pawła. Więc ich słucham, zawsze mi się fajnie ich słucha. 

I właściwie tyle na razie. Mam listę na Spotify długą i to jest taka kupka wstydu standardowa się zbierająca, ale nie mam czasu i sposobu na to. 

Przy okazji pozdrawiamy chłopaków z Ostrej Piły. Myślę, że jak teraz się zrobi trochę cieplej, to może będzie okazja do dłuższych spacerów, przejażdżek rowerowych i też czasu trochę… 

Zdrowiej przy okazji. 

Tak, tak, tak, dokładnie. No dobra, to na początku chciałbym Cię zapytać o to, jak to się właściwie stało, że z osoby, którą ja też wcześniej śledziłem i znałem jako osobę zajmującą się .NET-em, jako osobę tworzącą, piszącą grube tomiszcze, można powiedzieć tak, bo to właściwie jest spora cegła wiedzy, jak osobę, która jest związana z programowaniem w takim dość głębokim, zaawansowanym stadium, a może w ten sposób stałeś się osobą, która teraz coraz częściej wypowiada się właśnie w tematach wokoło Web 3, blockchaina, wykorzystania biznesowego tych technologii. Jak ta droga wyglądała? 

Ciekawość mnie zawiodła tutaj, bo zwłaszcza w zeszłym roku gdzieś tak było bardzo głośno o tym i to nie zawsze pozytywnie. Dużo strasznie emocji. Niektórzy ludzie na Twitterze, gdzie ja też sporo przebywam, no po prostu z jakimś takim nienawiścią blokowali ludzi, którzy w ogóle coś o tym wspomnieli, inni znowu się ekscytowali. Jak widzę taką polaryzację, to natychmiast chcę to zrozumieć i mieć swoje zdanie, nie to, że pójdę do któregoś z obozów od razu, tylko po prostu mieć swoje zdanie i zacząłem mocno w to wchodzić i zaczęło mnie to interesować, bo pomijając taki aspekt finansowy, który był śliski i tam dużo takich niezbyt fajnych rzeczy było, to technologicznie to jest ekstra. 

Po prostu poczułem się jak takie dziecko w sklepie z cukierkami za darmo, gdzie można biegać i garściami nabierać, coś zupełnie nowego. Pod spodem tego Web 3, ten blockchain, dla takiego nerda, bo ja się tak określam i chyba już nim zostanę, po prostu takie zaawansowane rzeczy, jak coś działa, algorytmika, czemu to tak działa, jakieś systemy rozproszone, to mnie wciągnęło po prostu. 

Ale jednocześnie chciałem też zrozumieć, po co to jest, bo fajnie, że to jest i że to jakoś tam działa, ale do czego tego można użyć? I też ta intuicja taka, że jest ten scam, są jakieś te małpy, z których się wszyscy śmieją, ale coś może pod tym jest więcej, i żeby to zrozumieć. I tak od artykułu do artykułu dałem sobie sporo, bo parę miesięcy czasu, gdzie naprawdę ostro robiłem własny research, żeby to zrozumieć i stwierdziłem, że coś w tym jest, w sensie jest jakaś szansa, jest jakaś możliwość, że coś nowego się tworzy, więc czemu by się nie zmigrować troszkę? Bo ja też .NET-a i tych wydajnościowych aspektów nie porzuciłem, ale mówię, nie mogę całe życie być tym kolesiem, który napisał tę dwukilogramową książkę. Jako emeryt gdzieś będę tylko, wiecie, ja napisałem tę książkę, pamiętacie kiedyś? 

Tak, stare dobre czasy. Pewnie, doskonale Cię rozumiem, ale myślę sobie, że to, żeby dotknąć jakiejś nowej technologii albo żeby poznać jakiś nowy obszar technologiczny, do tego też możemy sobie realizować podejścia typu jakieś pet projecty, jakieś hackathony, weekendowe akcje ze sprawdzeniem nowego języka itd. W sensie zmierzam do tego, że to niekoniecznie zawsze musi oznaczać taki shift w karierze swego rodzaju. Jednak w Twoim przypadku mogę chyba powiedzieć, że coś takiego nastąpiło, więc zastanawiam się, czy też zauważyłeś tam taką biznesową szansę, może w ten sposób? 

Tak, myślę, że tak. W sensie denerwował mnie poziom scamowości niektórych projektów w stosunku do tego, że jednak to coś jest i mówię, kurde, nie, ja jednak pokażę tutaj, że to ma sens i zrobię jakiś projekt, który uważam, że ma sens. A i tak mam troszkę takich też, powiedzmy, biznesowo-przedsiębiorczych „pociągot”, nie wiem, jak to ładnie nazwać, że chciałem stworzyć jakiś projekt, może jakiś startup, więc mi się to tak połączyło w jedną całość. Czemu by nie skorzystać, zobaczyć? Jest coś nowego, co się tworzy. 

Teraz oczywiście i tak nikt o tym nie mówi, bo wszyscy mówią o AI i czatach, ale gdzieś to myślę, tam jeszcze będziemy sobie o tym mówić, cały czas krążyć. Więc owszem, nie musiałem, ale ja też dość szybko, wydaje mi się, próbuję coś, co robię, żeby nie było tylko pet projectem, bo życie jest krótkie, czas jest ograniczony i no właśnie – jakoś spróbować coś z tego zrobić bardziej materialnego. I też uważam, że jeżeli o tym mówię, to warto, żebym coś w tym robił i miał jakieś własne doświadczenia, sukcesy i porażki, a nie tylko, że tam zrobiłem jakiś tutorial gdzieś. 

Teraz oczywiście i tak nikt o tym nie mówi, bo wszyscy mówią o AI i czatach, ale gdzieś to myślę, tam jeszcze będziemy sobie o tym mówić, cały czas krążyć. Więc owszem, nie musiałem, ale ja też dość szybko, wydaje mi się, próbuję coś, co robię, żeby nie było tylko pet projectem, bo życie jest krótkie, czas jest ograniczony i no właśnie – jakoś spróbować coś z tego zrobić bardziej materialnego. I też uważam, że jeżeli o tym mówię, to warto, żebym coś w tym robił i miał jakieś własne doświadczenia, sukcesy i porażki, a nie tylko, że tam zrobiłem jakiś tutorial gdzieś.

Wiesz, pytam o to, bo faktycznie, tak jak powiedziałeś, gdzieś mniej więcej rok temu był duży szum wokół Web 3 i mam wrażenie, że też wypowiadało się sporo osób, takich typowo nerdów, tak jak ich nazwałeś, osób bardzo „zajawionych” technologią, które znalazły tam ciekawe aspekty, problemy do rozwiązania itd., z tej perspektywy patrzyły na Web 3. Był też zgoła skrajny tutaj pogląd na ekonomiczną wartość albo zmiany dla gospodarki wręcz w takim szerokim zakresie może w połączeniu z blockchainem. 

Zmierzam do tego, że w zależności kto z jakiego stołka na ten temat patrzył, to miał inny ogląd i też inne perspektywy tym widział. Jestem ciekawy Twojej definicji. Czym według Ciebie jest Web 3? Co nam daje? Po co właściwie jest? 

To prawda. To bardzo nawet mnie frustrowało, że są tak różne punkty widzenia i zdaje się ograniczone. Ale już pomijając to… Jak ja to sobie tłumaczę? Web 3 dla mnie to jest nowy element takiego zaufania; zaufanie i decentralizacja – to są takie dwa główne hasła, gdzie możemy robić rzeczy, nie ufając jakimś centralnym instytucjom. Możemy sobie ufać bez udziału stron trzecich. Wydaje mi się, że to jest tak oczywiste, że nikt się nawet nad tym nie zastanawia, że zawsze ta strona trzecia jest. Jak robimy przelew, to ufamy bankowi, który też w sumie jakoś jest kontrolowany przez państwo itd. Jeżeli używamy Facebooka, to ufamy Facebookowi, że on nic złego nie robi z tymi rzeczami i danymi. Zawsze komuś ufamy. 

No a blockchain i właściwie wyrastająca na nim idea Web 3 polega na tym, żeby to wszystko zdecentralizować, żeby nie było takiego jednego miejsca, żebyśmy mogli dzięki technologii robić rzeczy w sposób zaufany. Więc to jest takie nieodzowne hasło decentralizacji. 

I czasem się tak mówi, że Web 1 to był read, czyli tylko czytaliśmy stronę i nie mogliśmy nic z tym zrobić. Web 2 to się mówi read/write, bo jesteśmy teraz w czasach, gdzie jesteśmy aktywnymi twórcami, piszemy i właściwie internet jest taki do pisania. A Web 3, że ma dodawać own, czyli że możemy posiadać rzeczy. I to tak często się mówiło, że Web 3 to jest read/write/own. 

Ale to jest troszkę ograniczone, bo to nie chodzi tylko o posiadanie. Posiadanie jest konsekwencją tego, że mamy prawo, które reguluje, że coś posiadamy, a prawo jest konsekwencją tego, że sobie możemy ufać. W skrócie: brak udziału stron trzecich i nowe modele biznesowe, z którego mogą się wyłączyć, to jest to. 

I czasem się tak mówi, że Web 1 to był read, czyli tylko czytaliśmy stronę i nie mogliśmy nic z tym zrobić. Web 2 to się mówi read/write, bo jesteśmy teraz w czasach, gdzie jesteśmy aktywnymi twórcami, piszemy i właściwie internet jest taki do pisania. A Web 3, że ma dodawać own, czyli że możemy posiadać rzeczy. I to tak często się mówiło, że Web 3 to jest read/write/own. 

I jak patrzę sobie na NFT, to jest taki wierzchołek góry lodowej, fajnie, ale to w ogóle nie o to chodzi o Web 3. To jest przykład, że akurat miliardy dolarów poszły na ten rynek, bo pewna jakaś grupa ludzi wyczuła w tym pieniądze. Chodzi o to, co jest pod spodem, o to, że możesz mieć rzecz i to sieć, blockchain, jakaś technologia potwierdza, że Ty to masz i nikt ci tego nie może zabrać i wiadomo, że Ty to masz. I to jest właśnie to posiadanie i to jest to prawo wykonywalne, które dzięki temu istnieje, w największym skrócie. 

Właśnie, powiedziałaś o tej trzeciej odsłonie internetu, gdzie to posiadanie jest i w jakiś sposób dąży do tego, żeby być sprawiedliwe. Czy myślisz, że to znaczy, że Web 3 wyprze poprzednie wersje, że to jest tak, że dążymy nieuchronnie do tego, że wszystko będzie funkcjonowało, wszystko oczywiście w rozumieniu internetowego świata będzie funkcjonowało w oparciu o Web 3, czy też może jest to sposób na zagospodarowanie pewnej niszy, pewnego obszaru, pewnego zastosowania? 

Myślę, że nie wyprze. Stąd też ta nazwa jest trochę taka może myląca, że coraz nagle ludzie sobie wyobrażają, że powstanie nowy internet i w ogóle wszystko poprzednie jest do zaorania, mówiąc kolokwialnie. Nie, to jest nowy element, nowy klocek, który będzie można dodać do swoich aplikacji, do swoich biznesów, właśnie wykorzystując takie idee. Bo gdzieś na początku też można było przeczytać takie przykłady, że no Web 3, to teraz wyobraźmy sobie Twittera, który jest w pełni zdecentralizowany i właśnie opiera się o tę ideę i tak naprawdę nie ma jakiegoś autorytarnego „zarządzacza”, który tam może blokować, ale to też nie jest takie proste, bo biznes jednak to jest biznes i w pewnym momencie ktoś musi podejmować jakieś decyzje, jakaś odpowiedzialność przed jakimś prawem jest. 

Więc mi się wydaje, że takie modele hybrydowe zdecydowanie – to nam to daje. Przykład właśnie chociażby mojego crowdpubu, o którym wspomniałeś, to jest pisanie książek w sposób kolaboracyjny, tak że ludzie mogą, nie wiem, możesz napisać książkę sam z kilkunastoma współautorami i ją sobie potem wydać i to w sumie potem jest też rozliczane, tak że wiesz dokładnie, ile procent Ci się należy z każdej sprzedanej książki na podstawie twojego wkładu. Wszystko to można by zrobić na Web 2, tylko byśmy musieli zaufać gdzieś komuś, że on to dobrze liczy i że te dane trzyma i że to w sumie dobrze rozlicza i czy na pewno te raporty sprzedaży to on podaje prawdziwe. 

Tutaj chodzi o transparentność, że teoretycznie to, co nam może dać blockchain, że to jest w pełni transparentne. Widzisz, ile się sprzedało, widzisz, kto co wniósł do książki, widzisz, dlaczego ci się tyle procent należy, a nie inaczej dodatkowo to prawo jest wykonywalne w Web 3 na smart contractach, o których sobie pewno za chwilę powiemy, czyli samo się to wykonuje, nie ma, że jakaś osoba gdzieś tam w piwnicy ostatecznie decyduje, ile Ci się należy, tylko po prostu jest algorytm i widzisz, tyle Ci się należy z każdej sprzedanej książki, automatycznie dostajesz tyle i tyle i koniec, i wszystko jest transparentne. 

To jest przykład takiego hybrydowego modelu trochę, bo przecież tam też jest normalna aplikacja, sama idea jest w sumie nadal ta sama, ale użycie pewnych dodatkowych mechanizmów. 

Właśnie, to chciałem dopowiedzieć, że są pewne dodatkowe mechanizmy, które rozszerzają paletę możliwości w internecie, natomiast to według mnie nie jest jak gdyby nowa odsłona, nagle nie wymieniamy wszystkiego, co leży u podstaw internetu, technologii informatycznych, raczej dodajemy kolejny element, który po prostu daje nam większe pole do działania. 

A może jeszcze bym dodał, że przy okazji powstają pewne nowe modele, cały decentralized finance, czyli te DeFi. I pewne rzeczy nowe powstają. Być może powstanie jeszcze więcej, których nie rozumiemy, bo sama idea DeFi i rozproszonych giełd, zdecentralizowanych giełd, polega na tym, że nie ma bytu, który tą giełdą zarządza, tylko po prostu wkładasz jakieś pieniądze i dzięki temu, że je włożyłeś, inni mogą wymieniać. 

To jest zupełnie nowy model, no bo teraz nie możesz iść do kantoru i powiedzieć: Hej, tutaj masz 100 zł, 100 dolarów i daj mi prowizję tego, że ludzie będą to wymieniać. A na tym polega właśnie zdecentralizowana giełda. Więc nowy model, trochę rozszerzenie, ale nie jest możliwe w tradycyjnych bytach jeszcze. Zatem pewne rzeczy takie się będą pojawiać, ale to jeszcze też nie jest dookreślone. 

Ale nie wydaje ci się, że to jest jak gdyby nowa aplikacja czy nowe zastosowanie, które zostało zbudowane z użyciem narzędzi, które mniej lub bardziej już gdzieś tam istniały wcześniej? Próbuję przejść teraz powoli z koncepcji, z tych nowych modeli, z nowego sposobu podejścia do różnych rzeczy, do technologii, która gdzieś tam pod spodem jednak cały ten mechanizm nam zasila. I o ile wiele z tych koncepcji, na przykład DeFi, na przykład związanych z NFT i tak dalej, można powiedzieć, że tego jeszcze wcześniej nie było, albo przynajmniej nie w takim wymiarze, o tyle wiele z technologii używanych pod spodem, to jest „reużycie” istniejących już klocków. Nie wiem, czy byś się z tym zgodził, czy nie. 

I tak, i nie. Sama idea blockchainu jest, wydaje się, dość nowatorska, chociaż oczywiście nie każdy się zgodzi, bo to jest po prostu bardzo rozproszona baza danych i systemy rozproszone istnieją od bardzo dawna. Główna innowacyjność właśnie to polega na tym, że nie ma tej centralizacji i właściwie sama sieć, można jej ufać ze względu na skalę, można powiedzieć. Tu się pojawiła taka pewność działania tej sieci, że jest w pewnym sensie zabezpieczona pieniędzmi i tym, że ludziom się nie będzie opłacać albo nie będzie możliwe jej zaatakować. To jest pewne novum, które tak jakby, tak jak śledzę IT od bardzo dawna, no to chyba pierwszy raz algorytmika oparta jest też o pieniądze. W sensie zawsze algorytmy na uczelni i tak dalej to były po prostu algorytmy. 

Były abstrakcyjne, oderwane od rzeczywistości. 

Tak, a tu nagle się pojawia taki ten finansowy aspekt, że on jest istotną częścią idei i to się może innym podobać, innym nie, że to tak zostało zbrukane, ta algorytmika tymi pieniędzmi, ale gdzieś to jest pod spodem i na pewno gdyby to wszystko nie było jakoś związane z pieniędzmi, to bezpieczeństwo sieci by nie istniało, więc tak, to jest pewne novum. 

Tak, a tu nagle się pojawia taki ten finansowy aspekt, że on jest istotną częścią idei i to się może innym podobać, innym nie, że to tak zostało zbrukane, ta algorytmika tymi pieniędzmi, ale gdzieś to jest pod spodem i na pewno gdyby to wszystko nie było jakoś związane z pieniędzmi, to bezpieczeństwo sieci by nie istniało, więc tak, to jest pewne novum.

Okej, czy wobec tego myślisz, że taką totalnie core’ową technologią, takim backbone’em, albo, powiedzmy, krwiowiegiem całego Web 3 jest blockchain? Bez blockchaina Web 3 nie mógłby powstać? 

Na razie tak, ale nie wiem, czy to tak zostanie. Mnie się wydaje, że blockchain będzie tak ewoluował, być może będą powstawały tak kolejne warstwy tego, że nikt w pewnym momencie się nie będzie zastanawiał, tak jak nikt się teraz nie zastanawia w marketingu, jak działa SMTP i POP3, tylko po prostu tego używa, więc idea decentralizacji na razie jest implementowana przez blockchain. Być może pojawią się lepsze. I to jest też dla mnie taka odpowiedź dla osób, które jakoś by mogły mi zarzucić, nie wiem, mieć pretensje, że się to brukam blockchain’em. Ja się nie brukam, na razie używam blockchaina gdzieś tam, bo tak jest, ale wierzę w samą ideę tej decentralizacji bardziej. Jeżeli za 5 lat ktoś to wymyśli całkiem inaczej, to po prostu się zmieni troszkę implementacja, ale sama idea mnie tutaj bardzo pociąga. 

Czyli tak jak internet działa na TCP albo HTTP jeszcze patrząc wyżej i nikt nie myśli obecnie o tego typu protokołach, gdzieś tam komunikując się po API z zewnętrznym serwisem, tak myślę, że będzie blockchain działał. 

Teraz może dotknę takiego wąskiego zastosowania w Web 3 albo właściwie na temat powiązanego, ciężko powiedzieć, jak to i połączyć jedno z drugim, mianowicie kryptowalut. Istnieje taki problem, czy nadal w sumie dużo projektów opiera się o ten problem, mianowicie on rampu, czyli jak wprowadzić właściwie ludzi, można powiedzieć nieistniejących w tym świecie do tej bańki. 

Zastanawiam się, czy na podobnych zasadach można by powiedzieć, że na razie Web 3 jest właściwie bardziej dla programistów, którzy muszą rozumieć te mechanizmy działające pod spodem, żeby coś tam zbudować, zdziałać, stworzyć, czy też może tutaj też ten postęp dąży do tego, żeby coraz mniejsza wiedza techniczna była wymagana, żeby z Web 3 działać?

Tak, to w ogóle ten trend no-low-code też gdzieś towarzyszy, więc pojawiają się platformy, które mają to umożliwiać. Nie są jeszcze tak dojrzałe, a ja też jako programista aż tak bardzo im się nie przyglądam, więc niewykluczone, że gdzieś tam już w międzyczasie właśnie rodzi się jakiś super sukces takiej platformy. Ale takiego make-coma tak dopieszczonego i działającego nie widziałem do projektów Web 3, bo też ten rynek jest duży, ale nie aż tak duży. 

Myślę, że to przed nami dopiero jest, żeby takie rzeczy się zaczęły pojawiać. Ale na pewno, bo to jest też fajny trend, sam no-code’a używam i się cieszę czasem w klasycznych rozwiązaniach, więc na pewno. To wszystko w ogóle moim zdaniem jest kluczowe, żeby ten on-ramp był taki… Zabrakło mi słowa, ale żeby był przyjemny, żeby w ogóle go nie było. 

Teraz to jest główna blokada, że nadal jak się używa Web 3, to tam trzeba mieć jakieś wallety, jakieś tutaj transakcje, hashe jakieś wyskakują. To wszystko jest jeszcze niedostosowane do masowego odbiorcy. To jest taka blokada, która, mam nadzieję, zostanie gdzieś tam pokonana. I to też widzę wśród tutaj projektów jakichś różnych i rozmów, że to po tej fali tych projektów o wszystkim, gdzie zawsze był token i tak dalej, dojrzewa to trochę na tej krzywej innowacji i większość projektów widzi, że to nie może tak być, że musisz mieć wallet na przykład. Bo nadal są przeglądarki, gdzie ten wallet niby jest budowany, ale to jeszcze potrwa wszystko. 

No tak, zdecydowanie. No właśnie, ja mam taką obserwację, że teraz jesteśmy mniej więcej w takim etapie, gdzie trochę już te emocje opadły, zaczyna się taka trochę praca u podstaw, tworzenie takich niezbędnych klocków całej tej infrastruktury, na podstawie których być może w przyszłości coś bardziej spektakularnego, może będzie można stworzyć, ale w tej chwili faktycznie jeszcze zauważalne są takie braki podstawowych mechanizmów albo takich core’owych rzeczy, do których to w świecie Web 2.0 gdzieś tam już przywykliśmy, tak że SOMNIC się już na tym nie zastanawia, w świecie Web 3 obecnie chyba nadganiamy. 

Zdecydowanie. 

Dobrze, Konrad, to wiesz co, może obiecaliśmy słuchaczom, że spojrzymy na ten Web 3 od strony technicznej, to powiedz, proszę, jakie języki programowania, biblioteki, frameworki, te core’owe takie elementy, w których coś piszemy, tworzymy, są obecnie niezbędne, kluczowe w świecie Web 3? 

Ku mojej radości bądź też nie, nie jest to .NET, jak się można spodziewać. JavaScript, TypeScript, jak ktoś dobrze się w tym czuje, to bardzo szybko może się właściwie zmigrować do takiego programisty Web 3. Nieśmiertelna biblioteka Web3.js, najpopularniejsza, chociaż są klony do wielu innych, do Pythona, do Javy, tak że jest dużo tych różnych bibliotek, ale ta jest na pewno najpopularniejsza i JavaScript ogólnie, TypeScript też ewentualnie. 

Chociaż myślę, że każdy znajdzie coś dla siebie. Python też się pojawia, Rust jest popularny, więc tutaj języki programowania od strony integracji są te klasyczne, ale oczywiście są też języki programowania do programowania samych smart contractów. I tutaj ewentualnie trzeba by się douczyć. Solidity, języka dla Ethereum, albo Rust, bo też Rust się używa w niektórych blockchainach. I to są takie główne, które myślę, że jest to jakieś novum, że trzeba się nauczyć w ogóle programowania smart contractu. I z tego względu, czym on się różni tak naprawdę od programowania zwykłego, a reszta to są narzędzia, jakieś nowe idee, jakiś nowy SDK albo jakaś tam platforma do integracji, to są rzeczy do ogarnięcia przez każdego rozwiniętego programistę w dzień. W podstawowym poziomie oczywiście, żeby w ogóle zobaczyć, jak to działa, a potem to już przychodzi praktyka. 

Okej, powiedziałaś tutaj o takich językach czy rozwiązaniach używanych do integracji, że tam JS czy tam TypeScript jednak jest królujący obecnie. Zastanawiam się, czy jeśli ktoś myśli o wejściu w ten świat, to znaczy, że musi znać JS-a i Solidity, powiedzmy, do smart contactów, czy też następuje jakiś taki rodzaj specjalizacji, powiedzmy, rozdzielenia back-endu i front-endu w tym świecie? 

Na pewno z takim full stackiem masz trochę lepiej, jeżeli rozumiesz zarówno front-end, jak i back-end, czyli w tym wypadku blockchain, ale patrząc po ofertach gdzieś tam, to różnie jest. Taki front-endowiec, który rozumie w ogóle ideę Web 3, to, że tam jest wallet, że pod spodem jakieś smart contracty działają, czyli taką wiedzę, którą pewnie sobie w parę dni czy w tydzień zdobędzie, czyni go już atrakcyjnym pracownikiem w świecie Web 3. Bo jest też parcie w niektórych miejscach, przynajmniej w przestrzeni wirtualnej na takich ludzi, więc nie – w skrócie. Myślę, że dość szybko może się nauczyć takich podstaw i jak się nauczy użycia Web 3 j.s., co z tego wynika, że trzeba na ten smart contract i jego wynik na przykład poczekać chwilę i tak dalej, żaden super rocket science, to myślę, że w zupełności wystarczy. 

I to może być całkiem fajna specjalizacja, bo tak naprawdę to jest wszystko super nowe, to taki dziki zachód, jak jechałeś to co byś nie umiał tam, to byś pewnie znalazł pracę na dzikim zachodzie, bo po prostu wszystkich brakowało. 

Jasne, doskonale rozumiem. Czyli języki czy tam rozwiązania, frameworki, to jest coś do opanowania, zwłaszcza dla osoby, która ma już jakieś tam doświadczenie jako programista, to tak jak powiedziałeś, pewnie parę dni, tydzień z hakiem i da radę to opanować. To nie są jakieś nowatorskie pod względem programistycznym rozwiązania. 

Ale myślę, że jest jeszcze kilka takich ciekawych, nie wiem, jak to nazwać, klocków architektonicznych, czy takich elementów, z których ten świat jest zbudowany, o których warto tutaj, myślę, parę słów powiedzieć. Chciałbym Cię właśnie zapytać, żebyś mógł tak ze swojego doświadczenia powiedzieć, co to jest smart contract, token, wyrocznia, czy też właśnie ta interoperacyjność, o której troszkę powiedzieliśmy. 

Tak, może jeszcze tylko mała, drobna gwiazdka. Ten tydzień pierwszy to tak, żeby zobaczyć. Oczywiście to nie czyni nas, że pójdziemy na stanowisko za 200 tysięcy dolarów i od razu jesteśmy. Ale wydaje mi się, że żeby się zorientować tak i wtedy właśnie troszeczkę zrozumieć takich elementów, tych klocków, o których powiedziałaś, ale też zrozumieć, a nie od razu je robić, żeby po prostu ten ekosystem zrozumieć. Czyli właśnie smart contract, że to jest program, który się wykonuje na blockchainie, jako ten zaufany program, którego wyniku nie możesz zmienić. I to, że on to wykonał, co powinien, jest sprawdzane przez całą sieć. I się dowiedzieć właśnie, że właściwie na przykład takiego smart contractu raz deployowanego nie możesz zmienić, więc musisz bardzo uważać na błędy, bo potem już tego nie poprawisz. 

Więc na takie rzeczy trzeba zwracać uwagę. Jakieś wynikające z tego może patterny, token, jak zaprogramować token. Te wszystkie kryptowaluty, o których mówimy, to są właśnie tokeny. Najczęściej bardzo prosty smart contract. Pod spodem po prostu przechowujesz informację, ile tokenów ma dana osoba, czyli taki słownik. I wokół tego jest zbudowany pewien smart contract, który pozwala ludziom te tokeny sobie przesyłać. Możesz zobaczyć, ile ich masz. 

Więc idea jest prosta. Jak już zrozumiesz to, to naprawdę możesz taki smart contract dosyć szybko sam napisać, który realizuje ten token. Taki podstawowy, wiadomo. Więc token, smart contract, sam blockchain… Pamiętam sam, jak się tego uczyłem. Trochę takich rzeczy jest zaskakujących, ale dość szybko, myślę właśnie, że po tym tygodniu, już tutaj wspomnianym, zaczynasz ogarniać całokształt. Po to są wyrocznie, żeby dane dostarczać do blockchainu, bo sam blockchain jest takim tworem dość zamkniętym, który wykonuje te smart contracty, sprawdza i wszyscy się nawzajem sprawdzają w pewnym sensie, że rzeczywiście ten program wykonał to, co miał wykonać. Czyli na przykład to, że przelałeś mi odpowiednią liczbę tokenów, to jest po prostu wykonanie takiego smart contractu, który mówi, że od teraz tyle tokenów mam ja, a nie ty, albo odwrotnie. 

Ale czasem na przykład chcielibyśmy poznać cenę dolara aktualną, to wtedy za pomocą wyroczni scheckujesz takie dane do smart contractu, żeby on tam sobie mógł tych takich danych użyć. I też sam fakt, że interoperacyjność może zaskoczyć, że blockchainów jest wiele, to nie jest tylko bitcoin i Ethereum, dużo powstaje blockchainów, można własne tworzyć, są frameworki do tworzenia własnych blockchainów, one się często różnią, żeby można było sobie wybrać ten, który nam najbardziej pasuje, więc w pewnych projektach nagle te blockchainy muszą ze sobą rozmawiać i pojawia się koncepcja tak zwanego mostu, bridge’u, na przykład, który łączy je ze sobą, żeby mogły się wymieniać danymi. 

To są takie nowe właśnie elementy i klocki, które się będą gdzieś tam pojawiać. Ale znowu wydaje mi się, że parogodzinna dobra piguła i tak mniej więcej zrozumiemy, o co chodzi. Nawet jak ja tu mówię. Oczywiście, jak ktoś pierwszy raz to słyszy, to pewnie jest ciężko, ale jak sobie chwilę poczytamy, to się tam zaczyna układać głowie. 

Pewnie. Coraz więcej wiedzy jest też dostępnej gdzieś tam w internecie, więc naprawdę te rzeczy można sobie znaleźć. I co, może tu bym jeszcze dopowiedział jedną rzecz, że to wcale nie znaczy, że startując projekt Web 3, musimy pisać, tworzyć te rozwiązania od zera. Najczęściej to są elementy, które gdzieś są dostępne do wykorzystania, bądź jako serwisy, bądź jako biblioteki. 

Bardzo dużo, tak. Ta strona edukacyjna jest też bardzo rozwinięta. Jest mnóstwo materiałów, różnych tutoriali, szkół, „nieszkół” do samego Solidity, do zrozumienia smart contractów, do zrozumienia Web 3. Tu naprawdę nie ma na co narzekać. I to też mi się podoba, że to jest coś nowego, ponieważ dużo ludzi w to weszło z nową siłą. I jest naprawdę dużo form takiej nauki, bo wiesz, jak chcesz się nauczyć .NET-a na przykład, to właściwie wiadomo, że masz tutoriale jakieś, może kursy na Udemy. A tutaj jest i w formie gier, i na Discordzie, i jakieś klasyczne bardziej kursy, a to jakieś projekty, które musisz z innymi pisać, a to społeczności. Bardzo dużo ciekawych form nauki, nie tylko takich klasycznych kursów. To mi się akurat podoba. 

Czy myślisz, że wejście w ten świat dla osoby początkującej, ale myślę takiej początkującej z programistycznego punktu widzenia vs osoba, która gdzieś tam już kilka, kilkanaście lat sobie programowała, być może w innym obszarze, się jakoś różni? Inaczej byś do tego podszedł? 

Myślę, że nie. To trzeba patrzeć jak osoba, która zaczyna programować po prostu aplikacje webowe, tylko jest drobna różnica, że tam jest nie tylko SQL pod spodem, ale też blockchain i trochę z tego wynikających różnic. Więc taki dodatkowy element. Ale taka osoba w zupełności może zacząć iść w tę stronę, od strony front-endu na przykład, a nie rzucać się na pisanie smart contractów, bo też, żeby za dużo tego nie robić. Tak samo jak ta osoba nie zacznie się uczyć odpisania SQL i projektowania baz danych. 

Jasne, ma to sens. Powiedzieliśmy tutaj, że dla osób, które jakoś tam mają rozeznanie w IT, zrozumienie całego tego świata jest pewnie prostsze niż dla osoby, która zupełnie nie miała z tym do czynienia, co jest zrozumiałe, bo jesteśmy jeszcze mimo wszystko na takim etapie rozwoju, że ta wiedza jest potrzebna. Być może za kilka lat na przykład będziemy już budować na tyle abstrakcyjnych klockach, gdzie zrozumienia tych podstaw zupełnie nie będzie już trzeba wnosić. Teraz jeszcze gdzieś tutaj myślę, że jesteśmy. 

Czy wobec tego dla osób, które mają jakiś biznes wokół IT, myślisz, że one coś tutaj mogą zrobić z Web? Czy to może coś wnieść do takiego klasycznego biznesu? 

Myślę, że jak najbardziej, bo powstaną tak naprawdę, wydaje mi się, dopiero nowe modele biznesowe oparte o to zaufanie i centralizację. Gdzie firmy najogólniej mówiąc, może na przykład zaczną się dzielić pewną decyzyjnością i w związku z tym też częścią zysków, bo ta idea Decentralized Autonomous Organization, czyli właśnie grupy ludzi, która ma jakieś decyzje, głosują i ponoszą wspólną odpowiedzialność, może być częścią jakąś przynajmniej naszych klientów. Może chcemy im coś umożliwić, może jakąś małą część naszego biznesu chcemy sterować z ich udziałem, odejmując sobie trochę pracy, a przy okazji dziejąc się z nimi jakimś tam zyskiem. 

A może właśnie cała ta tokenizacja, czyli możliwość sprzedaży swoich dóbr w formie cyfrowej, co też może na przykład otwierać na rynek wtórny i to w ogóle, że to wszystko jest w sposób zaufany, śledzone. Tak więc, no nie wiem, można by sobie wyobrazić, tak strzelam, bo w ogóle tego nie rozważałem, teraz będę rzeźbił, że firma, która outsourcuje pracowników może na przykład zaczęła się dzielić ze swoimi pracownikami częścią wynagrodzenia w formie tokenów, oni mogli głosować nad jakimiś decyzjami, które projekty chcą prowadzić i tak dalej, i tak dalej. 

To są takie czasem idyllicznie brzmiące rzeczy, ale wydaje mi się, że właśnie modele biznesowe wokół tego jakieś powstają na pewno. To jest jedna z tych korzyści, która może nas otworzyć na nowe rzeczy i tutaj jak ma się jakiś biznes, to trzeba by sobie poszukać, czy ja tam mogę jakiś rynek wtórny do obiegu cyfrowego wprowadzić, na przykład te moje e-booki będą, przynajmniej część e-booków będzie w formie takiej, że możesz je odsprzedać i pojawia się nagle model rynku wtórnego sprzedaży e-booków. Robisz kursy, tak samo tutaj, może teraz kupujesz kurs, no to on jest Twój i koniec, ale teraz nagle się pojawia możliwość, że możesz go odsprzedać i odzyskać te pieniądze, a może nawet na nim zarobić, jeżeli ten kurs zyska na popularności. A ty jako twórca kursu zaczynasz zarabiać na prowizjach z obiegu wtórnego, więc też nowy model biznesowy. 

Współdzielenie się właśnie decyzyjnością zyskami z ludźmi. To są takie nowe rzeczy, których nie ma. To jest dobre, bo jak ktoś ma jakąś taką bardziej wizjonerską naturę, to może coś fajnego wymyślić, ale też kiepskie, bo jak to się nie ma, to brakuje receptur takich prostych na zasadzie zastosuj to albo zrób to. Po prostu to jest tak świeże, że jeszcze będziemy czekać. 

To są takie czasem idyllicznie brzmiące rzeczy, ale wydaje mi się, że właśnie modele biznesowe wokół tego jakieś powstają na pewno. To jest jedna z tych korzyści, która może nas otworzyć na nowe rzeczy i tutaj jak ma się jakiś biznes, to trzeba by sobie poszukać, czy ja tam mogę jakiś rynek wtórny do obiegu cyfrowego wprowadzić, na przykład te moje e-booki będą, przynajmniej część e-booków będzie w formie takiej, że możesz je odsprzedać i pojawia się nagle model rynku wtórnego sprzedaży e-booków. Robisz kursy, tak samo tutaj, może teraz kupujesz kurs, no to on jest Twój i koniec, ale teraz nagle się pojawia możliwość, że możesz go odsprzedać i odzyskać te pieniądze, a może nawet na nim zarobić, jeżeli ten kurs zyska na popularności. A ty jako twórca kursu zaczynasz zarabiać na prowizjach z obiegu wtórnego, więc też nowy model biznesowy.

No właśnie, to może przejdźmy do przyszłości. Chciałbym Cię zapytać, w którym kierunku, czy w jakich kierunkach się Web 3 będzie rozwijał, ale nie tak na zasadzie może wróżenia z kuli, tylko pewnie tak jak każda inna technologia, czy zbiór technologii w tym przypadku, tak i tutaj mamy jakieś obszary, które muszą być jeszcze zaadresowane, tak jak to ładnie tutaj można nazwać, to są jakieś obszary, z którymi jeszcze mamy problemy. Które według Ciebie obszary w najbliższej przyszłości będziemy w stanie zaadresować? Z czym obecnie Web 3 musi się mierzyć? Gdzie są problemy? 

Technicznie na pewno jest to skalowalność, z czym się boryka większość blokchainów i właściwie cała roadmapa Ethereum jako tego zdecydowanie najpopularniejszego blockchainu sprowadza się do tego, żeby on był bardziej skalowalny, żeby przetwarzał miliony transakcji na sekundę, a nie 30 czy jakoś tak, więc bardzo dużo developmentu w tę stronę idzie i to jest taki aspekt bardzo ciekawy technicznie, bardzo dużo się tam dzieje i też kryptograficznie, i w ogóle algorytmicznie i technologicznie, ale to są rzeczy fajne dla ludzi, którzy chcą to robić, nie nawet dla programistów chcących tego używać, bo oni raczej z tego używają, bo nikt się nie ekscytuje tak bardzo, czemu HTTP 4 czy 3 jest lepsze od 2, tylko po prostu korzysta. 

Więc na tym polu to się będzie na pewno rozwijać, i to jest bardzo istotne, ale też istotne jest to user-friendly, o którym mówiliśmy i adopcja mobilna, bo wydaje mi się, że póki Web 3 jakoś tak bardziej szeroko nie wkroczy na telefony, to wolno ta adopcja będzie przebiegać, bo jednak ludzie bardzo, bardzo używają telefonów i jeżeli nie pojawi się jakaś natywna integracja walletów i ogólnie tych koncepcji, żeby można było z tego Web 3 dobrze i bezpiecznie, co najważniejsze, korzystać na telefonie, no to się to będzie tak cały czas dusić i kisić w sobie. 

Więc to jest taka przyszłość, której sobie i wszystkim bym życzył, bo będzie to masowa adopcja wtedy faktycznie i te dwie rzeczy muszą się zadziać tak jakby równolegle, bo jeżeli nagle miliony ludzi zacznie tego wszędzie używać w każdym kraju, to po prostu to nie uniesie ze względu na skalę, a z drugiej strony skala nie będzie potrzebna, jak nie będzie użytkowników, więc te dwa filary. 

Myślę sobie, że trochę takiego spokoju wokół tej technologii jest potrzebne, żeby to wszystko mogło się wydarzyć, żeby takie podstawy mogły się wypracować. 

I to się dzieje teraz, z czego się bardzo cieszę, bo wszyscy się ekscytują AI, ja też, bo to jest super, ale w tle cały czas blockchain żyje, rozwija się, Ethereum się rozwija, mnóstwo rzeczy się dzieje, ale po cichu, właśnie już bez tego narzutu, bez tych małp, bez tego śmiania się, bo to było taki trochę żenujące czasem, i po prostu jest czas na budowanie. 

I super. Do wejścia do Web 3 zachęcał dzisiaj Konrad Kokosa. Konrad, bardzo Ci dziękuję za spotkanie, za poświęcone czas. 

Dziękuję również i do zobaczenia. 

Do zobaczenia, ale zanim się jeszcze rozłączymy, to muszę Cię zapytać o to, gdzie Cię można znaleźć w internecie, gdzie możemy słuchacza odesłać. 

Ja na pewno najbardziej aktywny jestem na Twitterze i na LinkedInie, więc tam mnie można znaleźć po nazwisku. Jeżeli też interesują Was takie tematy, to współtworzę właśnie nowy brand, inicjatywę zwaną Hard Fork, która ma być dokładnie dla osób, które chcą rzeczy robić i się w tym rozwijać wokół Web 3. To będzie seria meetupów, konferencja, więc też wszystkie linki można zobaczyć na moim profilu, który pewnie udostępnimy potem gdzieś w komentarzach. Tak że gdzieś tam mnie można w sieci znaleźć. 

Dokładnie, wcale nie trzeba się jakoś mocno wysilać, żeby to zrobić, a oczywiście te linki, o których powiedziałeś za prezentacją do odcinka. Konrad, jeszcze raz bardzo Ci dziękuję. 

Do usłyszenia. 

Cześć. 

I to tyle z tego, co przygotowałem dla Ciebie na dzisiaj. Po więcej wartościowych treści zapraszam Cię do wcześniejszych odcinków. A już teraz zgodnie z tym, co czujesz, wystaw ocenę, recenzję lub komentarz aplikacji, której słuchasz lub w social mediach. 

Zawsze możesz się ze mną skontaktować pod adresem krzysztof@porozmawiajmyoit.pl lub przez media społecznościowe. 

Ja się nazywam Krzysztof Kempiński, a to był odcinek podcastu Porozmawiajmy o IT o Web 3 od strony technicznej. Zapraszam do kolejnego odcinka już wkrótce. 

Cześć! 

+ Pokaż całą transkrypcję
– Schowaj transkrypcję
Tags:
,
mm
Krzysztof Kempiński
krzysztof@porozmawiajmyoit.pl

Jestem ekspertem w branży IT, w której działam od 2005 roku. Zawodowo zajmuję się web-developmentem i zarządzaniem działami IT. Dodatkowo prowadzę podcast, kanał na YouTube i blog programistyczny. Moją misją jest inspirowanie ludzi do poszerzania swoich horyzontów poprzez publikowanie wywiadów o trendach, technologiach i zjawiskach występujących w IT.