#139 Short #63: Microsoft Hyperlight, Oracle vs JavaScript, Supply Chain Report, Re:Invent Sprostowanie

2025, Jan 31

Patoarchitekci wracają z gorącym Short #63, gdzie Microsoft Hyperlight rozpala dyskusję o przyszłości mikroVM-ek. Oracle próbuje JavaScript zrozumieć, a my próbujemy zrozumieć Oracle.

W tym odcinku nurkujemy w świat Microsoft HV i jego milisekundowych osiągów. Gość specjalny Wojtek Gawroński rzuca nowe światło na nowości z AWS re:Invent, prostując nasze wcześniejsze teorie. Dodatkowo, raport Supply Chain odkrywa szokującą prawdę o nieaktualnych zależnościach.

Jeśli chcesz wiedzieć, dlaczego Twoje mikroVM-ki nie są tak micro jak powinny, albo co Amazon Q wie o Twoim kodzie, włączaj natychmiast. Hyperlight nie będzie czekał wiecznie w CNCF!

Słuchasz Patoarchitektów dzięki PROTOPII – firmie, w której Łukasz i Szymon działają na co dzień, wspierając zespoły IT na każdym etapie: od projektowania, przez wdrożenia i migracje, aż po optymalizację i zabezpieczenia. Oferujemy też mentoring i szkolenia dostosowane do potrzeb każdej firmy, niezależnie od wielkości. Sprawdź nas: protopia.tech

Discord 👉 https://discord.gg/78zPcEaP22

Linki i ciekawe znaleziska:

Transkrypcja

Łukasz Kałużny: Cześć, słuchacie Patoarchitektów. Prowadzą Łukasz Kałużny…

Szymon Warda: I Szymon Warda. Wszystkie linki do tego odcinka oczywiście na Patoarchitekci.io, w opisie i na dole, dacie radę, wyszukacie, wygooglacie, wybingacie czy jak tam tak gołacie.

Łukasz Kałużny: Czy ukagicie czy zgptujecie.

Szymon Warda: Dokładnie tak. Dobrze Łukaszu, lecimy. Co tam wyszukałeś?

Łukasz Kałużny: Dobra, lecimy. Na New Stacku pojawiło się takie podsumowanie na temat Microsoft Hyperlight. My to wspominaliśmy jako tam nakładka rastowa, biblioteka rastowa do używania microVM-ek. Całość dobrze opisuje, bo wspomina też rzeczy złe w Assembli, rzeczy na które wcześniej nie zwróciłem uwagi jak to wychodziło w listopadzie, to że faktycznie bardzo się postarali na czas odpalania, bo są poniżej jeden milisekundy.

Szymon Warda: To jest super krótko.

Łukasz Kałużny: Tak, czyli to jest tak jak Firecracker. Ale co mnie zainteresowało jak zacząłem szukać, to również znajdziecie tutaj linki całego mojego długiego researchu na temat Hyperlighta, to pojawia się coś takiego jak MS HV, Hyper V On Azure Linux.

Szymon Warda: Ciekawie.

Łukasz Kałużny: Tak, zostawiam wam taki cały zrzut linków patrząc się, jak i do samego Hyperlighta, co pokazuje, że MS zaczyna mocno odchodzić… Inaczej, takie projekty nie są przypadkowe.

Szymon Warda: Koszty Azure’a, wszystko.

Łukasz Kałużny: Tak, dokładnie, koszty. I druga rzecz, która też jest ciekawa, że sam Hyperlight będzie oddany do CNCF-u.

Szymon Warda: To jest ciekawe, ale [niesłyszalne 00:02:03] fajnie pokazuje utrzymanie i trochę zmniejsza koszty utrzymania wewnętrznego.

Łukasz Kałużny: Tak i z drugiej strony jest fajnie tam zacytowany z któregoś Keynote’u też Mark. Przyznam się, że w tym roku aż takich nate’owych, może obejrzę sesję z tego ostatniego Ignite’a od Marka wreszcie i znajdę na tych filmach…

Szymon Warda: O Russinovichu?

Łukasz Kałużny: Tak, Mark Russinovich, CTO Azure’a, czy różnych dziwnych rzeczy tam. Ale tak: We can Now Process Network Graphic as it’s Enter the System using this lightweight sunboxes. Czyli, że trafiają to jako takie właśnie JL-e, żeby wysadzać to co ten payload, który wpada.

Szymon Warda: Ok, ciekawe.

Łukasz Kałużny: Jest też tam wspomniane właśnie w samym artykule o WebAssembly, że np. funkcje lambda w Excelu Online liczą się na WebAssembly, a Microsoft Flight Simulator używa tego do ochrony WebAssembly jako runtime do modów i ochrony tego.

Szymon Warda: Zarąbiste użycie, naprawdę.

Łukasz Kałużny: Więc zobaczymy, wiesz, dlatego tak jak mówię w tym WebAssembly, a w szczególności jak popatrzymy potem dalej WebAssembly Server Interface, to są takie rzeczy, które, pewnie zaraz o tym będziesz miał, które realnie będą gdzieś mogły pójść w wyrzuceniu Dockera, nie Kubernetesa.

Szymon Warda: To będzie ciekawe. Dobra, to ja zacznę od dwóch rzeczy, bo widzę po linkach, które wrzuciłeś, że nie masz kąciku dramat. A Łukasz, wróci odcinek dramatu bez, może Pato bez dramatów. Ja wyszukałem, jak to Oracle ma prawo do słowa JavaScript i nie odda go bez walki, mówiąc bardzo prosto, czyli wpis na FOSDEM właśnie kto ma prawa do słowa i jak to wygląda. To jest ciekawe podejście. O ile do Javy bym rozumiał, to JavaScript jest dość ciekawym tutaj prawem własności. Z rzeczy pozytywnych, bo trochę mówi się w naszym środowisku o tym, że rynek jest jaki jest…

