KISS v praxi: polibek pro blog

Strategii KISS, tedy „udržovat při vývoji věci jednoduché a malé, jak to jen jde“, lze použít i v tak jednoduchých případech, jakým je osobní weblog. Nikde není psáno, že weblog rovná se nutně, vždy a nevyhnutelně WordPress (nebo podobný CMS), který je všechno jiné, jen ne „KISS“. Jak by tedy mohl vypadat „minimalistický weblog“?

Nedávno jsem se rozhodl publikovat některé své články, které si občas jen tak pro radost píšu. Ale nechtěl jsem použít WordPress ani jiný redakční systém, který je pro mé záměry jednoznačně overkill. Pro mne má strategie KISS jednoznačně své kouzlo.

„Vynalézání“ WordPressu

Jak vypadá blog, který se snaží být WordPressem?

Vnitřnosti

Určitě musí mít propracovanou databázi. Jen pro články to bude něco na tenhle způsob:

Kromě tabulek pro články, tagy, kategorie a propojení mezi nimi bude mít i tabulku pro uživatele (jméno, heslo, role atd.) a nesmí chybět tabulka s komentáři.

Složitost databáze se samozřejmě odrazí i v kódu – pro každou tabulku bude pravděpodobně vytvořený model, popřípadě obraz v ORM.

Administrace

V administraci se spravují články, přesouvají se mezi kategoriemi, přibírají tagy apod. Pro psaní článku bude k dispozici WYSIWYG s mnoha funkcemi, tagy se vybírají z roletky, případně se mohou přidat nové, stejně tak kategorie. Ke článku se dá nahrát obrázek, což znamená vytvoření nějaké správy multimédií…

Kromě správy článků se bude blogger starat i o uživatele a o komentáře, buď z administrace nebo přímo ve výpisu článků.

Fasáda

Takový „full-featured blog“ má propracovanou grafiku. Kde to jde, použije se AJAX. Textuchtivému čtenáři je nabídnuto nejen RSS článků, ale i RSS jednotlivých kategorií, RSS tagů, RSS komentářů u jednotlivých článků a RSS všech komentářů.

V záhlaví stránky jsou kategorie, nejlépe jako animované vysouvací menu (i se subkategoriemi) a vedle toho ještě odkaz na stránky „O mně“, „Kontakt“, „Archiv“.

V postranním panelu prší z tag cloudu, čtenáři je nabízeno deset posledních článků, patnáct nejnovějších komentářů, přihlašovací a vyhledávací formulář, seznam partnerských blogů, Twitter feed, Facebook „like“, počítadlo.

V patičce se zopakuje obsah menu a přidají se odkazy na další weby, copyrightová informace a informace o použitých technologiích. Kdo je obzvlášť nerd, doplní i informaci „Stránka byla vygenerována za 0.05254287541­5 sekundy“.

Na hlavní stránce blogu se zobrazuje deset upoutávek na články – titulek, perexy, datum publikace, autor, počet komentářů, název kategorie a tagy.

Zkrátka takový plnohodnotný blog. Když použiju citát z Manifestu miniaturního PHP:

TOHLE.
KURVA.
ANI.
OMYLEM.

Já si svůj blog udělám jinak, lépe. Budu se držet konceptů KISS a Mobile First.

Články

Potřebuji kategorie? Potřebuji tagy? Potřebuji u článku informace o autorovi? Potřebuji obrázek? Ne. Na mém blogu je důležitý obsah.

Potřebuji perex? K čemu? Na úvodní stránce mohu klidně zobrazit článek celý.

Databáze mého blogu vypadá takto:

Jedinou pro mne důležitou funkcí je vydávání článku v naplánovaný čas. Proto kolonka datetime.

Čtete správně, napsal jsem „databáze“. Tohle je opravdu celá databáze – jiných tabulek netřeba.

Komentáře

Komentáře jsou, když dovolíte, mor. Mívají mizivou hodnotu, zato se musí naprogramovat, zabírají místo v databázi, a hlavně se o ně někdo musí starat. Pokud se chce někdo ke článku vyjádřit, proč nepoužije Twitter? Nebo Facebook, Google+, svůj blog… Chce-li mi něco napsat, od toho je e-mail. A pokud nabízí V*1*A*G*R*U, tak má prostě smůlu.

Uživatelé

Databáze postrádá jakoukoli tabulku uživatelů. Mohu si to dovolit – jsem jediným autorem, není problém heslo ručně zahashovat a dát ho jako parametr do Dependecy containeru.

Administrace

Tím, že nemám komentáře, uživatele, tagy, kategorie ani jinou podobnou veteš, dělám v administraci jen to důležité – píšu a upravuju články.

