Tak protože se stěhuji a člověk nikdy neví, jak moc dobře bude internet fungovat v novém místě, tak jsem raději zvolil jinou variantu než mít vše puštěné doma. Ano, je pravda, že pokud to má člověk doma a má dostatečně stabilní (a rychlý) internet a elektřinu, tak je to určitě dobrá volba, ale to já do budoucna rozhodně nevím. Tudíž jsem zvažoval, jak to udělat a nejlevnější řešení je nějaký Raspberry Pi housing. Koupil jsem tedy nejsilnější dostupné Raspberry Pi, tedy verzi 4B s 8GB ram. Dal jsem do toho nejrychlejší SD kartu, kterou jsem mohl sehnat. Pro jistotu jsem ještě koupil malou čtečku a do ní jsem dal druhou nejrychlejší SD kartu, kterou jsem sehnal (na tuto kartu budu dělat zálohy celého systému). Celé Raspberry jsem obalil do hliníkového chladiče, aby se nehřálo. Nainstaloval jsem tam Manjaro Linux a už to frčelo do serverovny. No a v tuto dobu už čtete blog z nového Raspberry a vypadá to, že to jede slušně, přestože mi přijde, že rozhodně maličko pomaleji než dřív - uvidíme, zda se to nedá vyladit. Případně hlašte problémy prosím.
Jinak taková zajímavost na konec. Protože RethinkDB, které používá tento blog, mi nešlo pod Arch Linuxem ani Manjarem přeložit pro architekturu ARM64, tak jsem byl nucen poprvé nasadit Docker. A není to nic složitého, docker je rozhodně zajímavá technologie, myslím, že bych mohl celý tento blog do budoucna provozovat z dockeru, protože je s ním opravdu snadná práce.
Chtěl bych udělat nějaký podrobnější popis toho, jak jsem všechno nakonfiguroval a tak dále, ale už začínám mít toho počítače dost. Takže třeba někdy příště, ale minimálně chci udělat git repozitář s konfiguráky, pak sem dám link.
A tady se můžete podívat, jak vypadá neofetch z nového "želízka" :-D.
Nevím jak to máte vy, ale já prostě zbožňuji spánek. Ačkoliv jsem velmi aktivní člověk (sport taky zbožňuju, byl jsem běhat nebo jsem cvičil prakticky všechny dny v tomto týdnu), tak spánek je prostě moje nejoblíbenější činnost. Někdo sice říká, že tím zabíjím život, ale já si to rozhodně nemyslím. Ve spánku zažívám ty nejkrásnější věci a nemám to tak, že by to pro mě byl čas, který bych si po probuzení neuvědomoval. Nepamatuji si sice skoro žádné sny, ale pamatuji si pocity, které jsem v těch snech měl a rozhodně kompletně vnímám ten čas, který jsem spánkem a sněním strávil a v nímám ten čas rozhodně pozitivně, kolikrát mnohem pozitivněji než "bdělý život".
Mám navíc asi trochu štěstí na panelák, ve kterém bydlím (ačkoliv už v něm bydlím jen částečně, už většinou spím jinde). Paneláky jsou prostě plné lidí, dětí, zvířat a prostě všeobecně zdrojů zvuku nebo spíše hluku (dle výkladu nebo názoru). Navíc bydlím ve městě, takže venku jezdí auta, autobusy, náklaďáky, štěkají tam psi, štěbetají ptáci, probíhají tam různé stavební či bourací práce, prostě všude okolo je nějaký "zvukový bordel". Ale pokud zavřu okna (plastová), tak já mám na spaní krásný klid. Spím doslova jak zabítý a každou minutu spánku si totálně užívám :). Probudím se tehdy, kdy moje tělo řekne, že spánku stačilo a nebo tehdy, kdy měchýř řekne, že jemu taky stačilo :-D.
Tenhle zápisek píšu ze dvou důvodů. Že můj dobrý kamarád bydlí v baráku blízko silnice (já tak blízko silnice zase nejsem, navíc jsem dost vysoko - 5NP a hluk z okolí mi tady tlumí krásné vzrostlé lípy), kde po páté hodně ranní začnou jezdit náklaďáky a do pozdních nočních hodin v jeho bytovém domě někdo hlučí. Kamarád je z toho docela nešťastný.
Já to tak nemám, večer celý dům i jeho okolí utichne a my tady všichni prostě parádně spinkáme :). Škoda, že z různých osobních důvodů tento byt opouštím (to je druhý důvod - chci si postesknout), bylo to tu krásné .... a klidné a já to tu zbožňoval. Ale to je život.
Protože jsem člověk, který na sobě rád pracuje, tak jsem se rozhodl, že se zúčastním týmového kurzu Pythonu. Do konce tohoto kurzu už zbývají jen 3 lekce / týdny a zatím zvládám krásně :). Nabyté znalosti využiju při zlepšování tohoto blogu i jinde.
Nicméně přihlásil jsem také proto, že sice umím programovat, respektive umím řešit problémy programováním, ale vlastně neumím programovat v týmu. Oběcně pracovat v týmu umím, protože moje zaměstnání, tedy projektant elektro, je hodně o práci v týmu. Ale programátorský tým není to stejné co projekční či projektantský tým. Rozdíly tam opravdu jsou, ale jdou špatně definovat, proto je zde vyloženě popisovat nebudu. Nicméně to, že to je rozdílné, ještě neznamená, že je to pro mě problematické.
Rychle jsem se do toho dostal a stejně jako při projektování, tak opět jsem se brzy dostal do vedoucí pozice týmu, o kterou vlastně nestojím :). Nicméně je to dáno tím, že já mám s programováním nějaké zkušenosti a další členové týmu toho naprogramovali daleko méně nebo dokonce nic. Navíc jsem hodně aktivní a jsem do programování a řešení problémů zapálený. Není to tedy o tom, že bych byl nějaký "borec programátor" a jasná "vůdčí osobnost", ale tím, že ono to vždycky padne na toho nejzkušenějšího a nejaktivnějšího. V jiné skupině by to tak zřejmě nedopadlo.
Každopádně si to dost užívám, hodně baví mě řešit úkoly, které nám v tomto kurzu "kouči / koučové" přichystali - některé z těch úkolů jsou docela zapeklité - ty mám nejraději :-).
PS: to nejlepší, kromě výše zmíněného, co jsem se v tomto kurzu naučil, je testování kódu. Zjistil jsem, že testování kódu, které jsem do teď nedělal, velmi usnadňuje a zrychluje práci, ale především, odhaluje chyby, které by člověk jinak nepředpokládal. Navíc jsem konečně začal používat debugging kódu, což jsem do té doby vlastně vůbec nedělal a jel jsem, asi trochu pomalou metodou, pokus - omyl - vytisknout proměnné do konzole - další pokus..... . S debuggingem a s testy to jde vše daleko lépe a rychleji.
PPS: moje řešní úkolů dávám i do gitu - https://github.com/jiri-one/Kosoctverci
Jako každý rok jsem opět chtěl dodržet tradici a zahrát si o Vánocích Serious Sama. Sice už vyšel SS4, ale na ten bohužel nemám dostatečně výkonný stroj (zatím). No a některé díly Serious Sama jsem už dohrál dvakrát a tak se mi nechtělo je hrát znovu. Nicméně našel jsem ideální řešení, které hraní Seriouse dalo nový rozměr - s kamarádem jsme si zahráli kooperativní mód ve First Encouter a bylo to boží. Dali jsme trochu vyšší obtížnost a ve dvou se to prostě lépe táhne, takže jsme to za pár hodin prošli celé. Určitě dáme i Second Encouter a budeme pokračovat dál .... ale asi zase až o dalších Vánocích, uvidíme :).
Nevím zda to bylo způsobeno koronavirem, či dobrým výběrem knih, ale za rok 2020 se mi podařilo přečíst 12 knih a u té třinácté jsem v půlce. To není špatné. Ano, mohlo by to být lepší, ale 1 kniha na měsíc je určitě slušné číslo. Nedělá to ze mě ani knihomola a ani nevzdělance. Takže jsem s výsledkem spokojen.
Vzhledem k tomu, že je nový rok, tak by možná někteří očekávali, že si dám nějaké předsevzetí, co se knih týče. Ale na to já nevěřím. Myslím si, že zlepšovat se člověk může každý den a ne si to slibovat v nějaký konkrétní den jen proto, že je to zvykem. Takže další rok uvidíme, zda se mi povedlo knih přečíst víc a nebo naopak méňě :-).
Zjistil jsem, že už nejsem schopen koukat, alespoň na nějakou dobu, na nic s dnes asi nejtypičtější dějovou linkou - superhrdina proti superpadouchům. Superhrdinové už se mi fakt přejedli. Jeden je z jiné planety (Thor), jeden má prachy a trochu posiluje (Batman), další má ještě větší prachy a je fakt chytrý (Ironman), tamten to umí s lukem (Arrow), jiný je fakt rychlý (Flash), tu náhodně zasáhla energie a teď umí lítat vesmírem bez čehokoliv (Captain Marvel), ....... Ale pár věcí mají všichni společných. Všichni musí zachránit svět, všichni musí trousit vážné i vtipné hlášky a hlavně to jsou všichni kreténi :-).
Uznávám, pár let to byla zábava. Ale čeho je moc, toho je příliš. Musím si dát na nějakou dobu pauzu a pár měsíců si ani nevzpomenout na hošíka, kterého kousnul pavouk a teď obluzuje slečnu jiné barvy pleti než je on sám, aby to bylo rasově vyvážené.
Musím se na nějaký čas soustředit spíše na knižní a herní příběhy, protože ty jsou většinou propracovanější, variabilnější a celkově nápaditější a nekopírují pořád to stejné schéma.
Jak jsem zmínil v titulku, bylo to krátké :). Jen takový povzdech :).
Tak doufám, že teď už by to všechno mělo jet správně. Vytvořil jsem si vlastní middleware pro Falcon, který při každém požadavku vytvoří připojení k RethinkDB a po vyřízení požadavku (requestu) ho zase zavře. Zároveň jsem provedl v kódu pár zjednodušení, takže je menší.
Dále jsem zase aktivoval vícevlákno (threads), takže blog by mohl být i o něco svižnější.
Prosím o otestování, refreshujte jak o život, když to spadne, tak budu ladit dále :-)
V posledním postu jsem psal, že je nové CMS v provozu a zbývá ladit. Ona je to pravda, ale to ladění bude trochu náročnější, protože RethinkDB, respektive její python driver není thread-safe. Což znamená, že při produkčním nasazení na serveru musím přístup k databázi vyřešit jinak. Konkrétně pro každý požadavek musím udělat samostatné připojení k databázi a pak ho zase bezpečně zavřít. Moje nezkušenost mě vedla k přesvědčení, že stačí sdílet jedno připojení k databázi a požadovat po něm X výsledků, ale to je velký omyl. Nicméně chybami se člověk učí, trochu to přepíšu, vytvořím nějaký dekorátor(y), který spojení bezpečně otevře a zase potom zavře a bude zase frčet parádně. Nicméně bude to chtít maličko víc času, musím to trochu otestovat a do té doby bude mít blog nějaké výpadky - za to se velmi omlouvám.
Nicméně starý blog na adrese old.jiri.one stále frčí ;-).
Protože mě hra nebavila, tak nechci tento zápisek natahovat, ale uvidíme jak to půjde.
Když jsem dohrál Heroin's Quest, tak jsem se prakticky hned pustil do dalšího adventurního počinu od studia Crystal Shard a tím byl Quest for Yrolg. Jedná o opravdu malou hru, nikoliv plnohodnotnou adventuru a velmi mě to nebavilo, přestože na přemýšlení to sice bylo, ale také to byla hra na pokus/omyl a to mě moc nebere. Takže po pár pokusech a omylech jsem to vzdal, protože takhle podle mě adventura vypadat nemá.
Ale Heroin's Quest byl tak skvělý, že jsem studiu Crystal Shard chtěl dát další šanci. Druhým největším počinem studia Crystal Shard je A Tale of Two Kingdoms. To je už jednoznačně pravá adventura, příběh je rozsáhlý, puzzle jsou složité, ale je tu opět spousta míst, kde můžete umřít, někdy i strašnou smrtí a pak následuje systém pokus/omyl a opakované umírání a loadování poslední uložené pozice. Ke cti autorů nicméně nutno přičíst fakt, že z každé situace opravdu lze nelézt řešení a nikdy jsem se nedostal do situace, kdy by mi například v nějakou, pro příběh důležitou, chvíli chyběl nějaký předmět a já musel velkou část hry hrát znovu.
Za příběh a atmosféru bych tedy dal 80% a za těch nespočet možností, jak ve hře můžete umřít bych strhnul 11%, tedy celkové hodnocení hry bych nechal na 69% - od sedmdesáti jsou hry už fakt super a tahle se k tomu může v některých chvílích blížit, ale celkově tak dobrá není.