Django
Po mnoha týdnech hraní si, zkoumání a učení se jsem teď (snad) finálně překlopil tuhle stránku na nový kód. Zatím nefungují například komentáře, ale pracuje se na tom. Popis jedné vychytávky a (relativně technický) popis přechodu z WordPressu na Django následují.
Cca. rok jsem používal content management systém Wordpress, na který jsem přešel z vlastního zbastleného kousku. Nicméně bastlení mně nepřešlo, naopak, a tak jsem vyměnil platformu - místo PHP mám Python - a s tím i systém. Wordpress nahradilo Django.
Molocha, kterého někdo předpřipravil, a u kterého jsem kvůli jakýmkoliv hlubším změnám musel investovat značné množství studia a navigovat kolem spousty daných architektonických detailů, jsem nahradil strukturou, která na jednu stranu není na tak "vysoké" úrovni, na druhou stranu poskytuje podstatně efektivnější paletu prvků, se kterými se dá program stavět a optimalizovat přesně tak a přesně tam, kde to je zrovna potřeba.
Díky tomu se mi například vcelku snadno podařilo implementovat filtrování příspěvků podle kategorií. Že to umí každý systém? Hm, kolika CMS můžete říct, že chcete třeba všechny kategorie s výjimkou videa? Případně chcete povídky a reportáže, ale ne básně... Tady mi to teď funguje, a na dalším webu, který v dohledné době chystám, to bude fungovat taky (a tam se to taky aspoň trochu využije). Stačí upravit adresu - http://www.kerray.cz/cat/povidky/hudba/-video/cs+en/ a dostanete například příspěvky označené povídky a hudba, ale ne ty, které budou mít označení video.
Funguje to i pro RSS feedy. Ty hlavní na FeedBurneru (odkazy vlevo) zůstávají, ale je možné dotazovat se i na jiné feedy podle přání - http://www.kerray.cz/feeds/cat/povidky/hudba/-video/cs/.
Architektura dvoujazyčného blogu je o něco méně triviální záležitost než blog jednoduchý, zvlášť když chceme umět jazyky v seznamech míchat, ale s Djangem to šlo jako na drátkách - opravdu fungující rapid development. Z pomůcek na stavbu webových aplikací jsem u Pythonu ještě zvažoval Zope, ale pohořel jsem na instalování, a beztak se zdá, že jednak jsem k Zope nenašel tak kvalitní dokumentaci, jednak má filosofii hozenou ještě dost jinak, a na podobné účely mi Django bohatě stačí.
Z 38 dotazů na databázi s WordPressem jsem se dostal na 12-23 s Djangem, a to jsem ještě ani nezačal optimalizovat - během hodiny budu na pěti, šesti dotazech...
Ještě to můžu srovnat s psaním v ASP.NET, což je můj denní chleba v práci, a musím říct, že obecně je mi přístup Djanga a Pythonu o mnoho příjemnější, ačkoliv i .NET má leccos do sebe (třeba IronPython). Ale prý už někdo Django pod IronPythonem rozběhnul...
Ještě jsem stránku dost pročistil od různých javascriptových pokusů, které tu byly v podstatě jen proto, že jsem si je někde potřeboval vyzkoušet, takže se teď nahrává podstatně rychleji. V brzké budoucnosti mně pak vedle přidávání dalších vychytávek čeká jedna krajně nepříjemná věc, a to optimalizace pro Internet Explorer, s jehož verzemi mladšími sedmičky si už dlouhodobě vůbec, ale vůbec nerozumíme (a ani moc rozumět nechceme).
Kdybyste narazili na něco, co nefunguje, nebo měli nějaký postřeh, připomínku nebo snad dotaz, tak mi prosím nechte komentář, nebo pošlete maila na kerray(at)kerray.cz
