Některé nevýhody dynamických jazyků lze do jisté míry značně eliminovat striktním dodržováním jistých konvencí. Jaké konvence si ale vybrat? Přímo se nabízí doporučení PEP8. Ale kdo si má ta pravidla pamatovat? Naštěstí existují nástroje, které nám s tím pomohou. A je jich docela dost: pylint, rope, pydoc, pyflakes, pep8, a další. Jestli stejně jako já nepoužíváte IDE, ale obyčejný textový editor, tak máte štěstí, protože si tam můžete nakonfigurovat to, co budete potřebovat.
Nedávno jsem narazil na zajímavý projekt textql, který umožňuje spouštět SQL dotazy nad csv souborem. Samozřejmě mi, stejně jako vám, hned došlo, jak to dělá. Tak se na dvě minutky zamyslete… Taky Vám to vyšlo tak, že načtení csv souboru je banální, a pak se to prostě napere do sqlite databáze, a je hotovo?
Umím shodit svůj počítač s Windows 7. Heč! Od té doby co mám Win7 se mi zdá, že jsou stabilní. Vlastně ani XP mi nijak zvlášť nepadaly, ale přece jen tam nějaká ta BSOD byla. Win7 mi začaly padat až tak před pár týdny, a dnes jsem konečně vypozoroval kdy. Když mám počítač v dockině, mám otevřený sériový port a chci undocknout, tak mi to řekně, že nemůžu, kvůli tomu otevřenému sériovému portu. Tak tu aplikaci zavřu, dám znovu undock, a jsme tam.
Píšu aplikaci, která přečte HID kartu (sériová čtečka), potom změří antistatiku (měřák připojený přes sériový port), výsledek zapíše na server k majiteli oné HID karty, a pak ještě případně povolí nebo zakáže nějaké činnosti, podle toho, jestli ten člověk prošel antistatikou. Těšil jsem se, že to bude všechno ve webovém browseru, protože ač mám javascript nerad, tak kombinaci html+js se nedá upřít, že jednoduchá uživatelská rozhraní se v ní dělají dobře…
Podívejte se na všechny díly seriálu nebo na zdrojáky příkladu. Všiml jsem si, že jsem si rozepsal díl 5, ale nikdy jsem ho nedopsal ani nepublikoval, takže tam máme díru. Měl být o lokalizaci. Třeba ho někdy napíšu, ale bude o něčem jiném. Je to taková zajímavá věc. Když máme desktopovou aplikaci, lokalizovanou, tak někdy na začátku se nějak vybere jazyk, zaregistruje se funkce _(…), a je to. Naproti tomu, webová aplikace, která má navíc být vícejazyčná to má složitější…
Podívejte se na všechny díly seriálu nebo na zdrojáky příkladu. S lokalizací byl problém ve formencode, a stejný, jenom trochu větší problém je i ve formalchemy. Větší je proto, že formalchemy se používá i ke generování formulářů, zatímco formencode jen k validaci…
Tento článek píšu částečně proto, že jsem se sám chtěl důkladněji podívat na to, co se děje při cookie authentikaci, a částečně pod vlivem prezentace Authentication Is Hard, Let's Ride Bikes, kterou vám tímto doporučuji, ač je o něčem jiném. Co se tedy děje. Při přihlášení pošle browser nějaké to jméno a heslo, server jej ověří, řekne browseru: V dalších požadavcích mi posílej toto cookie. Při odhlášení server řekne browseru: Zruš cookie. Teď si napíšeme malou aplikaci, která tohle dělá…
Podívejte se na všechny díly seriálu nebo na zdrojáky příkladu. Zase se podíváme na traversal. Zkusíme si do našeho schématu URL zamontovat pager a filtr. Všímám si, že se trošku vzdaluju původnímu tématu – formalchemy. Dnes se ho aspoň trochu dotkneme, právě v tom filtrování. step10 Nejprve si vymyslíme schéma url. Minule jsme měli root, pod ním jméno modelu, a pak už ten konkrétní záznam, dosažený přes primární klíč:
Podívejte se na všechny díly seriálu nebo na zdrojáky příkladu. Minule jsem sliboval to _ na lokalizaci. Ale lokalizace se ve FormAlchemy ukázala trošku složitější, než se na první pohled zdálo, proto se dnes budu věnovat něčemu jinému. Ale zajímavějšímu. step09 Ve všech pythonových webových frameworcích, se kterými jsem se setkal, se na to, abychom se z URL dostali kód, který něco udělá, používal koncept URL dispatch/routing…
Asi už to víte. V době, kdy se to stalo, jsem někde četl zajímavý komentář, který mi vyzněl tak, že dnes už jenom idiot používá RSS, a že to zajímavé se děje na twitteru, se kterým je ovšem potřeba umět pracovat. Tak jsem se i já, člověk dost nespolečenský zaregistroval na twitter, a začal něco followovat nebo jak se to řekne česky. Ovšem, pořád je tu pár zdrojů, které bych rád aspoň trochu sledoval, na twitteru nejsou, ale mají rss.