Vyjádření k technickému řešení webu v4summit2019.cz

V posledních dnech jsme mohli v některých médiích zahlédnout informaci o webu v4summit2019.cz, který byl v rámci státní zakázky vytvořen k příležitosti summitu prezidentů zemí V4. Tento web je vytvořen s pomocí redakčního systému WordPress, a tak se rozvířilo mnoho diskuzí, zda je cena přes 200 000 Kč za takový web adekvátní. Protože skupina kolem webu NášWP se dlouhodobě snaží o rozvoj systému WordPress v Česku, jeho překladům a pořádání konferencí WordCamp Praha, cítíme nutnost s k nastalé situaci také vyjádřit.

Samotný redakční systém je open-source a každý ho může svobodně a bezplatně využívat. Díky své uživatelské přívětivosti a ohromné rozšiřitelnosti je natolik oblíbený, že pohání více než třetinu webových stránek na světě. Můžeme ho tak nalézt jak na těch nejjednodušších stránkách, přes různé e-shopy, až po například oficiální stránky Bílého Domu. Postavit jednoduchý web na WordPress lze prakticky bez nutnosti jakéhokoliv programování, složitější weby však už vyžadují kvalifikovanou vývojářskou práci a spolupracují na nich typicky celé týmy lidí – úplně stejně, jako na jiných webových projektech, nezávisle na systému, ve kterém jsou tvořeny. Cena profesionálních webů tak může být prakticky stejná jako u systémů tvořených kompletně na míru. Proč mnoho zadavatelů WordPress preferuje? Hlavním důvodem je to, že použití podobného nástroje částečně odstraňuje závislost na dodavateli – vendor lock-in. Pokud původní autor již na projektu dále nespolupracuje, není příliš velký problém najít někoho, kdo by v systému byl schopen dělat základní úpravy, a i v případě, že je web z velké části postaven na míru, má jeho majitel stále velkou kontrolu nad obsahem. Ten je možné bez větších problémů použít na jiné šabloně, nebo úplně exportovat a použít na jiném WordPress webu. Dalším důvodem je uživatelská přívětivost, díky které se obsluha velmi rychle naučí provádět potřebné úkony a je vcelku velká šance, že s tímto redakčním systémem již v minulosti pracovala.

Už tedy víme, že částka 200 000 Kč může být za WordPress web zcela adekvátní. Pojďme se nyní podívat, zda web v4summit2019.cz splňuje standardy profesionálních WordPress webů.

Zadání

Nejprve je nutné podívat se na zadání.

Jeho rozborem zjistíme, že se v základu neliší od procesu standardních výběrových řízení, kdy objednatel požaduje 3 různé návrhy designu, což od zhotovitele často vyžaduje mnoho zbytečné práce. Samotné ladění, korekce a plnění webu obsahem ve 4 jazykových mutacích vyžaduje na straně dodavatele zvládnuté procesy a mnoho komunikace s objednatelem.

Na to, jak velkou část ceny projektu běžně tvoří projektové řízení obdobných webů, jsme se zeptali Tomáše Kocifaje, projektového manažera v agentuře Brilo, která se na tvorbu WordPress webů specializuje. Dle jeho zkušeností se jedná o 15-20 % ceny celého projektu.

Zajímavější věci však nalezneme ve funkčních požadavcích.

  • Flexibilní CMS
    • neomezené úrovně a vnoření
    • 4 jazykové mutace – podklady dodá Objednatel
    • možnost vkládat objekty v rámci sekcí dle potřeby (fotogalerie, video, FB, Twitter atp.)
    • formuláře – odpověď mailem
  • Responsive design
  • Google Analytics
  • optimalizace pro běžné prohlížeče (Chrome, Safari, Edge, IE atp. bez nutnosti plugins atp.)
  • více oddělených serverů dedikovaných pro tuto prezentaci s příslušným zabezpečením proti neoprávněné změně obsahu, XSS, DDoS atp.
  • kompletně redundantní síťové technologie (firewall, routery, switche)
  • nezávislé linky s dostatečnou kapacitou (min 10Gbit) napojené na páteřní síť
  • vlastní technologie (nejedná se o pronájem HW 3. strany)
  • administrace přístupná pouze z definované IP adresy
  • webová prezentace RO – web bude zabezpečen proti neoprávněné změně obsahu
  • průběžné odstraňování zranitelností během celé doby provozu webu
  • dostupnost 99,9%
  • mailserver (počet mailboxů ~ 50)
  • zálohování (12x denně, historie záloh 1 rok)
  • HTTPS od důvěryhodné certifikační autority
  • zóna pro uložení PR materiálů a jejich přímé stažení
  • kapacita pro data 1TB
  • schopnost obsloužit návštěvnost ~ 100 tis. návštěvníků / den
  • provoz 1 rok