Łukasz Kałużny: Koniec Eldorado.

Szymon Warda: Tak, ale to, co wynika z najnowszego raportu, jeżeli chodzi właśnie w Stanach Zjednoczonych, to jest to, że sytuacja na rynku pracy, szczególnie w IT, się polepsza. Nie jest jakieś to może bardzo szybkie polepszenie, ale w Stanach widać, że idzie to do przodu, czyli idzie ku lepszemu, że tak powiem. Tak że hura, może?

Łukasz Kałużny: Ale nie, nie, nie, poczekaj, poczekaj, mam odbitkę, żeby nie było. W takim razie miałem to, olewałem, ale w takim razie lecimy. No to w tym roku słuchaj za to, jak na to patrzysz, to już Meta na początek roku i Microsoft ogłosił cięcie low performerów.

Szymon Warda: Wiesz co, tak samo jak rozmawialiśmy, że…

Łukasz Kałużny: Wiem, że potem inaczej i potem pod koniec roku zatrudnią po prostu tańszych na ich miejsce.

Szymon Warda: Nie, nie, nie, często tych samych. Jak były te wszystkie zwolnienia, które były w Google, itd., to potem wyszło, w [niesłyszalne 00:05:18], itd., to potem wyszło, że ci sami ludzie wrócili po prostu.

Łukasz Kałużny: Niektórym się opłacało zostać zwolnionym.

Szymon Warda: Tak, bo odprawy są całkiem niezłe. Chociaż w Google tam było zamieszanie właśnie, że zrezygnowali z tych odpraw. Może dlatego, że wiedzieli, że zatrudnią od nowa. To też może być przypadek.

Łukasz Kałużny: Wiem, że niektórzy zgłaszali się na programy dobrowolne, żeby wrócić potem.

Szymon Warda: Tak, ogólnie rzecz biorąc ten rynek wygląda, że tam coś idzie. Dużo będzie się działo wokół giełdy i wokół wyników, bo Nvidia odstawiła bardzo mocno wszystkich, to się dzieje, więc inni nie mogą zostać w tyle, mówiąc sobie szczerze, nie? Więc trochę reklamy wokół tego będzie. Dobrze, pogadali, pogadali. Co tam jeszcze masz?

Łukasz Kałużny: RSS na Discordzie naszym, czyli dla chętnych, jak już to słuchacie, to powinno to działać, lata sobie bot od Readwise’a, który wystawia wszystkie linki wrzucane na publiczne kanały na naszym Discordzie jako RSS.

Szymon Warda: A jakby nie działało, to zapraszamy na kanał Pato od kuchni, gdzie Łukasz będzie tłumaczył czemu nie działa tym razem.

Łukasz Kałużny: Albo rzucał słowami niecenzuralnymi, ale tam nie słuchają nas przedszkolacy w samochodach.

Szymon Warda: Ja trochę kawałek mięsnego, bo całkiem ciekawy artykuł całościowy, ale też opowiedzenie co tam się w ogóle dzieje i trochę skrót, jak to wygląda. I też trochę hype’u chciałbym tutaj zbić. Flox to jest Nix dla Enterprise’u. I teraz o co w ogóle chodzi dla tych, którzy może nie wiedzą generalnie? Czym w ogóle jest Nix? No bo musimy najpierw o tym powiedzieć. Ujednolicony i deklaratywny package manager. Ważny tu jest ten deklaratywny. Jakie są główne zalety? To jest to, że po pierwsze możemy coś instalować, a potem jak usuniemy nie ma po tym żadnego śladu. Mamy instalacje tymczasowe, np. typu instalujemy, odpalamy [niesłyszalne 00:07:14] Pythona, odpalamy [niesłyszalne 00:07:15] pythonowym, uruchamia się, wychodzimy z tego i nie ma po tym żadnego śladu. Możemy zarządzać różnymi wersjami, to też fajnie. I możemy też nawet rzeczy, które ze sobą się gryzą ładnie zarządzać. To wszystko dzieje się deklaratywnie, podkreślę, czyli ładnie, nie tylko, że mówimy, że zainstaluj to, że z opcjami, itd.

Łukasz Kałużny: Słuchaj, to teraz moja uwaga na temat PTSD. Odpala mi się jak widzę składnię Nixa zawsze, bo wygląda jak przedpotopowy webpack, ta deklaratywna…

Szymon Warda: Jak Terraform.

Łukasz Kałużny: Nie, są przyjemnie… Inaczej, sorry Terraform [niesłyszalne 00:07:54]. Nawet ARM Template potrafił być bardziej logiczny w niektórych miejscach.

Szymon Warda: Ale też nie zobaczyłeś jednego elementu, bo też elementem, którym Nix się chwali, że jest super w ogóle, zrewolucjonizuje rynek, co jest absurdem, to jest budowanie obrazów dockerowych. I jak to wygląda? Że masz property do tagów, masz property do nazwy, ale zawartość obrazu dockerowego piszesz jako string. Więc powiedzmy sobie, nie jest to najbardziej user friendly, co możemy znaleźć.

Łukasz Kałużny: Ale jest Enterprise, tak? To jest Enterprise.

Szymon Warda: Więc pod tym obszarem to generalnie nie, nie naciągajmy tych feature’ów, [niesłyszalne 00:08:33] wykorzystane. Konfiguracja VM-ek chmurowych z gotowymi obrazami. Ogólnie jak ktoś zna PowerShare DSC, to to wygląda jak PowerShare DSC i zachowuje się jak PowerShare DSC…

Łukasz Kałużny: W JavaScriptcie.

