CAN’T STOP THE FEELING!

Sunshine in my pocket… Just imagine…

NodeJS: konvert CSV na JSON

Potřeboval jsem do MongoDB naimportovat hafo dat z Excelu. Nejjednodušší bylo XLS soubor uložit do CSV a pak jednotlivé řádky zkonvertovat na JSON objekty.
Asi takhle:

Nutno ještě dodat, že k tomuto existuje spousta NPM balíčku a když jsem s s převodem začínal, jasně že jsem šáhnul po nějakém z nich. Ale protože jsem neuspěl s implementací hned napoprvé, tak jsem si to napsal sám…
Načtení 684 řádku do pole JSON objektů na mém Macovi trvalo 0.144s….

Atom, Jade a HTML

Čim déle používám Atom, tím víc se mi líbí… Dneska jsem narazil na skvělý balíček source-preview-pug. Protože na backendu používm Jade, dnes vlastně už Pug (přejmenovaný Jade kvůli nějakým licenčním sporům váznoucím nad jménem) hodí se vidět, jak kód ze šablony bude vypadat v reálném HTML kódu. A přesně tohle balíček dělá: živí náhled jade (pardon, pug) souboru přímo v Atomu:

Snímek obrazovky 2016-05-25 v 20.15.02

V otevřeném okně s pug šablonou stačí pomocí klávesové zkratky CMD+Shift+P a zadat sopre a otevře se vám nové okno s HTML kódem pug šablony. Pokud includujete šablonu s více souborů, žádný problem: výsledný HTML se korektně slinkuje ze všeho co použíjete v pug souboru.

Default gateway v OSX

pro Fedoru mírná změna:

ExpressJS a globální proměnné

ExpressJS je webový framework pro NodeJS.
Ve svých aplikací leckde potřebuji přistupovat v místě obsluhy requestu k nějakým globálním proměnným, které nelze klasicky načítat z modulu, protože i tyto moduly se dle místa deploye mění, takže nejde udělat jednoduché var cfg = require(‚./cfg.js‘);.

Řešení jsem našel v nastavení globální proměnné v rámci ExpressJS aplikace:

Globální proměnné jdou samozřejmě řešit i jinak, ale funkce set a get mi v rámci ExpressJS přišly jako ideální. Nemusíte nic řešit, vše máte v proměnné request, která se předává každé funkci, ktará obsluhuje nějakou routu.

MongoChef GUI pro MongoDB

MongoChef je skvělý nástroj pro práci s MongoDB. Jedná se o aplikaci pro Windows, MacOS i Linux, která vám pomůže jednodušeji ovládat vaše MongoDB databáze.
Až do teď jsem prováděl všechny úkony jen skrze mongo shell. S MongoChef je práce mnohem jednodušší a rychlejší, vůbec v případě, že hledáte v datech, kde je jejich vizualizace opravdu přínosem.
MongoChef má podporu pro MongoDB replica sety a také pro agragace. Super.

Pro nekommerční účely je zdarma. Verze Professional pak stojí 99 USD a verze Enterprise stojí 349 USD. Rozdílem v nekomerční verzi a Professional je jen v míře podpory. Nekomerční verze nezvládá Kerberos, LDAP a MongoDB Enterprise. To vše zvládá až verze Enterprise.

Super na MongoChef je podpora všech operačních systémů, pěkné grafické prostředí aplikace a opravdu přehledná vizulaizace dat.

Alternativní aplikací pro práci s MySQL je Sequel Pro

Google Captcha v NodeJS

newCaptchaAnchor

Dříve jsem své formuláže zabezpečoval vlastními silami a to ještě kombinovaně jak na frontendu (JavaScriptové ověření požadovaného formuláře), tak pak na backendu, kam jsem si nějak přes POST přenášel data.
Doba pokročila a tak jsem se rozhodl vyzkoušet něco modernějšího a neplácat se s tím sám. A protože nově vyvíjená aplikace poběží hlavně asi na mobilech, tak jsem sáhl po reCAPTCHA přímo od Googlu.

Jak na to?

Nejdřív si musíte vygenerovat API klíče pro tuto službu. Nic složitého. Stačí zadat název domény a název služby. Generátor klíčů najdete zde.

Pak si vytvoříte vlastní HTML formulář, který chcete zabezpečit Google Captchou:

Výsledek pak může vypadat takto nějak:
nejsem-robot_result
No a pak vám už jen zbývá ošetřit POST, kterým obsluhujete načítaný formulář.

Nejdřív se volá Googlovská služba, které se předává klíč k službe a odpoveď z formuláře. Služba vám na oplátku vráti info o tom, jestli formulář vyplnil člověk nebo ne.
Se získanou informací se dá pak dále pracovat, jedná se o boolean hodnotu. Já jí předávám dál do vykreslování nějaké odpovedi.

Průtokový ohřívač vody

ohrivac-vody

Objednávky přijímáme v našem eshopu: ESHOP-PLUS.CZ

Debugování NodeJS aplikací v Atomu

Pokud používáte pro vývoj NodeJS aplikací textový editor Atom, jako já, pak by se Vám mohl hodit balíček node-debugger, který umí přímo v prostředí Atomu spustit a debugovat JavaScriptový kód.

68747470733a2f2f7261772e67697468756275736572636f6e74656e742e636f6d2f6b6964646b61692f61746f6d2d6e6f64652d64656275676765722f6d61737465722f73637265656e73686f742e6a7067

node-debugger:start-resume F5
node-debugger:debug-active-file ctrl+F5
node-debugger:stop shift+F5
node-debugger:toggle-breakpoint F9
node-debugger:step-next F10
node-debugger:step-in F11
node-debugger:step-out shift+F11
node-debugger:attach

OSX: změna velikosti obrázku

Super video o tom jak na Macovi nastavit pomoci Automatorovi vlastní službu pro úpravu velikosti obrázku:

Super je samotný nástroj Automator. Jedná se o aplikaci přímo z OSX, díky ktéré můžete, mimo jiné, modifikovat funkce menu, které na vás vyskočí po kliknutí pravým tlačítkem na nějakém souboru. Dle typu souboru můžete definovat vlastní akce, které lze nad daným souborem spouštět. Tohle jsem neviděl v žádné verzi Windowsů od Microsoftu…

© 2016 pepa.holla.cz

Theme by Anders NorenUp ↑