Je vidět, že zadání se snaží tlačit na vysokou dostupnost, bezpečnost a možnost obsloužit vysoké návštěvnosti. Požadovaná dostupnost 99,9 % tomu však příliš neodpovídá – umožňuje každý týden 10 minut výpadek. Požadavky na opravdu vysokou dostupnost bývají minimálně o řád přísnější.

Není příliš patrné, komu vlastně web má sloužit, nemyslíme si, že jeho obsah je tvořen pro desítky tisíc návštěvníků za den. Vyžadované technologie i odhady návštěvnosti nám přijdou velmi nadhodnocené. Zálohování 12x denně považujeme také spíše za neužitečné, nezdá se, že by se na webu obsah měnil tak často, aby byly takové nároky na zálohy oprávněné. Změny v kódu bývají verzovány v GITu nebo jiném verzovacím nástroji a pro změny obsahu má WordPress systém revizí. Častější zálohování se však může například hodit pro nahraný obsah. Nicméně při požadavku podobné kadence zálohování se většinou přistupuje k zálohování při každé změně na webu. Celkově považujeme požadavky na infrastrukturu webu vzhledem k jeho účelu přemrštěné. Podpora tak bude samozřejmě (zbytečně) tvořit značnou část ceny.

Jak si web s požadavky poradil?

Pro splnění požadavků na vysokou návštěvnost a bezpečnost bylo použito (alespoň to tak vypadá) velmi jednoduché a efektivní řešení. Samotný WordPress pravděpodobně běží pouze na nějakém interním serveru a samotné stránky jsou exportovány v jejich statické podobě. Web proto nemá problémy s odezvou, je odolnější vůči DDoS útokům a je minimalizován prostor pro vznik bezpečnostních chyb.

Technické řešení však už tak pozitivně hodnoceno být nemůže. Webu například ještě v 21:00 3.10. úplně chyběla podpora HTTPS, což je zaprvé velká ostuda a zadruhé je tím nesplněno zadání. Server na HTTPS portu 443 vůbec nenaslouchal. Z hlaviček serveru je také patrné, že je využit HTTP server Apache verze 2.4.29 – tedy 2 roky neaktualizovaný.

Bohužel i po nasazení certifikátu Let’s Encrypt je na webu problém se smíšeným obsahem a některé zdroje (fonty) jsou načítány nezabezpečeným kanálem. Protokol HTTPS není také úplně správně nastaven.

Dnešním standardem je také používání bezpečnostních HTTP hlaviček pro další vrstvu ochrany a snížení dopadů případných bezpečnostních problémů. Web bohužel nepoužívá ani jednu.

Zanedbané produkční nastavení můžeme také vidět v nepoužívání HTTP hlaviček expirace. Tyto hlavičky zamezují zbytečnému stahování statických zdrojů při opakovaných návštěvách.

Kvůli použité technologii jsou zobrazovány výchozí chybové stránky 404 serveru místo toho, aby byly zpracovány systémem WordPress. Případný návštěvník, který se na web dostal například z neúplně zkopírovaného odkazu, skončí na nepoužitelné stránce bez vazby na hlavní web.

Z pohledu frontendu zde bohužel nalezneme i další neduhy typické pro weby, kde neproběhla kvalitní výstupní kontrola. Je zde velký prostor pro optimalizaci obrázků (přestože jich na webu není mnoho) a použití 29 řezů tří různých Google Fontů považujeme za nadbytečné. Při podrobnějším zkoumání si jistě všimnete různých drobných detailů, které kazí celkový dojem z webu a na prezentačním webu s tímto rozpočtem bychom je najít neměli. Za prozkoumání této oblasti děkujeme frontendistovi Adamovi Laitovi.

U jazykových mutací nás mimo nevhodně připraveného menu překvapila i absence slovenského překladu webu. Mezi požadavky nalezneme také kontaktní formuláře. Žádné formuláře však výsledném webu nenalezneme (kromě skrytého formuláře pro vyhledávání, který na statickém webu stejně nefunguje).