Szymon Warda: Tak, ale wygląda naprawdę nieźle. Naprawdę wygląda to fajnie i tu bym powiedział, że okej, tak, cokolwiek co umożliwi to, że będziemy mieli VM-kę i stan VM-ki z zainstalowanymi funkcjonalnościami, włączonymi rzeczami, wyłączonymi, itd., w formie kodu, a nie w formie obrazu bazowego, który jest nieutrzymywany na dłuższą metę, ja jestem za, jak najbardziej. Kolejny killer feature, który mi się bardzo podoba, to jest to, że możemy pisać sposób co jak instalujemy i mają wbudowany mechanizm do testów. Czyli uruchamiamy takie mikrośrodowisko powiedzmy sobie, tam wszystko instalujemy, itd., deklaratywnie i mamy też od razu komendę, która sprawdzi czy wszystko się ładnie zainstalowało i świadomość, że jak to wszystko wyjdzie, to potem nie ma śladu. To jest świetne.

Łukasz Kałużny: Dobra, wiesz co, ja Ci powiem tak, sama koncepcja, sama idea jest ok. I teraz jak słyszę dodatek Enterprise, jak wrzuciłeś tego Floxa…

Szymon Warda: To czekaj, to jeszcze skończmy tego Nixa. Nix jest w CNCF-ie, czym się chwali, ma więcej commitów niż Kubernetes, ale ma mniej contributorów, ale niewiele mniej, więc ok, zobaczymy. Dobra, cała opcja, że to zastąpi Dockera, bo to niby wiesz, uruchamia proces, nie, bo tu nie ma w ogóle izolacji, między procesami nie ma, więc z całym szacunkiem nie ta w ogóle bajka. Jakość środowisk tymczasowych albo developerskich, ok, faktycznie fajne. Dla Jupyteru, Jupyter Notebooków, itd., to wygląda świetnie.

Łukasz Kałużny: Tylko Szymon, dobra, realnie CI, powtarzałem CI i to jest nawet to, co mają na stronie Declarative Build. Ja Nix-a patrzyłem, robiłem jakieś podejście. Problem jest, tak z mojej perspektywy, przyzwyczajony, słuchajcie, ja mam niestety naleciałości enterprise’owe, jak na to popatrzycie, całe korpo IT też wokół, które też jest, potem i tak zwykle jak patrzymy na bezpieczeństwo to robi się tak a nie inaczej. Kurde, samo bezpieczeństwo tych paczek, kto za tym stoi, kto to update’uje.

Szymon Warda: To teraz poczekajmy w takim razie. Dobra, dobra, dobra, I get you. Też ostatni element to jest to, że mamy jeden package manager dla wielu dystrybucji Linuxa. Teraz idziemy co ten Enterprise oznacza? Że będziemy mieli prywatne repo, będziemy mogli te pakiety budować w tym repo, replikować, wiadomo generalnie będzie to co było. Będziemy mieli SBOM-a, który, to jest fajny feature, który będzie często wymagany od regulatorów. Odnośnie tego co mówisz, że kto buduje, jak to wygląda, to w ogóle cały problem jest taki, że ok niby mamy tutaj package managera, ale nie użyjemy pakietu, który nie ma w repozytorium otwartym, itd. Więc trochę wchodzimy w ryzyko NPM-a i tego ile tam jest pierdolnika. Wiadomo, że Enterprise też nie będzie budował wszystkiego od zera i Nix nie jest jakoś super user friendly, tak nazwijmy to, szczególnie dla adminów. Kierunek rozwoju? Ciekawy. Hype’u trzeba tam trochę zbić. Jakby to się przyjęło, to ja bym się nie obraził, bo to faktycznie musi mieć moment przełamania, że sobie to przełączą. Czy się przełączą? Jest tyle dystrybucji linuxowych, gdzie każdy swój package manager uwielbia na swój specyficzny sposób.

Łukasz Kałużny: Inaczej, to piwniczakowy soft. Inaczej, patrząc się czy adresują właściwy problem?

Szymon Warda: Bardzo.

Łukasz Kałużny: Bardzo. Czy ludzie na to patrzą? Inaczej, jak popatrzysz, ludzie nie patrzą na to jak na aż takiego wielkiego wrzoda na tyłku odkąd mamy Dockera.

Szymon Warda: Tak, w ogóle bez dwóch zdań tak.

Łukasz Kałużny: Inaczej i gotowe obrazy, tak. Zobacz jak mówimy o CI/CD. Większość dostarcza jakąś formę gotowego Docker File’a, którego budujesz i też standaryzujesz.

Szymon Warda: Nie, dlatego ja powiedziałem tak, VM-ki mamy i będziemy mieli, dlatego mnie element konfiguracji VM-ki cieszy i tego, że możemy na końcu przetestować czy to działa. To jest fajne. Reszta trochę za bardzo tam fluff w budowie, będziemy budować i wyciągać funkcjonalności, które będą potrzebne.

Łukasz Kałużny: Podpadniesz niektórym naszym słuchaczom, ja też. Dobra, kolejny taki szybki link, bo dwie rzeczy na koniec tej części odcinka to: Don’t ask to ask, just ask, czyli czy jest tu jakiś ekspert javowy zamiast zadać dokładnie pytanie z czym mam. Więc jak ktoś pyta na zasadzie bardzo ogólnie, to idealny link do odesłania, żeby zdefiniował swój problem w pierwszym pytaniu.

Szymon Warda: Okej, niezłe. Dobra.

Łukasz Kałużny: Złośliwe.

Szymon Warda: Niezłe, niezłe. To ja jeszcze jeden raporcik wyciągnąłem całkiem ciekawy. Supply chain tak naprawdę, czyli łańcuch dostawy, jak to wygląda i kilka ciekawostek z niego. W zeszłym roku NPM odpowiadał za 4,5 tryliona requestów i to jest 70% wzrostu względem roku poprzedniego. To jest dużo requestów. Python, szacuje się, że będzie odpowiadał za około 530 miliardów…

Łukasz Kałużny: Ze skanowania to trzeba też podać, że ze skanowania jest ten raport.

Szymon Warda: To w ogóle robi firma, która zajmuje się właśnie skanowaniem supply chaina, itd., więc trzeba to brać z lekką nutką przymrużenia oka bym powiedział.

Łukasz Kałużny: Nienawidzę amerykańskich określeń na liczby.

Szymon Warda: Tak, są rozjechane, ale niech będzie. I tutaj mamy wzrost 87%, czyli dość duży. Ale teraz co jest ciekawe? Ile pakietów oni zidentyfikowali jako szkodliwych? Prawie pół miliona pakietów, wzrost o 150%.

Łukasz Kałużny: Dobra i teraz będzie rant. Co do diabła oznacza szkodliwe?

Szymon Warda: A właśnie tłumaczyli. O właśnie widzisz, generalnie jest wytłumaczone. Po pierwsze gdzie jest malware, gdzie jest spyware, gdzie są reklamy dodatkowe, bo o tym było trochę głośno tak naprawdę. Dużo jest odnośnie tego, bo widzieliśmy w zeszłym roku jak różne firmy, szczególnie chińskie, zaczęły wykupywać, by po prostu sobie wchodzić tam i tam wklepywać dodatkowe rzeczy odnośnie zbierania analityki, odnośnie użytkowników i tego typu rzeczy. Czyli rzeczy, których w tej bibliotece nie powinno być, no nie? To jest takie całkiem ciekawe. Teraz dalej idziemy ciekawych. 80% zależności aplikacji pozostaje nieaktualnych przez ponad rok, mimo że 95% tych podatnych wersji ma dostępne bezpieczniejsze alternatywy.

Łukasz Kałużny: Nawet się nie kłócę z tą liczbą, mam wrażenie, że nawet jest zaniżona.

Szymon Warda: Teraz tak, a teraz jedna z fajniejszych liczb jaką wyciągnę, co tam jest. 7 mln komponentów open source, tylko 10,5% czyli 760 tys. jest aktywnie wykorzystywanych. Czyli 10% open source’u ma realne użycie a nie jest projektem dla fun’u tudzież dla bardzo wąskiego wykorzystania tak naprawdę.

Łukasz Kałużny: No to dobra, ale to nie dziwi.

Szymon Warda: Też brzmi sensownie. Jeszcze jest aktualizacja. Nawet gdy rzeczy są aktualizowane, to tam 4%, więc to nie dużo, nadal pozostaje podatnych, ponieważ zostały zaktualizowane do innej, równie niebezpiecznej wersji. Co ja bym powiedział, że ta liczba powinna być większa, bo to często jest tak, że nie jest aż tak bardzo różowo. I tylko pół procenta komponentów open source nie ma dostępnej aktualizacji, czyli po prostu jest nieutrzymywanych. Co jest, wydaje mi się, że ta liczba też powinna być dużo większa.

Łukasz Kałużny: No jest to ciekawe.

Szymon Warda: Tak, co dalej?

Łukasz Kałużny: Wiesz co, kolejny link, który mam, to jest przyjemna pierdoła. Microsoft ma swoje manage identity, workload identity, czyli że w Azure możesz podłączyć się do bazy danych, czy do storage’u, czy do innych usług, czy z GitHuba można się podłączyć do twojego Azure bez secretów, korzystając z federacji.

Szymon Warda: Czyli [niesłyszalne 00:17:23] tożsamość aplikacji.

Łukasz Kałużny: Tak, można mieć tożsamość aplikacji serwisową. I teraz powstało w tym, bardzo istotna pierdoła, która mnie ucieszyła, ponieważ do tej pory taka tożsamość nie mogła mieć uprawnień w samym penancie azure’owym, w którym są użytkownicy, aplikacje i inne takie rzeczy. Czyli tam jest to całe Graph API do tej części biznesowej, o tak, do kolaboracyjnej, jak zwał tak zwał, wokół m.in. Office 365, Microsoft 365. I pierdoła polega na tym, że teraz ten token, tą tożsamość, można zbindować z app registration, czyli tym kątem technicznym w EntraID i nie trzeba już rotować żadnych secretów i innych rzeczy, bo jest ta ścieżka trustu i wymiany tokenów, token za token. Dziękuję, secrety, rotacja, przypomnienia w kalendarzu: drogi kliencie zrotuj, bo Ci znowu wygaśnie, znika.

Szymon Warda: Każdy krok w kierunku tego, żeby się pozbyć secretów, certyfikatów, haseł, czegokolwiek, jest dobrym krokiem. Tak, Managed Identity jest świetną usługą jeżeli chodzi o Azure. Jest trywialnie prosta, jest niepłatna i po prostu działa dobrze.

Łukasz Kałużny: No, lecimy dalej.

Szymon Warda: Dobra, z moich linków tyle, ale my coś jeszcze dzisiaj mamy.

Łukasz Kałużny: Dobra, a teraz pora na gościa specjalnego shorta. Po raz pierwszy to się zdarza. Jest z nami Wojtek, który jest developer advocatem w AWS-ie i jest naszym słuchaczem i chciał dorzucić sprostowanie do re:Inventu do naszego odcinka. Kolegom z Microsoftu mówimy, że nie macie takiej możliwości dorzucić sprostowań z Builda I Ignite’a, bo mamy na tą swoją opinię i wiemy, co się dzieje z tyłu, więc pozbądźmy się otoczki marketingowej. Cześć Wojtku.

Wojtek Gawroński Cześć Wam, dzięki za zaproszenie i dzięki za możliwość sprostowania. Więc generalnie kazaliście mi powiedzieć, czego się przyczepiłem jeżeli chodzi o odcinek. Mi się odcinek bardzo podobał. Dużo waszych opinii i szczególnie podobały mi się te, które były takie celne na temat ogłoszeń, które występują rok po roku. Szymon zdaje się powiedział, że widać co budowali, po co konkretnie. To było odnośnie Amazon S3 i aktualizacji, które się pojawiły, czyli S3 Tables w oparciu o Apache Iceberg, S3 metadata, które słusznie zauważyliście, że brakowało tego już od dłuższego czasu. Natomiast też było widać to w innym aspekcie. Nie wiem czy celowo, czy nie pokryliście tego u siebie w odcinku. Rok do roku zostały ogłoszone dwa ciekawe, następujące po sobie ogłoszenia: 2023 Amazon ogłosił, że zostało zbudowane Amazon Time Sync Service, który jest oparty o zegary atomowe, synchronizację czasu przez satelity. Tak że wszystkie maszyny wirtualne oparte o Amazon EC2 mają zsynchronizowany co do mikrosekund czas w swoim protokole dostępnym przez NTP.

