1.01 (1) SSR, SSG, SPA czy MPA?
1.01 SSR, SSG, SPA czy MPA? W pierwszym odcinku podcastu PiwnicaIT rozmawiamy o różnych podejściach do tworzenia aplikacji webowych. Poruszamy tematy związane z SPA, SSG, SSR czy MPA w ujęciu webdevelopmentu. Omawiamy nasze doświadczenia w pracy z różnymi bibliotekami i frameworkami dostępnymi na rynku. Materiały dodatkowe: Qwik Svelte How to pick Web Framework in 2023 NextJS Gatsby React 10 Rendering Patterns for Web Apps Rozmawiają: Wojciech Skorupa [linkedin] Mateusz Jabłoński [www] [linkedin]
Cześć! Witam Was serdecznie w naszym podcaście Piwnica IT. Dzisiaj chcielibyśmy porozmawiać na temat SSR-a, technologii SSR-owych we współczesnym dewelopmencie webowym. W szczególności poruszyć temat Remixa, Nexta, Gatsby'ego. Natomiast, żeby to wszystko pięknie wyglądało, chciałbym, żebyśmy się troszeczkę poznali. Dzisiaj jest ze mną człowiek niebanalny, pomimo młodego wieku bardzo świadomy, świetny kompan do żartów, dyskusji, nie tylko o świecie IT. Poznajcie Wojtka, JS-owego ogarniacza, któremu niestraszne najdziwniejsze refaktoryzacje. Cześć Wojtek. Cześć Mateusz. Nie wiem czy wszyscy już Cię znają, więc pozwól, że przedstawię Cię tym, którzy jeszcze o Tobie nie słyszeli.
Poszczególne te rzeczy, bo na przykład ja ze swojej perspektywy widzę bardzo mało zastosowań dla SSG. Zgadzam się z Tobą. Tutaj też temat, który pewnie jeszcze poruszymy gdzieś tam trochę dalej, czyli właśnie jaki jest sens w takim podejściu SSG i pewnie też o tym porozmawiamy w kontekście Gatsby'ego. Ale jeśli chodzi ogólnie o aplikacje, myślę, że tutaj właśnie SEO jest bardzo ważne. I to jak chcemy, żeby ta nasza aplikacja prezentowała się dla użytkowników. Z SPA skorzystałbym wtedy, kiedy nasza platforma, czy też produkt, który tworzymy mieści się za logowaniem praktycznie cały.
To w takim razie, jak myślisz? SSG ma w ogóle sens jeszcze? Co się stało z tym Gatsbym? A bo co jest powodem tego, że to się tak zmienia? To są wszystko dobre pytania, mam tylko przypuszczenia, ale wydaje mi się, że SSG jako sama technologia to jest dalej dobra rzecz, która ma zdecydowanie swoje miejsce. I też widać to na przestrzeni różnych frameworków. Może nie akurat Gatsbym, czy też po Gatsbym, ale na takich frameworkach jak Astro czy Quick, o którym Ci wspominałem. Myślę, że problem Gatsby'ego jest trochę inny. Moim zdaniem główny problem, który jest w tym frameworku, to jest jego złożoność i skomplikowaność, która jest trochę, właśnie mam wrażenie, że to jest strzelanie, wiesz, ze strzelby do buch.
Czy też zarmaty do kaczek, ponieważ on między innymi wykorzystuje GraphQL do generowania tych statycznych stron, który myślę, że jest totalną przesadą w tym kontekście, tak? Generujesz statyczną stronę, a masz wrażenie, że wiesz, pracujesz z jakimś mega skomplikowanym produktem, tak? Nie wiem, czy ty miałeś doświadczenie jakieś z Gatsbym i czy masz może inne wrażenie, dlaczego on właśnie zalicza takie spadki popularności? Ja słyszałem znowuż o Gatsby, nie pracowałem z nim osobiście, tylko w jakimś komercyjnym projekcie, tylko tak trochę prywatnie się bawiłem. Natomiast z tego co spotkałem się, znowuż uderza o tą strunę biznesową, że bardzo często porównuje się Gatsby'ego do narzędzi typu Wordpress.
Z prostej przyczyny. Ponieważ oba narzędzia miałyby służyć do szybkiego dostarczania produktu, w prostym ujęciu. Oczywiście, jeden to jest SSG, drugi to jest MPA, więc trudno by było to porównywać z tej perspektywy. Natomiast z drugiej perspektywy, jeżeli klient ma do wyboru, przychodzi do Ciebie i mówi, słuchaj Wojtek, chcę stronę internetową, landing page, najlepiej szybki, szybko, żeby postał postawiony, co mi proponujesz? A Ty mu mówisz, słuchaj, zrobimy Zrobimy SSG, bo jest optymalne, bo jest szybkie, bo jest fajne, wprowadzamy Gatsby'ego. A on mówi, no dobra, a jak ja to mogę dalej, co ja mogę z tym zrobić? No słuchaj, no co możesz z tym zrobić? Napiszesz do mnie, ja Ci wszystko zrobię, tak?
Tak, napiszesz do mnie, ja Ci wszystko zrobię, a jakbym wybrał MPA, wybiorę jakiegoś CMS-a, jakiegokolwiek, nawet starą dżumlę, Tak? To on sam sobie to wyklika. W pewnym sensie. Kurczę, koszmary. Teraz Gatsby wypełniał tą lukę wypełniał tak naprawdę gdzieś na rynku, wydaje mi się. Tyle tylko, że trochę zaniemógł w porównaniu do mnogości opcji, które dostarczają rozwiązania na przykład MPA. No bo jeżeli byśmy spojrzeli na Gatsbiego Na przykład Nexta, no to tutaj mamy już większe pole do popisu, ponieważ Next też może nam generować SSG.
I porównując Nexta na przykład z Gatsbym, wydaje mi się, że większość wybierze Nexta, bo Next więcej oferuje. Więc ten Developer Experience daje większą swobodę. To podejście hybrydowe da nam większą swobodę niż przy Gatsbym. Zgadzam się z Tobą. Mamy narzędzie Gatsby'ego jako Do tego miejsca, w którym Gatsby jest, czyli do budowania prostych, szybkich, dynamicznych stron, to tutaj może się pojawić ta rozbieżność. Czy to będzie bardziej MPA, czy to będzie bardziej SSR? Nie chodzi nam o całą technologię, o podejście do technologii, tylko bardziej, w którą stronę to przypisać. Więc biznesowo ten Gatsby mi się nie klei.
Zgadzam się z Tobą. Poza tym, jeśli już zostałem tutaj takim adwokatem właśnie tego developer experience, że tak powiem, To dobrze. Zdecydowanie. Bardzo jestem zaszczycony, że wiesz, trafiłem właśnie na takie stanowisko. W każdym razie jeśli chodzi o samego Gatsby'ego myślę, że właśnie Nie zapewnia on niczego, czego nie zapewniałyby te frameworki takie jak właśnie Next czy Remix, a dodatkowo generuje jakieś dodatkowe problemy w tym, że jest to skomplikowane jak na wartość, którą proponuje. Dodatkowo jeszcze w rzeczach takich jak Next czy Remix
No dobra, a pozostali gracze? Mamy Nexta, o którym sobie już cały czas rozmawialiśmy. Mamy Gatsby'ego, który cały czas nam się przewija, ale na rynku są też inni gacze. Właśnie tak jak wspominałeś Remix, Svelte, chociażby Quick, o którym też mówiłeś. Czy w ogóle są w stanie dostarczyć coś wartościowego? Z mojej perspektywy, jak tak przeglądałem sobie chociażby Svelte, to dla mnie to nie jest developer experience na najwyższym poziomie. Bardziej przypisałbym to może do jakiegoś... Bardziej mi przypomina to Vue niż React.
Tak naprawdę. Więc mi się wydaje, że jakbyśmy spojrzeli na to, co ludzie wybierają, co ludzie wybierają pod kątem jakiejś sympatii bardziej, emocji. A czy my wybierzemy remixa, reacta, nexta? No nexta, to jakbyśmy wybrali reacta. Jeżeli wybierzemy reacta, Będziemy potrzebowali SSR, to wybierzemy Nexta. Jeżeli SSG, to weźmiemy Gatsby'ego, bo też jest React. Tak mi się wydaje. Jeżeli nie będziemy sympatyzować z polityką Facebooka, to w życiu nie wybierzemy. Nasza firma w życiu nie wybierze Reacta. Biznesowo nie zgodzą się na to. Pójdziemy w stronę Google. Największe korporacje wybierają Google'a,
I Angulara wydaje mi się z dwóch powodów. Z jednej strony, to jest zatem olbrzymia firma, gigant, że tak powiem, technologiczny, który bardzo dużo inwestuje w ten produkt i na dzień dzisiejszy można powiedzieć, że uczynił go dość stabilnym. Początki były słabe, ale można powiedzieć, że na dzień dzisiejszy Angular jest stabilnym, dojrzałym produktem, który wydawany jest, kolejne wersje są wydawane w regularnych cyklach półrocznych, Naprawdę ten produkt już się nie zmienia aż tak. To nie jest to, co było pomiędzy RC5 a RC6, że wywalamy wszystko i wpiszemy od początku. Na ten moment jest to stabilne rozwiązanie. I tak samo jest chyba, jeśli chodzi o Reacta, bo w tym momencie wybieramy Reacta, ale czy my wybierzemy Nexta, Gatsby'ego czy czystego Reacta, to tak jakbyśmy wybierali SPA, SSG czy SSR.
Adwentu tych technologii, o których rozmawiamy, które by były idealne jako alternatywy WordPressa w połączeniu z jakimś rozbudowanym systemem CMS i dużym katalogiem gotowych template'ów. Właśnie ponoć do Gatsby'ego jest tworzony zbiór template'ów, ale jest on dość ubogi. Więc z tej perspektywy, no ten system template'ów i plugin'ów w WordPressie wygrywa wydaje mi się w dalszym ciągu. Jeśli chodzi o headlessy, czyli te CMSy headlessowe, które np. pod takie rozwiązania, o jakich dzisiaj rozmawiamy, czyli o rozwiązania typu SSR, SSG czy SPA, to takie CMSy headlessowe mają wielki sens i dają często dużą swobodę użytkownikom.
Pokazano wszystkie 12 dopasowań. Transkrypcja generowana automatycznie i niesprawdzana ręcznie — może zawierać błędy.
Mateusz przedstawia gościa, Wojtka, JS-owego ogarniacza.
Mateusz wprowadza w temat Server Side Rendering (SSR).
Wojtek i Mateusz dyskutują o SSR, jego przyszłości i zastosowaniach.
Wojtek i Mateusz poruszają temat porównania SSR, SPA i SSG.
Rozmowa o zastosowaniach technologii w zależności od projektu.
Wojtek i Mateusz dyskutują o wyborze technologii dla projektu MVP.
Rozmowa o porównaniu Nexta i Gatsby'ego.
Wojtek i Mateusz poruszają temat innych technologii takich jak Svelte i Remix.
Rozmowa o monopolie technologicznym i wpływach na wybor technologii.
Rozmowa o innych technologiach takich jak Vue i Angular.
Rozmowa skupiła się na porównaniu technologii front-endowych, takich jak SSR, SSG, SPA i MPA, pod kątem wydajności, SEO i developer experience.
Diskussja na temat przyszłości WordPressa jako platformy do tworzenia stron internetowych, porównanie z innymi technologiami i propozycje alternatyw.
Rozdziały i streszczenia generowane automatycznie. Pełna transkrypcja nie jest publikowana — wyszukaj frazę, aby zobaczyć dopasowane fragmenty.
Kliknij, aby znaleźć fragmenty, w których pada.
1.01 SSR, SSG, SPA czy MPA?
W pierwszym odcinku podcastu PiwnicaIT rozmawiamy o różnych podejściach do tworzenia aplikacji webowych. Poruszamy tematy związane z SPA, SSG, SSR czy MPA w ujęciu webdevelopmentu. Omawiamy nasze doświadczenia w pracy z różnymi bibliotekami i frameworkami dostępnymi na rynku.
Materiały dodatkowe:
Qwik Svelte How to pick Web Framework in 2023 NextJS Gatsby React 10 Rendering Patterns for Web AppsRozmawiają:
Wojciech Skorupa [linkedin] Mateusz Jabłoński [www] [linkedin]