Komentáře k článku
Jak jsme přestavěli javascriptovou aplikaci, aby jí i roboti rozuměli

Popíšeme vám, jak jsme náš projekt původně postavený na Angularu upravili, aby byl snadno dostupný i pro roboty.
Popíšeme vám, jak jsme náš projekt původně postavený na Angularu upravili, aby byl snadno dostupný i pro roboty.
Cil?
Jaký robot byl konkrétně cílem? Googlebot nemá s aplikacemi problém proto JAM stack tak stoupá v oblibě. Teď už aplikaci budete těžko servovat z cdn. Otázka je jestli by se to vůbec vyplatilo v lokálním měřítku.
Re: Cil?
Kromě robota od Google bylo potřeba podporovat i robota od Seznamu. Toho času pro aplikaci CDN používáme, týká se to statických souborů, dynamické cesty pro SSR skrz CDN pouze protíkají. Kromě případu pro roboty slouží SSR i pro rychlejší vizuální odevzu. U čistě statického HTML je ze začátku vidět povětšinou prázdná stránka, případně nějaký „app shel“.
Re: Cil?
Pre web typu trziste by bol JAM stack nezmysel, preto je irelevantné, že s inými typmi webov funguje.
Typický příklad
Typický příklad špatně zvolené technologie na začátku projektu a následné řešení z toho plynoucích problémů způsobem „škrábání se levou rukou v pravém uchu“. Jinak řečeno: 1.chyba byla ve výběru technologie pro veřejný komerční projekt, která má potíže s vyhledávacími roboty (javascript v prohlížeči). 2.chyba je zásadní předělání celého projektu, ale přitom ponechání původní problémové technologie, která je pouze znásilněna k účelu, ke kterému nebyla původně určena (javascript na serveru), takže se domnívám, že nové problémy na sebe nenechají dlouho čekat (výkon, zdroje, poruchovost).
Re: Typický příklad
ad 1) U prvotního vývoje aplikace (prototypu) nebylo SEO požadováno, protože se ani nevědělo, jestli bude služba jako taková fungovat a dožije se druhého dne (trochu se to rezebíralo i tady).
ad 2) Subjektivně mi nepřijde jako problémové použít JavaScript na serveru (Node.js), jeho jednovláknové a neblokující zpracování má oproti vícevláknovým aplikacím výhody, ale záleží samozřejmě na použítí.
Re: Typický příklad
Nehnevaj sa Gazda, ale nevieš o čom hovoríš. V dnešnej dobe môže použitie JS na serveri považovať za znásilnenie len úplný ignorant. A aj v bode 1. si mimo, crawlers nemajú problém s JS všeobecne, len s niektorými spôsobmi jeho použitia.
Pekny clanek,
mohli byste se vice rozeptat proc jste zrovna zvolili Ember a na zaklade ceho jste se rozhodovali?
Proc ne treba: Angular 6, VueJs nebo React vse SSR podporuje.
Diku
Re:
Na přepisu aplikace s podporou SSR jsme začali dělat v létě 2016. Tou dobou byl samotný Angular 2 IIRC v beta fázi. Pro vybudování komplexní aplikace nad Reactem je podle nás nutné mít někoho zkušenějšího, v našem týmu byla ale znalost téměř nulová. Ember jsme jak znali, tak mohli použít i SSR.
Re:
Toto je jediná zmysluplná otázka. Premýšľali ste nad tým ako tú apku urobiť SEO friendly bez toho aby ste sa škriabali okolo hlavy, preto ste vypustili riešenie 1. s PhantomJS a vyriešili ste to tak, že … sa škriabete okolo hlavy s EmberJS? Jop, to má logiku… A ešte sa tu s tým aj pochválite, hoci to silne zaváňa nekompetentnosťou? Jediným zmysluplným riešením, keď už je postavená nad Angularom, bolo ostať nad Angularom, akurát ju zmodernizovať do latest verzie a urobiť ju SSR s Angular Universal. Mrzí ma to, ale váš článok je odstrašujúci príklad, nie inšpirácia…
Re:
Z čeho usuzujete, že se škrábeme okolo hlavy s Ember.js?
V našem případě byl rozdíl mezi Angular 1 řešením a nastupujícím Angular 2+ takový, že by se jednalo o přepis tak jako tak, a tím pádem jsme stáli před přepisem do čehokoliv.
Re:
Uz chapu zvolenou technologii pro prepis vzhledem k terminu realizace prepisu app je pravda ze Angular 2 a SSR bylo zatim v nedohlednu, takze zvolili pro prepis vhodnou technologii z pohledu moznosti SSR vcetne znalosti vyvojaru. Predpokladam ze nyni by rozhodovani nemeli lehke vzhledem k dostupnosti VueJS, Angular 6, atd. ktere podporuji SSR.