Łukasz Kałużny: Raczej, czyli patrząc jest standardowy problem, to co jest pod spodem, bo mówisz, że po co coś budujemy, no to tutaj dla słuchaczy chyba wrzuta, bo może to nie być na początku oczywiste, te zegary atomowe, GPS-y, to jest do rozwiązywania konfliktów na replikacji Active-Active.

Wojtek Gawroński Dokładnie tak, bo tak naprawdę 2023 to zostało ogłoszone i w 2024 widzimy tego efekt, bo pojawiło się Amazon Aurora DSQL, Distributed SQL, czyli tak naprawdę relacyjna baza Active-Active replikowana pomiędzy regionami. Pojawiło się Strong Consistency, czyli silna spójność dla globalnych tabel w Amazon Dynamo DB, czyli NoSQL-owych bazach znowu. Do tej pory Dynamo DB miało, w przypadku globalnych tabel, Eventual Cossistancy tylko. No i pojawił się Amazon Memory DB Multi Region, który Wy zauważyliście, że jest to nowy serwis. Tutaj sprostowanie, serwis jest dostępny od 2021, natomiast pojawiła się wreszcie ta replikacja pomiędzy regionami w modelu Active-Active. I tam odnośnie jeszcze Memory DB dwa słowa dotyczące projektu Valkey, bo pamiętam, że była dyskusja na temat tego, że Microsoft zrobił swoją wersję, społeczność poszła swoim krokiem, ktoś wspiera Redisa, itd. Troszeczkę bardziej skomplikowana jest ta historia, natomiast Amazon od samego początku, zanim nastąpił ten rozłam, wspierał Redisa i jedna osoba była poświęcona 100% do tego, żeby rozwijać i kontrybuować cały kod, który został przygotowywany wewnątrz Amazona i AWS-a właśnie do projektu Redis. Natomiast w momencie kiedy te licencje zostały podłożone pod siebie i pojawił się Dual Licensing tego typu działanie już nie było możliwe. Stąd pojawił się projekt Valkey, ale nie tylko inicjowany przez samego AWS-a czy Amazona, ale przez wszystkich innych kontrybutorów poza samym Redisem. I tak naprawdę Valkey w tym momencie jest takim naprawdę otwartym forkiem, który nie jest tylko i wyłącznie zawłaszczony przez jedną firmę, należy pod Lean Foundation, pod CNCF. Tak naprawdę mamy do dyspozycji taki pełnootwartoźródłową alternatywę do Redisa. Zgadzam się z obserwacją, tu zdaje się Łukasza chyba, że jest problem, będzie problem w przyszłości z tym co jeżeli te dwa worki płyną w osobną stronę. Na razie jest dość duża zgodność i spójność pomiędzy tymi dwoma wersjami. Natomiast nie ma gwarancji, że Valkey zostanie w tym samym miejscu i będzie się rozwijał dokładnie tak samo jak Redis. Na razie protokół, wszystko jest zgodne, ale czy tak zostanie po wsze czasy? Nie wiemy.

Łukasz Kałużny: Zobaczymy z tym, tak jak z Open Distro i Elasticiem.

Wojtek Gawroński Tak, Open Search’em, dokładnie tak, to będzie dokładnie ten sam przypadek i historia jest niestety też smutna ta sama.

Szymon Warda: A właśnie, czy podpytać w takim razie, bo ja z tego co pamiętam, a to jest wiedza, która ma już trochę czasu, Amazon nie był zbyt chętny do kontrybuowania do projektów open source’owych. Więc to co właśnie mówisz odnośnie Redisa, to to jest jakiś wyjątek od reguły czy tak po prostu się pozmieniało od momentu jak ja pamiętam kiedy patrzyłem na ten temat?

Wojtek Gawroński Nie wiem kiedy patrzyłeś na ten temat, ale mogę powiedzieć, że od wielu, wielu lat Amazon kontrybuuje do bardzo dużej ilości projektów open source’owych. Lecąc po kolei Corretto i Java, czyli to co się dzieje z Open JDK. Całe Open JDK, które zostało zbudowane po stronie Amazona, wszystko co zostało tam zbudowane jest upstreamem dorzucone do Open JDK. Postgres, kolejny świetny przykład, bo tam jest kilka osób zatrudnionych na pełen etat, które kontrybuują zarówno jeżeli chodzi o security issues, jak i sam rozwój funkcjonalności do Postgresa. MariaDB, kolejny przykład. To samo jest jeżeli chodzi właśnie o Redisa, to nie był wyjątek od reguły. Wcześniej, zanim jeszcze w ogóle AWS mocno kontrybuował, Amazon zatrudnił autora Apache Lucene i w stu procentach finansował jego pracę nad Apache Lucene. To są już naprawdę dawne czasy, bo mówimy o czasach, kiedy wyszukiwarka Amazona używała Apache Lucene pod spodem, czyli dawno, dawno, dawno temu.

Szymon Warda: Apache Lucine jest stare.

Wojtek Gawroński Zgadza się, więc to tak naprawdę sięga daleko, daleko i nie tylko samych projektów związanych z bazami danych czy z danymi w ogóle, bo są też projekty związane z security, ta nowa Schema, która się pojawiła, Cyber Security Schema Foundation zdaje się, to się nas tak nazywa, też jest jedną z inicjatyw, za którą stał Amazon. I podobnie jest z nowszymi rzeczami, chociażby ostatnie inicjatywy związane z biblioteką standardową w języku Rust i tak naprawdę próbą sformalizowania tego i sfinansowania formalizacji dookoła tego. Więc jest sporo tych przykładów na przestrzeni lat i mogę powiedzieć, że to nie jest wyjątek od reguły, szczególnie Valkey czy Redis.