Jako základ byla použita oblíbená komerční šablona Divi využívaná především pro svůj vizuální editor layoutu. V profesionální sféře se většinou používají vlastní šablony připravené na míru danému projektu. Najdou se však i tvůrci, kteří dávají přednost nějaké podobné komerční šabloně a mají ji dokonale ovládnutou. Pro tyto šablony pak vyvíjí klientům vlastní bloky layoutu, které pak klient může jednoduše použít v obsahu. Tento přístup se může ukázat také výhodný v případech, kdy je nutné velmi rychle reagovat na stále se měnící požadavky klienta. Použití hotové komerční šablony pro podobný typ projektů nemusí být na závadu, pokud ji vývojář opravdu dobře ovládá.

Dle zadání jsou na webu nasazeny pro sledování návštěvníků Google Analytics, na webu o tom však není žádné upozornění. očekávali bychom, že zrovna státní web bude v tomto ohledu vzorem pro ostatní.

Není znám průběh zakázky, kdy na výslednou cenu a kvalitu mohly mít vliv krátké termíny nebo složitá komunikace se zadavatelem, kvalita výsledného webu dle našeho názoru neodpovídá požadavkům na profesionální WordPress web a byla evidentně velmi podceněna výstupní kontrola.

Podobného názoru je i Tomáš Kocifaj z Brilo:

Cena cca 200 000 Kč by mohla být za takový web adekvátní, kdyby nepostrádala mnoho kroků, které měly předcházet návrhu a také jeho realizaci, ať se jedná o uživatelský výzkum, testování, návrh struktury, design jednotlivých stránek, důkladné odlazení technický částí a mnoho dalšího. Pak na takovém webu za uvedenou částku nevidím nic špatného.

Hlavní problém není ani tak v dodavateli jako v zadavateli projektu. Výběrové řízení postrádá přesnější specifikace, vše je velmi obecné, bez jasného zadání technických částí a účelu vzniku. Pár bodů dává velký prostor pro výsledek, jako je tento.

Komunita kolem webu NášWP se snaží zvyšovat kvalitu WordPress webů mimo jiné pořádáním odborných konferencí. Pokud vás redakční systém WordPress zajímá, nebo weby přímo tvoříte, nenechte si ujít jednu z největších evropských komunitních WordPress konferencí WordCamp Praha 2020, která se uskuteční 29.2.2020. V blízké době proběhnou i další menší sesterské akce WordCamp Bratislava (11.10.) a WordCamp Brno (26.10.).

Článek pro vás připravil: smitka

Síťař, vývojář a bezpečnostní výzkumník, zakladatel firmy Lynt, organizátor WordCamp Praha.
Projekty: PPC Robot, Marketing Miner,

1 názor na “Vyjádření k technickému řešení webu v4summit2019.cz”

  1. Dobrý den,

    v převážné většině souhlasím s průběhem testování, posouzeními i závěry odborníků.
    Výstup v podobě webové prezentace postavené na redakčním systému WordPress v podstatě odpovídá zadání zadavatele – v některých bodech je zbytečně přísný, v některých je příliš obecný (příklad: požaduji automobil černé barvy, s rádiem značky X, s platnou STK a do 200000 Kč – to může splnit jak automobil z roku 2005 i z roku 2017).

    Webové stránky za 200000 Kč opravdu mohou být ve speciálních případech v pořádku. Za tuto částku bych očekával nadstandard a větší profesionalitu dodavatele ve smyslu „doporučuji to a to, udělám něco navíc a podobně“ a nezáleží, jestli na to zadavatel nepamatoval nebo nebyl odborník (což se stává málo kdy -> dodavatel by měl být odborník, stejně jako instalatér nebo doktor). Pochopitelně nemohu znát to, co se dělo mezi zadavatelem a dodavatelem.

    Jak bylo již napsáno – WordPress je zdarma a je jednoduchý. Na razantnější změny nebo individuální přizpůsobení i WordPress potřebuje někoho, kdo mu rozumí i zevnitř (nebo se ho za desítky hodin naučit stylem pokus/omyl).

    Pohybuji se v internetovém marketingu a webové stránky (i na WordPressu) jsem tvořil spíše v minulosti – pro klienty i pro své internetové projekty generující zisk. Myslím si, že k tomuto tématu jsem profesně způsobilý.

    Karel Hanousek

Diskuze

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *