Microfrontendy w module federation to kłamstwo!
Odcinek opublikowany 07.03.2025Aleksander Lubych i Jakub Pawlak zapraszają na kolejną dawkę brutalnej prawdy o mikrofrontendach! Czy Module Federation to naprawdę złoty środek na mikrofrontendy? A może to po prostu kolejny sposób na stworzenie… rozproszonego monolitu? W tym odcinku obalamy największe mity na temat Module Federation i sprawdzamy, czy rzeczywiście daje nam prawdziwą niezależność zespołów i technologii. 🔥 O czym pogadamy? ✅ Jaką wizję mikrofrontendów miał Manfred Steyer w 2018 i jak to wygląda dzisiaj? ✅ Module Federation – czy to faktycznie mikrofrontendy? ✅ Problem wersjonowania frameworków i twardego couplingu ✅ Multi-repo kontra monorepo – dlaczego niezależność bywa iluzją? ✅ Jak uniknąć pułapek rozproszonego monolitu? W teorii miało być pięknie: niezależne zespoły, niezależne technologie, niezależne wdrażanie. W praktyce? No cóż… Jeśli pracujesz z mikrofrontendami (albo dopiero się do tego przymierzasz), ten odcinek może oszczędzić Ci wielu frustracji! 🚀 Gwiazda programu: https://module-federation.io/💬 Masz swoje doświadczenia z Module Federation? Jakie mieliście z tym problemy? Podziel się w komentarzu! 👍 Zostaw suba, jeśli chcesz więcej technicznych deep dive’ów! #MicroFrontends #ModuleFederation #Angular #Frontend #RozproszonyMonolit #Programowanie #SubiektywnyFrontend #IT #Monorepo #MultiRepo
Z samą technologią jest wszystko ok, ona spełnia swoje założenia. To jest potęga. To jest potęga, to jest super fajne. Ale niesie to za sobą też pewne ograniczenia, czy narzuca pewne rozwiązania. Jakub, błagam, powiedz o co chodzi, bo już tak ciągniemy ten temat. Monorepo. No właśnie, bo jakby module federation, to ja bym powiedział, że to trochę jest synonim do monorepo. Jeśli chcemy, to może nie. No tak, a to wynika z czego? Ano z tego, że chociażby musimy mieć jedną wersję frameworka, bo inaczej nam się kiełbasi strasznie aplikacja. No właśnie, bo weźmy sobie Angulara. Ale jeszcze muszę dodać taką jedną rzecz, bo tutaj byłbym od razu zhejtowany, że jestem nieprecyzyjny, bo my mówimy też o module federation w takim wydaniu, jak Enix proponuje, że po prostu robimy lazy loading komponentów.
Jesteś zależny od tej wersji, w której jest twój shell, czyli ten host, który serwuje te Microfrontendy. No i teraz nie masz szansy, żeby zaserwować jakąkolwiek inną wersję, przez co pójście w multi repo jest poniekąd trochę strzałem w kolano, ponieważ upgrade frameworka wtedy robi się niezwykle bolesny. Więc zostajesz przy Monorepo przeważnie. Tak. I ja bym powiedział, że po prostu module federation w Monorepo daje super możliwości, jeśli chodzi o czas i szybkość developmentu i performance, właśnie optymalizację samej aplikacji.
I to jest super perfekcyjna para. Bardzo fajnie to działa. Ale w momencie, jak zaczynamy działać z module federation i wchodzimy w multirepo, No to jest bolesne przeżycie. Tak się nie robi. To znaczy, to właśnie jest takie pozorne unikanie zależności, że mamy trochę Microfrontendy, ale jak robimy update jakiejś biblioteki, no to zróbmy ją wszyscy razem, wszyscy razem za rękę, weźmy te wszystkie nasze 20-50 repozytoriów. Uhu, niezależność! Tak, tak, tak. Dlatego module federation jakby w tym setupie z Monorepo, który Elnix promuje, jest bardzo fajny. To działa. I można module federation użyć też w różnych kontekstach.
I ten formularz zrobiłem z moim przyjacielem o 3 mini. Nie napisałem tam ani linijki kodu. Ale to przyjaźń kwitnie. Kwitnie, kwitnie. Nie napisałem linii kodu, nie napisałem nawet pytań, nie napisałem nic w zasadzie, więc przejdziemy sobie przez takie pytania, ale to jest... Dobra, z tym, że nie przechodziłem przez te pytania, to kłamstwo. Jakby chciałem po prostu z tobą przejść przez ocenę, czy module federation z... Lazy loadowaniem modułów czy komponentów w taki sposób najprostszy, jak NX to proponuje, to czy to są mikrofrontendy, czy to nie są mikrofrontendy. Super. I zacznijmy od pierwszego pytania. Czy mamy niezależną bazę kodu? Nie. Autonomiczny rozwój i wdrażanie. Czy zespoły mogą wdrażać tak niezależnie od siebie, w którym momencie chcą?
No i na przykład ktoś wykona robotę za was, na przykład taki platformowy team, który zrobi update całego frameworka na całe monorepo. No i dobre! To, co chciałem zaznaczyć, to jest to, że module federation jako taki byt, który rozwiązuje wszystkie problemy, które niby oferują mikrofrontendy, no to trzeba z tym uważać i po prostu pamiętać o tym, co jest najważniejsze w tym setupie mikrofrontendowym i tego, czego odczujemy. W setupie waszym mikrofrontendowym. Oj, to jest super ważna rzecz, bo nasz setup nie jest waszym setupem. Jakub, właśnie to jest bardzo ciekawe, że co ja przechodzę z organizacji do organizacji, z firmy na firmę, każdy te microfrontendy robi po swojemu i każdy robi to pod siebie.
Tak, bo nie ma jednego rozwiązania. Można użyć module federation, można użyć tego z różnymi technologiami, webkomponentami, można mieć trochę różny poziom enkapsulacji, bo myślę, że o webkomponentach czy single spa też porozmawiamy, a można nie mieć tej enkapsulacji, ale to też jest spoko, jeśli chcemy szybko dowozić. To jest super. Polecajki. Dzisiaj chciałbym polecić taką książkę. Jest to książka pt. Żyć dłużej. Peter Attia, dr. Peter Attia. Świetna książka o... Dobra, żeby to była jasność. Teraz jestem wkręcony w dietę i takie tam tryby... Zdrowy tryb życia, bo trochę się zapuściłem.
Nowotwory. Dokładnie. I ostatni to będzie Alzheimer, to najcięższy. Czyli jakieś demencje, jakieś tam problemy takie już wieku starczego. No i generalnie okazuje się, że tam jest wspólny mianownik i właśnie o tym jest ta książka. Jak żyć dłużej w zdrowiu. Więc polecam bardzo tą książkę, bo ciekawa pozycja. Jak ktoś interesuje się zdrowiem i chce mieć zdrowsze ciało. W zdrowym ciele, zdrowy duch. Dokładnie. Świetna rada wujku, bardzo dobra rada. Super, nie, bardzo fajna polecajka i jak już nabierzecie tej formy, to ja tutaj taką polecajkę prywatkę zrobię. To możecie zorganizować imprezę integracyjną, na przykład zespołem na paintballu pod Warszawą w Iskitkach.
Pokazano wszystkie 7 dopasowań. Transkrypcja generowana automatycznie i niesprawdzana ręcznie — może zawierać błędy.
Kliknij, aby znaleźć fragmenty, w których pada.
Odcinek opublikowany 07.03.2025
Aleksander Lubych i Jakub Pawlak zapraszają na kolejną dawkę brutalnej prawdy o mikrofrontendach!
Czy Module Federation to naprawdę złoty środek na mikrofrontendy? A może to po prostu kolejny sposób na stworzenie… rozproszonego monolitu? W tym odcinku obalamy największe mity na temat Module Federation i sprawdzamy, czy rzeczywiście daje nam prawdziwą niezależność zespołów i technologii.
🔥 O czym pogadamy?
✅ Jaką wizję mikrofrontendów miał Manfred Steyer w 2018 i jak to wygląda dzisiaj?
✅ Module Federation – czy to faktycznie mikrofrontendy?
✅ Problem wersjonowania frameworków i twardego couplingu
✅ Multi-repo kontra monorepo – dlaczego niezależność bywa iluzją?
✅ Jak uniknąć pułapek rozproszonego monolitu?
W teorii miało być pięknie: niezależne zespoły, niezależne technologie, niezależne wdrażanie. W praktyce? No cóż… Jeśli pracujesz z mikrofrontendami (albo dopiero się do tego przymierzasz), ten odcinek może oszczędzić Ci wielu frustracji! 🚀
Gwiazda programu: https://module-federation.io/
💬 Masz swoje doświadczenia z Module Federation? Jakie mieliście z tym problemy? Podziel się w komentarzu!
👍 Zostaw suba, jeśli chcesz więcej technicznych deep dive’ów!
#MicroFrontends #ModuleFederation #Angular #Frontend #RozproszonyMonolit #Programowanie #SubiektywnyFrontend #IT #Monorepo #MultiRepo