Szymon Warda: Czyli informacje nieaktualne.

Wojtek Gawroński Mógłbym tak powiedzieć.

Łukasz Kałużny: Dobra, to co dalej Wojtku masz tam, bo miałeś na liście trochę rzeczy.

Wojtek Gawroński Zgadza się, ja bym jeszcze skreślił… Znaczy inaczej, zwróciliście uwagę na ciekawe rzeczy w Bedrocku i też fajnie, bo od tej pragmatycznej strony. Łatwo się zachłysnąć wszystkim co jest związane z Generative AI. Natomiast w Bedrocku jeszcze są dwie rzeczy, na które ja bym chciał zwrócić uwagę i uważam, że są wartościowe. Pierwsza rzecz to jest model distillation. To jest taki zupełnie inny mechanizm niż… Inaczej, jest to bardzo specyficzne podejście do fine-tuningu. Fine-tuning kojarzy się z tym, że bierzemy duży model i zaczynamy zawężać, zawężać, zawężać przygotowując tak naprawdę z tego dużego modelu bardziej ekspercki model. Natomiast jest jeszcze jeden mechanizm związany z tym fine-tuningiem, gdzie bierzemy duży model i z jego pomocą, traktujemy go jako nauczyciela, uczymy model mniejszy, żeby został modelem eksperckim i przekładamy za pomocą transfer learningu i całego takiego procesu zamkniętego tą wiedzę na ten model mniejszy ekspercki. To ma taką zaletę, że w fine-tuningu dostajemy model duży, który jest modelem eksperckim, co może nas trochę więcej kosztować jeżeli chodzi o inference i o po prostu uruchamianie tego modelu. W tym model distillation mamy do dyspozycji na końcu mniejszy model, który jest też modelem eksperckim. Wcale nie jest powiedziane, że będzie mniej jakościowy w tym przypadku, bo jednak nauczyciel był dużo większym modelem, ale koszt uruchomienia tego mniejszego modelu będzie mniejszy, więc to jest też ciekawe podejście, które jest dostępne w Bedrocku jako w pełni zarządzana usługa.

Łukasz Kałużny: Jestem w ogóle, to taka, Wojtek, słowem wyjaśnienia, nienawidzę fine-tuningu, ale powiedzmy, że może nawet zobaczę jak to sobie działa, bo to jest ciekawy koncept.

Wojtek Gawroński Spróbuj, bo nie wiem skąd się bierze ten sceptycyzm co do fine-tuningu, ale podejrzewam, że on jest pewnie związany z?

Łukasz Kałużny: Jakością danych wejściowych. Bo problem jest, wiesz co, to zawsze będę powtarzał, problemem są dane, nie sam fine-tuning, bo to uznaję za rzecz okej, ale problemem są dane wejściowe.

Szymon Warda: Jeszcze jedno, fine-tuningu większość organizacji nie potrzebuje tak naprawdę, to jest taka ostatnia mila, kawałek.

Wojtek Gawroński Zgadza się.

Szymon Warda: Masa organizacji jest po prostu na to napalonych i od tego zaczyna. To nie tędy droga w ogóle.

Wojtek Gawroński Zgadza się i wydaje mi się, że też model distillation to też może być odpowiedź na to przysłowiowe napalenie, dlatego że z perspektywy organizacji bardzo łatwo się napalić, zobaczyć wynik działania fine-tuningu i nagle się okaże, że ani jakość nie jest idealna, a koszty też nie są satysfakcjonujące. Moim zdaniem ten model distillation może mieć tutaj ciekawą opcję i propozycję w tym kontekście, że ten model będzie po prostu tańszy w uruchomieniu na sam koniec. I druga rzecz…

Łukasz Kałużny: Wiesz co, to ja bardziej patrzę na to z Waszego offeringu akurat Wojtek, to patrzę na knowledge bases w Bedrocku, które są dostępne. Można wparować, że tak powiem i to jest dla mnie ciekawsza alternatywa w większości przypadków.

Wojtek Gawroński To zdecydowanie, ale to też chyba wynika z tego, że po prostu RAG jako taki, bo knowledge bases to jest po prostu zarządzany RAG z dodatkami, to jest po prostu w wielu przypadkach dużo efektywniejsze zastosowanie tej wiedzy, która jest w organizacjach i tych danych, które są w organizacjach, to zdecydowanie.

Łukasz Kałużny: Co jest, bo powiedziałeś o dwóch rzeczach, to jaka jest druga?