Rozhodl jsem se udělat si věci přímo pro sebe. WYSIWYGy pro mne nefungují. Texy! je pro mé potřeby overkill, samotný text je na druhou stranu málo. Výsledkem je mix podle mých potřeb: Málo časté formátovací věci si napíšu jako HTML, častější (nadpis, tučný text a kurzívu) pomocí značek, které stejně používám. Tučný text je text ve hvězdičkách, kurzíva je ohraničena podtržítky, nadpis má před sebou mřížku a je na řádku sám. Přidal k tomu LaTeXové psaní pomlček – jeden spojovník (-) je spojovník. Dva jsou krátká pomlčka, tři dlouhá pomlčka. Pokud budu potřebovat v budoucnu něco přidat, je to velmi jednoduché – jeden regulární výraz.

Jak to vypadá?

Můj blog je určen ke čtení, ne k onanování nad úžasným designem nebo dokonalou technologií pod kapotou. Přiznám se – na začátku jsem vůbec neměl představu o vzhledu. Vzpomněl jsem však si na knížku Mobile First (Luke Wroblewski, A Book Apart) a řídil se jí. Do kódu jsem dal hlavičku (jednoduchý obrázek-odkaz) a nějaký článek – nadpis-odkaz, text a datum. Nastavil jsem hezké vzdušné písmo, nějaký padding. Šířka 100%, maximální šířka 600px, horizontálně vycentrovat box s textem. A světe div se – nevypadá to špatně. Na počítači i na telefonu.

A co menu? Patička?

Upřímně – k čemu? Jen to zabírá místo. Žádný archiv nepotřebuji, protože jednou za čas napíšu shrnutí se seznamem článků za uplynulé období. Kontaktní formulář je pro mne zbytečný. Kdo mi chce napsat, najde můj e-mail v odkazu v patičce každého článku. Nikde nenajdete odkaz na RSS. Je správně označeno v HTML kódu, a to stačí.

Závěr

Článek je možná trochu radikální, pojďme to zmírnit. Rozhodně netvrdím, že je tento přístup nejlepší pro každého, vždy a za všech okolností. Je to jedna z mnoha možností, jak nahlížet na obsahové weby. Ale věřím, že má svoje opodstatnění a že může být vhodnou inspirací.

Někdy se hodí použít „plný“ WordPress – instalace a nastavení je rychlé a za půl hodiny už vydáváte první články. Na druhou stranu jsou situace (a nemusí jít jen o osobní blog, ale třeba o firemní stránku), kdy opravdu vyhoví jednoduše a čistě napsaná miniaplikace (třebas „naklikaná“ v Djangu). Paradoxně je mnohdy těžší udržet aplikaci malou a jednoduchou, než podlehnout vábení a nacpat do ní řadu věcí, které vlastně nepotřebuju, ale uměl bych je napsat, a tak je tam napíšu…

Blog, o němž jsem mluvil, se jmenuje Zápissník Anαβ. Bude-li zájem, rád napíšu další článek, kde ukážu jednotlivé části kódu a vysvětlím, co všechno jsem seškrtal, smazal, zrušil a obětoval.

Matěj začal programovat ve třinácti v PHP, pak v JavaScriptu a Lispu. Nakonec si koupil Androida, a tak programuje hlavně pro něj.

Komentáře: 38

Přehled komentářů

Hrach cathegory
blizz Re: KISS v praxi: polibek pro blog
zemistr Nabídka přijata
NN Načo to robiť dynamické a s databázou?
Honza Re: Načo to robiť dynamické a s databázou?
Ondra Re: Načo to robiť dynamické a s databázou?
Datastart Re: Načo to robiť dynamické a s databázou?
jos Re: Načo to robiť dynamické a s databázou?
František Kučera Re: Načo to robiť dynamické a s databázou?
gilhad Re: Načo to robiť dynamické a s databázou?
František Kučera Re: Načo to robiť dynamické a s databázou?
ondra melkes Re: Načo to robiť dynamické a s databázou?
gilhad Re: Načo to robiť dynamické a s databázou?
wincle Re: KISS v praxi: polibek pro blog
Tomas Rollo Calepin?
Jiří Landsman Když už tak už
. Paladin too extreme
František Kučera Z obou to horší
František Kučera Re: Z obou to horší
Čelo Re: Z obou to horší
František Kučera Re: Z obou to horší
Jiří Pavlíček bohužel někdy frameworky a redakční systémy překračuji možnosti HW
Audiod Re: bohužel někdy frameworky a redakční systémy překračuji možnosti HW
Pepca Re: KISS v praxi: polibek pro blog
Honza Komentáře "mor"?
Matěj Konečný Re: KISS v praxi: polibek pro blog
František Kučera Re: KISS v praxi: polibek pro blog
Matěj Konečný Re: KISS v praxi: polibek pro blog
Radim Kalma QuickCMS Lite
S. sorry, nie
Čelo Re: sorry, nie
Matěj Konečný Re: sorry, nie
František Kučera Re: sorry, nie
Matěj Konečný Re: sorry, nie
Kareves Souhlas
Matěj Konečný Re: Souhlas
Kareves Re: Souhlas
učč Re: Souhlas
Zdroj: https://www.zdrojak.cz/?p=3602