Wojtek Gawroński Drugą bym zwrócił uwagę na automated reasoning, to znaczy też ciekawe, zupełnie inne podejście do tego w jaki sposób walczyć z halucynacjami. Na pewno kojarzycie… Inaczej, systemy regułowe, guardrailsy, wszelkiego rodzaju mechanizmy, które zabezpieczają przed wypływem danych, nie tych takich których nie chcemy. Jaki jest problem z systemami regułowymi? Nie bardzo wiemy i mamy gwarancję czy działają dobrze. To znaczy tak, jak dobrze napiszemy reguły, tak dobre będziemy mieli rezultaty. Automated reasoning to jest tak naprawdę pójście o krok dalej w kontekście gwarancji. Bo skąd to się w ogóle wzięło? W Amazonie, ale myślę że też każdy duży gracz chmurowy, ma swój dział związany z Research and Development i szczególnie ci ludzie, którzy pracują z Research and Development i z gwarancjami pracują gdzie? W bezpieczeństwie, security. Tak jest w AWS-ie, w Amazonie, nad Identity and Access Management nad IAM-em pracuje bardzo duży dział, który tak naprawdę tworzy soft, którego my nie widzimy jako użytkownicy, a daje nam gwarancję, że te reguły bezpieczeństwa, IAM, działa tak jak powinien. Więc ktoś zauważył, że słuchajcie te reguły bezpieczeństwa i te gwarancje, które potrzebujemy od IAM-a, są bardzo podobne do tych gwarancji, które potrzebujemy na samym wyjściu jeżeli chodzi o walkę z halucynacjami. Wzięto dokładnie to samo podejście i zaaplikowano na reguły, które piszemy w gwarancjach, związane z gwarancjami, walczące z halucynacjami. Czyli powstał mechanizm, który daje nam język do opisu, regułowy język, do opisu tak naprawdę tego, co może model wypluć. I jeżeli coś będzie niespójne w tym języku, nie będzie dawało gwarancji dotyczących tego, że albo się to pojawi albo się to nie pojawi, w zależności od tych reguł, to my nie będziemy w stanie takich reguł zaaplikować i nie będziemy w stanie takiego mechanizmu zabezpieczyć i dać gwarancji, że nic nie wyjdzie niewłaściwego. I na sam koniec dostajemy informację, że te reguły są niespójne, nie dają Ci gwarancji bezpieczeństwa, musisz doprecyzować to co jest. Analogia co do tego może być podobna do języków statycznie typowanych i dynamicznie typowanych. To znaczy dokładnie w ten sam sposób opisujemy za pomocą Schemy, opisujemy za pomocą reguł to co się dzieje w naszym kodzie i kompilator dba o to żeby po prostu nic złego się z tym nie stało. Dostajemy dokładnie taki sam mechanizm w przypadku walki z halucynacjami, który nazywa się automated reasoning i jest dostępny w Bedrock Guardrails. Jest on dostępny w preview w tym momencie, więc tam są na pewno jakieś ostre krawędzie, szczególnie jeżeli chodzi o developer experience, bo myślę, że tutaj też celnie zauważyliście, że AWS nie słynie z tego, że te wszystkie rzeczy, które są dostępne od razu mają świetny developer experience. Natomiast jest zdecydowana wartość, która z tego płynie właśnie związana z tymi gwarancjami, bo tak naprawdę pod spodem mamy do dyspozycji tak naprawdę matematyczny model, który powie nam czy te reguły są bezpieczne czy są niedoprecyzowane i musimy nad nimi popracować, żeby były bezpieczne.

Łukasz Kałużny: Dobra, rzuciłeś jeszcze, chyba widziałem, Amazon Q tematykę, właśnie tak mi się rozwinęła troszeczkę.

Wojtek Gawroński Zgadza się, bo zdaje się…

Łukasz Kałużny: W dwóch tam elementach czy trzech.

Wojtek Gawroński Zdaje się Szymon znowu powiedział bardzo celnie, że w segmencie SMB Amazon Q w QuickSight będzie ciekawą, bardzo ciekawą opcją. Ja się z tym zgadzam, bo tak naprawdę jeżeli ktoś już jest na AWS-ie i nie ma do tej pory zaprzęgniętego jakiegoś wielkiego kombajnu z business intelligence, to Amazon Q jest takim najniżej wiszącym owocem, który można sobie zaaplikować w organizacji i wykorzystać do tego QuickSight, żeby przygotować taki business intelligence wspomagany właśnie jakimś asystentem. Ale jest jeszcze jedna rzecz, która się pojawiła. Kojarzycie może Amazon SageMaker Canvas? Czyli taki no-code, low-code dla budowania i pracy z modelami uczenia maszynowego, czyli po prostu playground, miejsce do eksploracji, do zaaplikowania AutoML-a i pracy takiej iteracyjnej dla osób, które niekoniecznie są ekspertami z samego ML-a.

Łukasz Kałużny: W 2023 to się chyba pojawiło.

Wojtek Gawroński Bardzo możliwe, że 2023 albo 2022. Plusem tego Canvasa jest to, że tak naprawdę był bardzo fajny playground, nie trzeba było mieć nawet konta AWS-owego, był jakiś bardzo sensowny, darmowy dostęp do tego bez konta i karty kredytowej. Natomiast to co zostało dodane w tym roku to to, że jest tam też Amazon Q jako asystent. To daje ciekawą opcję dlatego, że prowadząc po prostu w interfejsie konwersacyjnym chat z naszym asystentem jesteśmy w stanie przygotować dużo bardziej skomplikowane rozwiązania w zasadzie nie pisząc ani linijki kodu związanego z budowaniem tych modeli. Czyli jeżeli ja będę chciał, żeby przygotować jakiś prosty model w oparciu o regresję, o analizę przypadków brzegowych i tego, co się znajduje poza, albo detekcję tych outlierów, to bez żadnego problemu za pomocą Amazon Q jestem w stanie zbudować coś takiego i wykorzystać Amazon Q do tego. To znowu nie wymaga żadnej wiedzy związanej z ML-em, czyli trochę demokratyzujemy dostęp do tych bardziej zaawansowanych technologii. Fajnie, że zwróciliście uwagę na temat QDevelopera i migracji .NET frameworka. Ja bym chciał Was pociągnąć tutaj za język, bo powiedzieliście o dwóch elementach, które byłyby pomocne, żeby Q pomagał w tym. Czy możecie coś na ten temat powiedzieć więcej? Tam zdaje się brakowało czegoś we wsparciu, jeżeli dobrze pamiętam.

Szymon Warda: W wersji UI-owej, bo tam było wycięte całkowicie wersja migracja tej części. No tam są dwa frameworki duże, framework do aplikacji desktopowych, nazwijmy to, czyli tak zwane Windows Forms, tak się nazywało to. I są jeszcze Web Formsy, gdzie tam tej logiki po stronie tego widoku w tych plikach, tam tego jest od groma. Co więcej Microsoft, to był jakiś czas kiedy MS mówił bardzo, że: nie, spoko, logikę w ogóle biznesową możesz mieć zaszytą w tym widoku. Więc to, że to jest niedotykane to potencjalnie jeżeli aplikacja napisana jest poprawnie, a tak nie zawsze to wygląda i z nowymi standardami, tam powinna być tylko warstwa widokowa, nie tak dużo, a w kontrolerach dużo logiki. Ale to bywa różnie, szczególnie w Enterprisie, więc niedotykanie tego obszaru nie jest takim dużym krokiem. Wiadomo, że i tak trzeba by napisać zupełnie inny framework, który wygląda zupełnie inaczej, będzie HTML’owy, itd. Ale wprowadzenie tej usługi nie będzie takim super, że: okej lecimy z projektem i właściwie jest z górki. Nie, to jest takie duże ułatwienie, bardzo duże, nie można tego zmniejszać, ale nie jest to takie całkowicie. Inna bajka, powiem szczerze, nie wyobrażam sobie opcji migracji z Web Fromsów na cokolwiek nowszego, automatyczne, to będzie naprawdę, naprawdę trudne.

Wojtek Gawroński Jasne, czyli brakuje wsparcia dla czasów ASP .Net 1.0 i 2.0 i Web Formsów. Czyli moje czasy kiedy dotykałem jeszcze technologii Microsoftowych, dawno, dawno temu.

Łukasz Kałużny: Dawno, tak, jest to w tym.

Szymon Warda: To [niesłyszalne 00:37:24] technologia.

Łukasz Kałużny: Dinozaur, może skończmy z tymi.

Wojtek Gawroński Szymon powiedział powiedział w Ustate, ja miałem ciarki, jak to usłyszałem, tak że…

Łukasz Kałużny: Słuchaj, inaczej, ostatnio widziałem jakieś nowsze rzeczy i też mi się włączyło. Trochę świeższe i też mi się PTSD odpaliło, jak zacząłem składnię.

Szymon Warda: Ewidentnie, jestem pewien, że za 3-4 lata będziemy to widzieli.

Łukasz Kałużny: Ale w Ustate, inaczej, w Ustate teraz… Inaczej Szymon, kurde szczerze zobacz, bożesz, Blazor.

Szymon Warda: Blazor. Microsoft wypuścił taki designer, to była w tym roku, koniec zeszłego roku, taki bardzo UI-owy, że można draganddrop’ować, itd. Ten pomysł wróci totalnie.

Łukasz Kałużny: Inaczej, zostańmy przy, idea hotwire’ów wystarczy, może dalej już nie idźmy. To endgame i koniec. Dobra. Coś jeszcze masz Wojtku do dorzucenia, tak patrząc z rzeczy?

Wojtek Gawroński Generalnie jeszcze jedna drobna rzecz, bo zauważyliście, że pojawił się komponent, który nazywa się Amazon S3 Storage Browser. Czyli można sobie w dowolnej aplikacji dorzucić komponent frontendowy, który będzie się ładnie integrował z konkretnymi bucketami, będzie dawał opcję wgrywania, uploadu i wszystkich elementów. Ale to dalej wymaga pisania samodzielnie tej aplikacji frontendowej. I jest coś lepszego jeszcze od tego roku, co nie wymaga w ogóle żadnej pracy związanej z kodem, bo tak naprawdę mamy Web Transfer Family Apps się to nazywa. Czyli w ramach takiej w pełni zarządzanej usługi my zaznaczamy: interesuje mnie ten bucket, proszę mi wygenerować do niego interfejs, spiąć to z tym identity providerem, czy to jest cognito, czy to będzie coś innego. I w tym momencie dostajemy po prostu ładny interfejs użytkownika z pełną możliwością customizacji, stylizacji i integracją z regułami bezpieczeństwa i z udostępnianiem i z uwierzytelnianiem.

Łukasz Kałużny: Pierdoła, która cieszy, jak ktoś robi takie rzeczy na poziomie korporacyjnym.

Wojtek Gawroński Jestem przekonany, że to był jeden z najczęściej zgłaszanych braków związanych z S3, który wszyscy pisali samemu i pewnie każda organizacja napisała po swojemu setki razy.

Łukasz Kałużny: Słuchaj, drugim pewnie ogłoszeniem, które znam i nastąpił chyba u Was i w Microsoftie jest, czyli SFTP położone na Object Storage’u.

Wojtek Gawroński To było już jakiś czas temu faktycznie i to był…

Łukasz Kałużny: To jest stare, to jest stare ale to jest taki właśnie drugi korporacyjny element.

Wojtek Gawroński Myślę, że to jest bardzo słusznie, celna obserwacja, że jest to ukłon w kierunku pewnych korporacyjnych zaszłości.

Łukasz Kałużny: Ciągle żyjemy. No to co?

Szymon Warda: [niesłyszalne 00:40:19], tam też SFTP ma się dobrze i czuje się dobrze.

Wojtek Gawroński Oby to było SFTP a nie FTP.

Łukasz Kałużny: Wiecie co, ja tylko zażartuję. Razem z CSV-kami, bo ja miałem taki żart za któryś, jeden z topowych klientów pewnych chmur globalnie, zawsze się stamtąd Enterprise Architekci na mnie obrażali, kiedy mówiłem, że przez to, że przespali pewne elementy systemów integracji i innych rzeczy i wszystko latało na CSV-kach, są gotowi na Big Data i Data Lake’i. Tak, wystarczyło ładnie przerzucić do Parqueta wtedy i Avro. Dobra, to co, kończymy w takim razie na dzisiaj.

Wojtek Gawroński Z mojej strony więcej sprostowań nie ma, bardzo fajny odcinek.

Szymon Warda: Dzięki wielkie.

Łukasz Kałużny: Dzięki.

Wojtek Gawroński Dzięki również.

Łukasz Kałużny: Trzymajcie się. Na razie.