Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Víte že můžete odebírat mé blogy pomocí RSS? (Co je to RSS?)
Od určité doby jsou všechny texty které zde publikuji verzované na Githubu.
Jestliže najdete chybu, nepište mi do diskuze a rovnou jí opravte. Github má online editor, není to skoro žádná práce a podstatně mi tím usnadníte život. Taky vás čeká věčná sláva v commit logu :)
Uběhlo něco přes čtvrt roku od doby co jsem vydal blog Na čem dělám, což byla sice původně odpověď do diskuze, ale částečně se z toho stalo i takové bilancování. Původně jsem na to nechtěl navazovat, ale nějak jsem zjistil, že to stejně dělám, když přemýšlím nad svým životem. Buďte varováni, že jde o sumu spousty myšlenek, z nihž spousta by mohla vydat za samostatný blog a je to dlouhé. Pokud vás text uráží, tak ani nemá smysl to otevírat. Věnováno Veverkám.
„When minds interact, new ideas emerge.“
Zamýšlel jsem se nad tím a možná z toho zkusím udělat něco jako občasník. Na IRC už jsem před časem dostal pojeb, že takhle exhibuju svůj vnitřní život. Jsou lidi, kteří to považují za .. nepřístojné. Dřív jsem měl podobný pocit, když se však podívám na svoje blogy za posledních asi 8 let, co sem píšu, silně mi dochází, že zdejší komunitu využívám do vysoké míry jako zrcadlo. Něco pro vás vyrobím, něco vám sdělím a sklidím za to reakce. Ty reakce mi pomáhají kalibrovat mé názorové sondy v realitě, a v neposlední řadě mně obohacují novými pohledy na stejnou věc a novými zdroji informací, ke kterým bych se jinak těžko dostával.
Jedna z věcí, které si na internetu užívám úplně nejvíc jsou konverzace s naprostými cizinci. Za posledních 10 let jsem vedl konverzace se stovkami, možná až tisíci lidmi. Spousta z nich proběhla na webu, hodně na IRC a jabberu, ale ty nejneočekávanější se vždycky odehrály přes email. Mnohé z nich mě zavedly do naprosto nepředpokládaných vod a moří úplně jiných názorů a nápadů.
Uvědomil jsem si, že některé informace píšu naschvál způsobem, jakým je píšu, protože lákám podobně smýšlející lidi jako můry na světlo jakýmisi informačními majáky. Ty zároveň filtrují lidi, kteří mě nezajímají, protože dostatečně zajímaví lidi si mezi sebou předají odkazy na to co jsem napsal a občas se mnou interagují, zatímco (pro mě) nezajímaví lidé to ani nezvládnou dočíst.
Tím chci říct - tohle píšu do velké míry, jako conversation opener. Můžete to využít k navázání a začít se mnou vést konverzace, jak v diskuzi, tak po mailu, nebo úplně jinými způsoby.
Začnu knihami, protože jsem do velké míry přešel na dietu složenou z vážněji míněných knih a jen jednou za čas to prokládám sci-fi.
Chystám se na GEB, což je moje knižní událost desetiletí. GEB jsem si koupil někdy v roce 2012, první rok v práci, když se mi v RSS čtečce objevila aktualita ze science worldu obsahující následující popisek:
Hlavním cílem této mimořádné knihy na pomezí metamatematiky, informatiky, filozofie a kognitivní psychologie je zkoumání, co jsou a odkud se berou základní atributy člověka - vědomí a inteligence. Je vystavěna na trojúhelníkovém půdorysu, jehož strany tvoří Bachovy fugy, Escherovy obrazy a dílo matematika Kurta Gödela. Tato zdánlivě nesouvisející témata mají totiž jednu společnou skrytou, o to však podstatnější vlastnost: jejich struktura je postavena na odkazu na sebe sama - takzvané autoreferenci. V knize se pravidelně střídá rigorózní výklad obtížných témat s rozmarnými pasážemi, jež jsou nabity slovními i grafickými hříčkami - a to vše je pevně propojeno ideovými, verbálními i vizuálními odkazy v mnoha vrstvách do pevného, velmi harmonického celku. Český překlad vznikal za spolupráce s autorem.
Přečetl jsem si pár recenzí a hned jsem si jí šel nadšeně koupit. Pustil jsem se do ní, abych pak někde po ~sto stránkách naprosto beznadějně uvízl a nemohl se dostat dál.
Od té doby jsem cíleně přečetl něco kolem desítky knížek, a několik desítek článků, které se věnovaly matematice a historii matematiky. Nemůžu říct, že bych byl v matematice dobrý, ale konečně mám po těch letech přehled co je co a jak to spolu souvisí. Je to rozdíl asi jako běžet v noci lesem s páskou přes jednoho oko za svitu diody na klíčence, a dívat se na les za dne z výšky.
Tam kde jsem dřív viděl jen sem tam strom, šmouhu, které jsem se sotva vyhnul, nyní vnímám celý les. Vidím, jaký má tvar a kde co roste. To sice neznamená, že když skrz něj půjdu, tak se neztratím, nebo že bych dokázal vyřezávat hračky ze dřeva, ale už nikdy na tom nebudu tak blbě jako tenkrát.
K tomu jsem přečetl Gödels proof a dočítám I am a strange loop. První knihu Hofstadter, autor GEBu pomáhal upravit, druhou napsal několik desetiletí po GEBu a věnuje se tam některým podobným myšlenkám. Nyní si připadám připravený, tak snad nepohořím jako kdysi.
Z toho co mě zaujalo:
Přesunuto do samostatného blogu.
Po přečtení se budete dívat na svět jinak. Já sice nemám skoro žádné estetické cítění, ale mám extrémně nízkou toleranci k demenci každodenních věcí.
Autor knihy si bere ukázky ze svého okolí, například dveře, a věnuje se přemýšlení nad jejich uživatelskou stránkou. Jaké jsou z té které strany kliky a ovládací prvky, aby lidi, kteří k nim přijdou nemuseli přemýšlet, jestli na ně mají tlačit, nebo za ně zatáhnout. Co dělá dobrý ovladač k televizi, nebo třeba telefonní číselník.
Tenhle princip přirozeného ovládání pak studuje všude možně, od autorádií po kalkulačky. Kniha se sice tváří, jako že se věnuje jen čistě fyzickým věcem, ale do velké míry je určená pro návrháře všech uživatelských rozhraní, ať už se jedná o rozmístění přepínačů světel v místnosti, nebo program v počítači.
Tahle kniha je doslova lahodná. Knihy psané vysoce inteligentními lidmi bývají zajímavé. Když se vás ale vysoce inteligentní člověk rozhodně vzít na horskou dráhu po tom co se mu odehrává v hlavě, celé to zkompiluje do jednoho navazujícího celku a pak před vás předkládá jednu zajímavou myšlenku za druhou, nemám pro to jiný výraz, než „lahoda“.
Strange loop (divná smyčka) nastává, když něco přejde do vyšší (nebo nižší) dimenze, ale přesto se vrátí zpět odkud to vzešlo:
What I mean by "strange loop" is — here goes a first stab, anyway — not a physical circuit but an abstract loop in which, in the series of stages that constitute the cycling-around, there is a shift from one level of abstraction (or structure) to another, which feels like an upwards movement in a hierarchy, and yet somehow the successive "upward" shifts turn out to give rise to a closed cycle. That is, despite one's sense of departing ever further from one's origin, one winds up, to one's shock, exactly where one had started out. In short, a strange loop is a paradoxical level-crossing feedback loop.
Autor vás v knize provádí svými úvahami na téma divných smyček a podstaty lidského vědomí. Filosofické a velmi dobré.
Tahle knížka byla něco naprosto jiného, než jsem čekal podle názvů, nebo recenzí. Čekal jsem zenová moudra a filosofii.
Místo toho jsem dostal příběh otce, který jede se svým synem po Americe a cestou přemýšlí. Přemýšlí o lidech, kteří jedou s ním, jejich vztahu k technice a k přírodě, ale také o své minulosti a o tom, kým kdysi dávno byl, než zešílel.
Kniha má zhruba uprostřed v sobě fakt dlouhou a fakt nudnou část o kvalitě. Přesto nelituji, že jsem jí dočetl, protože ty myšlenky byly zajímavé.
Před nějakou dobou jsem si založil kanál #mindspace
, kde nás pár lidí diskutuje na témata, co nás zajímají. Některé z těch zajímavějších věcí, které jsme tam řešili jsem se rozhodl rozepsat:
K narozeninám jsem dostal od přítelkyně diář Filofax. Malé černé pouzdro s kroužkovou vazbou, které má po straně poutko, do kterého se dá zastrčit psadlo. V mém případě to bylo pero Parker, které mi dal rok předtím kolega, když jsme oba dva končili v práci.
Osobně nemám moc rád elektronické kalendáře, takže se z toho hned stala používaná pomůcka, kterou jsem časem začal využívat i pro psaní poznámek. Vzhledem k malému formátu (A6) však jen základního todo, jako třeba nákup.
Několikrát jsem se o tom pochvalně zmiňoval na IRC, až si fm4d koupil taky jeden, jen větší a k tomu taky mechanické pero Parker. Pak se zase začal zmiňovat on, jakou má ta vetší velikost výhodu a jak moc mi doporučuje si koupit větší.
Po čase jsem se nechal přesvědčit a došel si koupit větší verzi v A5 formátu. Když už jsem byl u toho, chtěl jsem si k tomu taky koupit ještě pero Parker, ale zhnusený pohrdavý výraz prodavačky mi napověděl, že to není to pravé. Nechal jsem si tedy poradit a odnesl si neergonomicky vypadající pero Faber Castell Ambition Rhombus, které se mi sice moc nelíbilo, ale na první pokus bylo jasné, že píše úplně jinak, než můj starý Parker.
Zhruba po měsíci používání musím říct, že jsem do něj zamilovaný. Píše se s ním o tolik lépe, než s Parkerem, že to je jak přesednout z Trabanta do Mercedesu. To prostě ani není stejná kategorie zboží. Sice není zrovna levné, ale musím říct, že jde fakt poznat každá koruna, kterou stojí navíc.
No a proč vlastně poznámky perem na papír a ne do počítače?
Mám tu přes 2MB čistého textu poznámek v počítači, které si vedu asi 10 let. Poslední dobou jsem ale zjistil, že psaní si na papír odemyká úplně jiné části mozku, než psaní textu v počítači. Počítač je stále lepší na delší texty, ale pokud chci o něčem fakt přemýšlet, tak není nad to si rychle nakreslit schéma, nebo si načrtnout nějakou myšlenkovou mapu, různé body a prokreslit si mezi nimi souvislosti. Asi by to šlo i na počítači, ale veškerý software který jsem k tomu zkoušel byl ergonomií na hony vzdálený prostému kreslení perem. To je oproti tomu zcela intuitivní a hlavně rychlé.
Mám tu i ~dvoumetrovou kreslící tabuli na stěně, ale musím říct, že kreslení si perem používám o hodně víc, takže se jí výhledově nejspíš zbavím.
Taky jsem zjistil, že poznámky ke knihám co čtu se píšou dobře perem, protože nemusím sedět v křesle u počítače, ani mít na klíně notebook, což s knihou nejde moc dohromady. Snažím se si je psát podle toho co radil Peterson.
fm4d poslední dobou řešil docela složité životní a filosofické otázky. Každopádně se vydal směrem studia všeho možného, ať již se jedná o lidskou psychologii, fungování mozku, výživy, optimalizace učení, psaní si poznámek a podobných věcí, až došel k filosofii čtení knih.
Od doby co jsme se na IRC poznali někdy v roce 2010/11 si vyměňujeme tipy na zajímavé knihy, což mimo jiné vedlo k tomu, že jsme oba dva začali vytváře osobní báze dat (moje knižní todo neobsahující podkategorie pozice ve čtených, záměrně nedočtených, dluhů, vypuštěných knih, oskenovaných a dalších kategorií, momentálně vypadá takhle) a celé systémy na psaní poznámek a nápadů. Ty nám postupně tak přerůstají, že jsme začali malé části sdílet mezi sebou formou souborů vystrčených do internetu a nyní se oba snažíme některé části programovat, což silně souvisí s tématem mé knihy. O tom jsem ale mluvit nechtěl.
Jde o to, že fm4d někde vyhrabal teorii ohledně kupování si knih, kterou poslepoval z vícero různých zdrojů (blogy Ryana Holidaye, kniha How to Read a Book: The Classic Guide to Intelligent Reading a jiné). V podstatě to má 3 důvody/účely:
Osobně jsem zastáncem elektronických knih, které jsem četl v záři CRT monitorů dávno předtím, než přišly na trh první čtečky a každý rok přečtu desítky knih v elektronické podobě. Poslední dobou mám ale dobře placenou práci a musím říct, že fyzické knihy a jejich přítomnost má něco do sebe. Proto jsem si taky začal objednávat všechno možné v papírové podobě, i když se zatím snažím omezovat jen na věci, které mě fakt a skutečně zajímají. Hlavně z toho důvodu, že bych nerad skončil jako před pár lety, než jsem se zbavil většiny mojí sci-fi knihovničky, kdy jsem při stěhování stěhoval 6 beden knih a dvě bedny všech ostatních věcí.
(Takhle jsem si obložil křeslo.)
Poslední dobou mě fascinuje Steven Wolfram. Má sice hrozně otravný způsob, kterým pořád referencuje sebe, nebo své produkty, když se přes to ale člověk dokáže přenést, tak je to zajímavé.
Přečetl jsem od něj knihu Idea makers (mimo jiné má docela zajímavou pasáž o Babbageovi a úloze Lady Ady) a mám už někdy od začátku roku rozečtenou New kind of science. Četl jsem jí na tabletu, ale nedávno jsem si řekl, že udělám objednávku z amazonu, tak jsem si jí objednal v papírové formě a přidal k tomu i knížku o Wolfram language.
Když jsem si tak procházel poslední jmenovanou, došlo mi co vlastně Wolfram všechno dělá, jak moc toho je a jaký si kolem sebe buduje systém ze strukturovaných informací a výpočetních nástrojů. Uvědomil jsem si, že spolu sdílíme některé motivace, proto jsem se ho rozhodl studovat.
Vedli jsme na IRC širokou diskuzi, jestli byl John von Neumann génius, nebo ne. Já zastávám názor, že je přímo ukázkovým příkladem univerzálního, neomezeného génia, který změnil běh celého 20 století. Četl jsem o něm v Knize o číslech a teď v Idea makers a hluboce na mě zapůsobil.
Každopádně jsem dospěl k názoru, že si budu muset přečíst životopis, protože záře jeho mysli mě skoro oslepuje i jen z derivátů derivátů věcí, kterých se v minulosti dotkl.
Jedna z věcí, které jsem si odnesl z Design of everyday things je, že pokud má být design konkrétní věci úspěšný, musí být udělaný pro co nejvíce lidí. Šroubovák musí být vyrobený tak, aby s ním mohli pracovat jak leváci, tak praváci, ale i děti od pěti let, stejně jako starci po osmdesátce. A tenhle princip se vztahuje na úplně libovolnou konzumní věc, protože designeři se samozřejmě snaží předmět přizpůsobit co největší zákaznické skupině.
Došlo mi, že z toho taky plyne, že všechny věci jsou záměrně zhloupené a přizpůsobené nejnižšímu společnému jmenovateli, který sdílí celá cílová skupina.
Já jsem hodně netradiční člověk už jen proto, že měřím dva metry. To znamená, že skoro všechny židle jsou pro mě malé, všechny stoly jsou moc nízko, všechna křesla moc u země, všechny skříně mě nutí se hrbit, u kuchyňské linky musím být skoro v předklonu a bolí mě z toho záda. Běžné boty jsou mi moc malé (mám velikost 50), a běžné věci jsou pro mě špatně uchopitelné, jelikož mám větší ruce, než průměrný člověk.
A to se pořád bavíme o čistě fyzické stránce věcí. Ve světě software, kde jako programátor programující každý pracovní den osm a více hodin (dělám to i ve volném čase) mám potřeby úplně jiné, než má „běžný uživatel“. Na toho přitom cílí prakticky všichni výrobci programů.
Z toho pro mě plyne vysoká přidaná hodnota na míru dělaných, či upravitelných věcí. Například židle k počítači už je dneska standardně konfigurovatelná co do výšky, ale také jsem si koupil stůl, který má kličku, kterou se dá posunout nahoru a dolu. Původně jsem to chtěl k vyzkoušení stání u počítače, ale momentálně je hlavní výhoda v dokonale nastavitelné konfiguraci.
Jednoho dne bych si rád vyráběl vlastní nábytek, protože prostě jinak se buď nedoplatím, nebo mi nic nesedí tak, jak bych chtěl a potřebuji. Například křeslo na čtení, které jsem si koupil (varianta u Ušáku) je mi taky relativně malé.
No a u software .. tam se už dávno snažím expandovat směrem do nejvyšší vlastní kontroly, poslední dobou hlavně pomocí image-based systémů, jako Smalltalk, když vynechám že tu mám stovky věcí napsaných v Pythonu.
Tématu Metacircular-evaluatoru bych rád jednoho dne věnoval celý blog, bude ale trvat, než se k tomu dostanu. Jedná se popis lispu v lispu, implementovaný sám v sobě. Je to jedna z nejhezčích ne-opticky krásných věcí, které jsem kdy viděl. Svého času mi způsobil celé dny, kdy jsem chodil po městě, četl si vytisknutý Lisp as the Maxwell’s equations of software a snil s otevřenýma očima.
Nedávno mi při čtení Strange loopu došlo, v čem spočívá jeho krása a že je v podstatě stejná, jako krása Gödelova důkazu. Je to axiomatický systém, který v sám sobě popíše sám sebe. Jen Gödel šel dál, když v tom dokázal existenci paradoxů a větví stromů teorémů, ke kterým se nedá dorazit. Metacircular je ale zase praktičtější a naprogramovat ho zvládne každý, kdo tomu věnuje pár dní.
Dlouhou dobu mi v hlavě straší myšlenka na obrázek, který by Metacircular vystihoval. Ne jen symbolické znázornění, ale doslova lispová grafická reprezentace. Asi by to bylo fajn tetování.
Narazil jsem na něj v nějaké úplně náhodné diskuzi někde na náhodném webu pod náhodným článkem, který bych běžně ani nečetl. Ten den jsem na to ale měl náladu. Někdo ho tam doporučoval, že je fakt zajímavý. Tak jsem ho hodil do youtube a to byl konec tehdejšího pracovního dne. Během prvního týdne jsem od něj shlédl asi sto, možná více krátkých videí, různých výstřižků toho nejzajímavějšího z jeho přednášek.
Peterson je člověk s naprosto úžasně vysokou konverzační inteligencí. Dokáže mluvit celé hodiny a hodiny o věcech, na které se dívá úplně jinak. Například jeho talky o bibli jsou čistě geniální. Nevnímejte mě špatně; já křesťanství nemusím, ale on ho podrobil takové analýze, že se v něm pohybuje na o tolik vyšší úrovni, že by mě doslova ani nenapadlo se na to tak dívat. A přemýšlím, jestli tam ty všemožné zakódované významy, které v tom vidí jen lidé s inteligencí na úrovni Petesona (IQ>160), jsou naschvál, nebo ne.
Pár videí, které na mě opravdu zapůsobily:
Interstellar je vysoko-rozpočtový film, který je tak debilní, jak jen filmy můžou být debilní. Ačkoliv má místy zajímavou fyziku, která takhle podobně reálně funguje, tak naprostá většina jsou prostě jen nesmysly.
Ale ten soundtrack. Ten soundtrack, to je fakt něco jiného. Kdysi dávno jsem ho poslouchal a ulítával na něm a pak ho na celé roky zapomněl. Nedávno jsem na něj někde narazil a je to jedna dlouhá extáze. Ten zvuk varhan kombinovaných s klavírem je naprosto geniální.
Celý zážitek a můj respekt se ještě prohloubil, když jsem shlédl rozhovor s Hansem Zimmerem na téma vymýšlení toho soundtracku a varhanech, na které ho pak Roger hraje celým svým tělem:
Nevím co k tomu dodat jiného, než že je to pro mě spolehlivá cesta k audiogasmu, k extázi, kdy mám doslova husí kůži.
Clif Martinez složil soundtrack k filmu Solaris. Ten nebyl špatný, i když mě většinu doby spíš nudil, ale soundtrack k němu je něco, co mě dostává „do zóny“ už celé roky.
Nevím přesně, na co to je hrané, nebo jestli je to čistě elektronická hudba. Takové klidné zvonění. Často si to pouštím když píšu blogy, protože mi to pomáhá se soustředit a nějak to uklidňuje mojí vnitřní tělesnou opici, aby neopruzovala a byla uspaná hudbou. Já se pak můžu nerušeně věnovat abstraktnějším věcem. Funguje to opakovaně a spolehlivě.
Doporučuji ale pustit třeba ze Spotify, nebo z něčeho kvalitnějšího (ideálně flac), ta youtube kvalita toho spoustu potlačí.
Jo, mimochodem. Poprvé jsem slyšel Martineze v soundtracku k videu inspirovanému knihou Golem XIV. Fakt doporučuji, je to zajímavá věc:
Na téhle skupině ujíždím skoro celý týden. Píšťaly, bubny a pár nástrojů, které ani neumím poznat podkreslují zpěv severským jazykem. Zpěv běžně moc nemusím, ale tohle fakt sedne.
Kdysi dávno jsem hodně ujížděl na psytrance, až jsem vyposlouchal všechno, co bylo tenkát na last.fm. Pak jsem přešel k DNB a později k psydnb, abych se teď po vyposlouchání všeho psydnb co existuje opatrně vracel zpět k psytrance.
V poslední době mě velmi zaujalo album Ritualism EP:
Vychází třetí série Ricka a Mortyho. Co mě na tom fascinuje je stále trvající konzistentní genialita. Když jsem kdysi koukal na Futuramu, tak mě štvalo, že díly mají nevyváženou kvalitu a jsou celé série, které jsou skoro nudné. Jeden díl Ricka a Mortyho v sobě přitom většinou obsahuje tolik nápadů, zápletek a nefalšované geniality, že ostatní seriály většinou nemají půlku z toho v celých sériích. Čekal bych, že to časem zdegraduje, ale skoro mě děsí, že je to s každým dílem lepší a lepší.
Rick je geniální postava. To nemyslím jako vyjádření obdivu, ani jako popis toho, o co se autoři snažili. Není geniální externě, je geniální aktivně. Chová se prostě brutálně inteligentně. Tohle se většině ostatních autorů většinou naprosto nedaří a tak se o to snaží externě, pomocí složitých popisů děje a inteligence postavy. Rick však svojí genialitu používá tak přirozeně, že mu to prostě věříte, i když někde v hloubi duše víte, že je to jen kreslená postavička a geniální není ona, ale její autor.
Nevím co k tomu dodat jiného. Picke Rick je můj nový hrdina a je to jedna z nejlepších ukázek mého oblíbeného tématu; bootstrapingu z ničeho, kterému zatím ale stále vévodí Konstruktér z jedné povídky od Ashera.
Na tohle jsem dostal tip od kamaráda, že prý by mě to mohlo zajímat. Je to americký seriál s extra otravným formátem*, který se věnuje partě wannabe těžařů složených z lidí, kteří to nikdy nedělali (například je tam realitní makléř a tak). Ti dají dohromady asi 150 tisíc dolarů a odjedou těžit zlato na Aljašku. S pár bagry rozjedou během pár týdnů primitivní důl a těží. Je naprosto fascinující pozorovat, jak v divočině, kde nic není během chvíle postaví malou vesničku a jde jim to od ruky.
Každá série obsahuje jeden rok. Těžit se dá jen asi 150 dní, než všechno znova zamrzne tvrdou zimou. V první sérii prodělají skoro i kalhoty a jsou masivně v dluhu. Ve druhé jim důl se zlatou žílou vyfoukne bývalý člen týmu dosazený majitelem dolu. Ve třetí už konečně vydělají pořádné peníze, i když jen tak tak.
Pokud někdy ztroskotám na pustém ostrově, tak bych chtěl solárními články poháněný bagr, protože tenhle seriál mě naučil, že bagrem se dá postavit cokoliv za pár dní.
* Neustálé prostřihy do budoucnosti, spoilery a snaha o drama formátu debilní americký seriál jsou fakt opruz, ale dá se to. Nebo mám možná vybudovanou toleranci z American chopperu.
Vyšla Narcos, třetí série. První a druhá série byly dobré, ale tohle mě skoro nebavilo.
Vychází Halt and catch fire, třetí série. Tenhle retro seriál, který začíná vývojem prvního klonu IBM PC a ve třetí sérii se dostal k vzniku Webu, mi tak nějak přirostl k srdci. Mám rád počítačovou historii a i když je tohle jen volně inspirovaná fikce, tak je to stejně hrozně fajn.
Legion je naprosto vyfetovaný seriál z prostředí podobného Xmanům. Zatím vyšla jedna série a byla to teda fakt jízda. Hlavní postava si myslí, že má schízu, do toho je to feťák a hodně se toho odehrává v jeho hlavě. Navíc však má telekinetické a telepatické schopnosti. Něco takového se jen tak nevidí, asi kromě druhé série Mr. Robota s Eliotovo vidinami.
Smalltalk; a language of description (a programming language), which serves as an interface between the models in the human mind and those in computing hardware, and a language of interaction (a user interface), which matches the human communication system to that of the computer.
Be brave and bold enough to tackle what is hard and scary. Conquer the math, statistics and probability, capture and absorb the spirit of physics and biology, dare to enter those for they offer the real insights into life.
— fm4d
The trouble with programming is that it's an infinite exploration game, and the better you get at it the more it expands.
— http://gwenbell.com/dt-interview/
Beyond any comprehension.
— Nejvyšší míra uznání někoho. Ve smyslu „You sir, are beyond any comprehension.“
I fart in your general direction.
— Stará francouzská urážka.
Yay. Vzal jsem si za úkol napojit některé naše analyzátory obsahu na neuronovou síť, která má v hlavě (neuronech) jen porno. Když jsem na to pak psal testy, tak jsem musel vyrobit porno videa a porno archivy, které jsou nyní oficiální součástí naší codebase. Minulý týden jsem pořád nahrával k nám na web porno a sledoval co to dělá. Do toho jsem se hádal se šéfem ve stylu „ale mně to funguje, tady se to jasně vyhodnotilo jako porno!“ a šéf na to „ale u tohohle porno videa je moc malá pravděpodobnost, počítáš nějak blbě průměr.“ Srandy kopec.
Ta neuronová síť, to je obecně zajímavá věc. Přibližně 80MiB blob, kterým se v asi 20 řádcích pythonu nakrmí tensor flow a lezou z toho výsledky ve stylu jestli je to nude, nebo ne a s jakou pravděpodobností. Dodávají nám to nějací borci, co to trénují na zakázku.
Přijde mi, že tohle by mohl být dost zajímavý budoucí market. Budu se na to muset víc podívat. Brácha teď studuje ve skotsku machine learning, tak ho možná zkusím obrat o dobré učebnice.
Měl bych minimálně jedno jasné použití pro neuronový klasifikátor, a to je třídění RSS. Už teď používám jednoduchý blacklist systém a potřeboval bych to rozšířit tak, aby se to dívalo i do obsahu článků a na to kdo je poslal a na jakém je to serveru a jestli vypadá titulek jako clickbait, nebo ne. /r/programming RSS feed generuje tisíce položek měsíčně a je únavné tím zaměstnávat můj mozek. Zatím jsem to rozepsal pomocí naivních bayessovských klasifikátorů, jaké se používají ve spam filtrech, ale ty neurony mi přijdou, že by mohly být úspěšnější.
Zamýšlím se taky nad tím, jak moc by se daly použít v ostatních věcech, které dělám. Možná by z toho byl dobrý systém na analýzu obsahu na stránce? Možná sumování článků?
Každopádně jsem šéfovi naznačil svůj zájem a rád bych se na to v budoucnosti ještě podíval.
V práci jsme nabrali do teamu úplného nováčka, kluka, kterému je osmnáct a ještě nedostudoval střední. Šéf byl nerozhodný, tak se mě ptal co si o tom myslím. Řekl jsem mu, že dřív to tak fungovalo, že byli prostě učedníci, kteří nic neuměli a zaučili se praxí a že jestli u nás vydrží a bude se umět učit, tak to má smysl. Tak jsme ho teda vzali.
Když ho vidím, tak si připadám hrozně starý, přitom ještě nedávno jsem byl v jeho pozici. Je mezi náma deset let odstup, ale jak už to tak bývá, připadám si běžně mentálně mladší a tohle setkání s realitou mě zarazilo.
Kluk je hrozně nervózní, ze začátku nám vykal a visel na všem co mu řeknem hrozně moc. Protože jedeme všichni na linuxu, tak dostal za úkol si ho taky nainstalovat (na pohovoru tvrdil, že s linuxem dělal). Všechny nás ale zarazil, když si vybral Kali linux a pak strávil dva dny s tím, že mu nešel nainstalovat, aby ho pak kolega přesvědčil na čistý debian.
Po skoro měsíci práce už se začíná trochu chytat, ale programátorsky si ho budeme muset vychovat. Sice ho nemám na starost, ale udělal jsem mu pár přednášek, naposledy když mi řekl, že má rád PHP a C#, a že nevidí, čím je python jiný. Takže dostal hodinovou nalejvárnu do paradigmat programování, následovanou praktickou ukázkou funkčnosti dekorátorů a vnímání funkcí jako first class citizen. Domu odcházel s článkem o výrobě vlastního lispu, který jsem mu hned podstrčil, když se neopatrně zmínil, že si vždycky chtěl zkusit naprogramovat vlastní jazyk. Jestli si z toho něco odnese, tak z něj snad něco bude.
Druhý nováček dokončil po třech měsících parttime práce své zadání. Výsledkem je asi šest set řádek kódu (ta práce byla hodně o jednání s protistranou, ne o psaní kódu), na které jsem mu v pátek dělal code review. Po prvním kole zrefactoroval 300 řádků, při druhém kole jsem přímo s ním zrefactoroval dalších 320. Sice se mi to pořád nelíbí architektonicky, ale po uplatnění principů čistého kódu už se to aspoň dá číst a sémantická informace byla přenesena z komentářů do názvů funkcí a konstant. Je to matfyzák, se kterým se mi dobře diskutuje o matematice a astrofyzice, jenže to taky znamená, že mu teď začíná nový semestr a nebude mít čas, takže mi to nejspíš celé spadne do klína. Ale alespoň to budu moct zrefactorovat i architektonicky, nelíbí se mi, že použil asi deset metod, co nepřijímají žádné parametry, jen někam ukládají něco do properties a volají se navzájem, čímž tvoří stavový automat, ve kterém aby se prase vyznalo.
Přemýšlím, že bych časem mohl asi napsat nějaký obecnější blog o programování na základě feedbacku a toho, co teď vysvětluju těmhle dvěma, ale to se teprve uvidí.
S mojí knihou jsem momentálně do velké míry narazil na potřebu experimentálních dat. Takže jsem psaní do velké míry pozastavil a věnoval se programování. S tím hodně souvisí následující kapitola.
Původně jsem rozepsal hned dvě další podkapitolky, ale nakonec mi brutálně přerostly. Dal jsem je tedy do nového blogu, jenže s odstupem mi došlo, že je až krapet moc divný (osobní a špatně podaný), takže bude potřebovat hodně úprav. Věc se má tak, že jsem se dřív dostal k blogu co teď čtete, než k blogu o Selfu.
Každopádně kromě hraní si se Selfem si hraju taky s Pharo Smalltalkem. Už dřív jsem si objednal knížku o frameworku na uživatelská rozhraní a teď si jí procházím a snažím se naprogramovat si aplikace, které potřebuji. Přes víkend ho chci rozjet na serveru, spolu s nějakou formou použitelné perzistence, a udělat v něm novou verzi webu.
Mám spoustu poznámek a nápadů co konkrétně tam chci mít. Je ale otázka, jestli to vůbec půjde se Smalltalkem udělat, nebo budu muset počkat, až zmáknu problémy se Selfem. Jedna z věcí, které bych fakt chtěl, je objektové storage, kde vezmu objekt vytvořený u mě na počítači a prostě ho hodím na server a ten se postará o jeho prezentaci, podle metod a metadat.
Uživatel si pak může vybrat konkrétní koncovku, ať už je to .html, .txt, .pdf nebo co buď a tím volá jen metody toho objektu a stejně tak může ukládat věci do některých properties (= přidávat komentáře).
Chtěl bych, aby to fungovalo podobně, jako moje osobní pastebin, ale místo abych tam nahrál snippet textu, tak tam nahraju celý objekt, včetně jeho metod a metadat a ostatní k němu můžou přistupovat různými protokoly, podle toho co sami zvládnou. Základní uživatelé ke konkrétní reprezentaci (to je to .html, ..), pokročilejší k libovolné metodě a property.
Idea je taková, že když budu chtít zveřejnit nějaký dataset, tak ho nemusím seralizovat, ale prostě ho hodím na web, který se postará o seralizovanou prezentaci a zároveň umožní ostatním přístup přímo na ten dataset v neserializované podobě, tedy přímo k tomu objektu. Eh. Vidím, že tohle bude chtít podstatně lepší snahy o vysvětlení, takže v budoucnosti o tom asi budou celé blogy.
Kromě toho mi dorazil Bluebook a vytáhl jsem z poličky Deep into Pharo a Dynamic Web Development with Seaside, takže mám o zábavu postaráno.
V minulém blogu jsem psal, že přemýšlím nad posilovnou. No, tak jsem se k tomu v červenci odhodlal. Přišel jsem tam, nechal si všechno vysvětlit, zaplatil 6 tisíc za půlroční členství a dojednal si trenéra za pár tisíc na prvních pár lekcí, protože se znám a protože mě přítelkyně donutila přísahat, že tam nebudu chodit sám, nebo si něco udělám.
Od té doby tam chodím, každý týden dvakrát. Ku mému překvapení jsem zjistil, že mě to vážně baví. Trenéra mi dělá Marek Sviridov. Po prvních pár lekcích jsem se rozhodl, že stejně má smysl to dělat jen správně a vzhledem k tomu, že mám peníze, tak jsem si ho zaplatil na další měsíce. Sice to stálo pár desítek tisíc (hodina ~700kč), ale nelituji, přijde mi to jako fakt dobrá investice.
Musím zpětně dodat, že kdybych tam chodil bez trenéra, tak to naprosto postrádá smysl. Všechno bych dělal blbě a nedokázal bych se vůbec překonat. Pravděpodobně bych odpadl po prvním měsíci, protože by mě to nebavilo a ani bych se nedostal do té komunity lidí. Netvrdím, že trenér je zapotřebí navždy, ale minimálně prvních pár měsíců je to naprosto propastný rozdíl, speciálně pro nerdy jako já.
Když tam občas jdu bez něj, tak mi dochází, jak moc mi pomáhá to dělat správně. Správný postoj, správný pohyb, správná váha závaží a tak. Zrovna nedávno jsem tam byl sám, začal posilovat bicepsy s čtrnácti kilovými činkami, až mě nějaký týpek zastavil, že se na mě nemůže koukat, že to dělám moc blbě a ať si vezmu osmičku, protože se při té čtrnáctce moc cukám a zničím si ramena. Došlo mi, že trenér by mě zastavil už na začátku a jak bych se odchýlil, tak by mě hned srovnal a řekl jak se narovnat a tak. Všechno to mám v hlavě, ale když jsem pak unavený po hodině cvičení na jiných strojích, tak stejně jdu a udělám to blbě. Cvičení je celkově souboj s tělem, které má snahy dělat všechno s co nejmenší námahou (= blbě).
Opticky se posilování projevuje docela hodně v držení ramen, a to už po prvních dvou měsících. Schválně si dělám čas od času fotku, abych viděl jestli je tam nějaký progress a když jsem na to nedávno koukal, tak fakt je. Z naprosté rachitické vychrtlosti už jsem to dotáhl na skoro normálně vypadajícího člověka. Ruce mám sice pořád docela tenké, ale už alespoň zvládám činky v rozsahu 8-20kg (podle cviku), místo abych zvedal dvou až šesti kilové, jako na začátku. Váhově jsem přibral z 88kg na 96, při dvou metrech výšky a minima tuků. Když jsem začínal, měl jsem podle přístroje 13.7% tuku, což dělalo přibližně 12kg váhy, teď to bude míň.
Momentálně mě nejvíc fascinují asi shyby. Zatím dám jen asi tři najednou, ale baví mě a chci se na ně víc soustředit. To je takové to, když se chytnete tyče nad hlavou a pak se přitáhnete nahoru. Je to brutálně náročné a má to podobný problém, jako zvyšování nosnosti raket - čím víc naberete svalů, tím víc vážíte, tím víc toho musíte zvednout a tudíž potřebujete víc svalů. Dostat se do konkrétního optima, kdy se můžete zvednout dostatečně-krát a zároveň nemáte moc svalů, aby vám to nebránilo ve zvedání se, není úplně bez námahy. Menší lidi to mají v tomhle cviku lehčí, ale koukal jsem, že lokální rekord podle nějaké výzvy v posilovně bylo asi 17 shybů v kuse. Když mám protizávaží (na to je posilovací stroj), které mi sundá desítky kg, tak jsem jich s přestávkami dal kolem 40, ale pak jsem měl týden pocit, že mě někdo zkopal do žeber.
Musím nějak pořešit protein. Koupil jsem si půl kila když jsem začínal na začátku července a pořád z toho mám asi 100g, protože je to tak hnusné, že se k tomu donutím jen s grepovým džusem, který tu chuť přebije a jen když posiluji, protože jen tehdy mám dostatečnou žízeň a otupělost to vypít. Snažím se ho nahrazovat jedením masa a rýže a tak podobně, ale cítím, že svaly by mohly růst podstatně víc. Nedávno jsem si koupil na radu kilo proteinu s borůvkovou příchutí a sice chutná jinak, ale je hnusný úplně stejně, jen s jiným dozvukem toho hnusu. Dokud ho piju, tak se to dá, ale jakmile se mi dostane do pusy vzduch, tak mám chuť to vyhodit. Zkusím to asi ještě míchat s nějakým ovocem v mixéru, protože tohle se fakt nedá.
Růst svalů v relativně krátké době je divný pocit. Byl týden, kdy jsem si připadal jak kdybych na sebe oblíkl gumovou vrstvu. Tak divný pocit to byl z té nové vrstvy svalů, než jsem si zvykl. Taky rukama teď neudělám stejné pohyby jako dřív, protože prostě vrstvy svalů omezují stupeň volnosti. Například zkřížit ruce za zády (jednu ruku spodem, druhou horem a sevřít dlaně) je teď skoro nemožné. Je to divný pocit, se kterým jsem dopředu fakt nepočítal.
Další věc je, že se mi daří držet rovný postoj a nehrbit se, tak nějak i v běžném životě, třeba při jízdě tramvají. Zpočátku mě to mátlo. Ne ten postoj, ale reakce lidí. Třeba jsem šel po ulici a najednou se na mě usmívala ženská způsobem, který mě upřímně vyděsil. Tak jsem se začal kontrolovat, jestli nemám rozepnutý poklopec, nebo jsem šlápl do hovna, nebo mám na sobě nějaký kekel, nebo vypadám jak debil, nebo co. Kontrola v odrazných površích nic neodhalila a chuť jí odchytit a dostat z ní informace autogenem jsem potlačil.
Když se mi to stalo poněkolikáté, tak jsem odvodil, že se buď podobám někomu známému, kdo vzbuzuje pozitivní asociace (nějaký komik, nebo tak), existuje o mě skryté video, které nutí lidi se usmívat, když si na něj vzpomenou, nebo se jim prostě líbím a ten úsměv má být asi něco jako když se chlapi ohlídnou za ženskou.
Taky jsem si koupil nové oblečení, černé kapsáče a černá trička zkouším nahrazovat riflemi a tričky s textem a barvami, tak možná to je tím. Riflové kalhoty jsou hrozně nepraktické, protože jim prostě chybí kapsy, ale co už.
Na „The London School of Economics and Political Science“. Pořádně jsem ani nepobral co že to vlastně dostudovala (začala architekturou). Jmenuje se to oficiálně „Local Economic Development“, což je takové dost nicneříkající. Ale práci si našla v nějakém startupu co prodává tyčinky z mletého hmyzu a teď mluvila o tom, že možná získá místo v Bruselu, tak jsem skepticky zvědavý, co z toho bude.
V minulém blogu jsem psal o tom, že bych rád do Chorvatska. Přítelkyně nechtěla, takže jsem to vymyslel jako rodinný road-trip, domluvil to, zorganizoval a zaplatil cca měsíc dopředu poté, co všichni souhlasili.
Stalo se však nečekané - ségra to dva týdny před tím torpédovala tím, že nehodlá nechat bráchu se schízou řídit, že nás všechny zabije. Když druhý brácha viděl, že ségra nejede, tak se mu taky nechtělo, takže jsme zbyli dva, pročež jsem to zrušil, protože co já tam budu týden dělat s bráchou, se kterým mi vyschnou konverzační témata (motorky, ženský, auta, v tomhle pořadí) asi tak po třech hodinách.
Kdyby jsme tam jeli všichni, tak je to v pohodě a asi by to byla i zábava, ale škoda, prostě nevyšlo. Booking.com naštěstí vrátil peníze docela promptně.
Přítelkyně si pořídila štěně. Je to roztomilé zlobidlo staré kousek přes dva měsíce:
Je to australský ovčák, i když barvama a „medvídkovatostí“ zatím spíš vypadá jako bernský salašnický pes.
S přítelkyní nebydlíme, vídáme se párkrát týdně, takže vidím jak postupuje ve skocích a víc si to uvědomuji. Baví mě pozorovat, jak objevuje svět, jak se neustále učí něco nového. Jak se vynořuje a definuje z prázdnoty nezkonfigurované mysli a vytváří si mentální modely světa.
Mám z něj radost. Přítelkyně z něj ale vyšiluje, protože se poslední pár týdnů moc nevyspala a už jsme se stihli dvakrát úžasně pohádat. Částečně pro mojí neschopnost se vcítit, částečně protože má fakt podřážděné nervy a mě v kritických situacích občas nedochází, že bych měl držet hubu a neargumentovat. Tyhle hádky se často neodehrávají na úrovni prezentovaných dat, ale o úroveň (nebo dvě) výš (nebo níž?), kde například jen chce, abych jí vyjádřil podporu a to co říká ve skutečnosti vůbec není obsahem komunikace. Problém je, že mi to většinou dojde až zpětně, když přemýšlím co se to sakra stalo.
No a to je všechno. Samozřejmě, že jsem toho dělal a stalo se asi tak tisíckrát víc, ale tohle jsou ty zajímavější věci, o které jsem se chtěl podělit. V diskuzi na ně můžete volně navázat. Pokud se to osvědčí a nebude to nikomu vadit víc, než je běžná norma, tak v tom možná budu za pár měsíců zase pokračovat, částečně abych získal feedback, částečně abych si vedl určitý log i kromě škrtání čtverečků.
Tiskni
Sdílej:
Já myslel, že jsi OSVČ, nebo to "šéf" říkáš jen tak ze zvyku?„Zadavatel“. Reálně je to stejně šéf, když tomu šéfuje.
nebo se jim prostě líbím a ten úsměv má být asi něco jako když se chlapi ohlídnou za ženskou.Haha, tak to gratuluju. Ženské se usmívají když něco chcou. Ještě na sebe hoď něco reflexního, v létě nátělník a brýle na oči a budeš se cítit jak pan Tau. Dobře zabezpečeného samečka vždycky spolehlivě vycítí…
Je to roztomilé zlobidlo staré kousek přes dva měsíce. Je to australský ovčák, i když barvama a „medvídkovatostí“ zatím spíš vypadá jako bernský salašnický pes.Jo, jo. Beruška plyšová, kulatá…ňu, ňu, ňu a ty očička. Počkej až to vyroste. Je to bestie v kožichu zamaskovaná za plyšovou maskou. Tvoje přítelkyně nemá nejmenší ponětí co si na sebe pořídila.
Přítelkyně z něj ale vyšiluje, protože se poslední pár týdnů moc nevyspalaA to je teprve začátek. Nevím koho to bere za páníčka, ale předpokládám že sis na sebe taky ušil slušnou kulišárnu (cha, cha, dobře ti tak ty přítelkyně). Doporučuju taky začít posilovat i končetiny spodní. Buď během a nebo na kole. Je to ovčácký pes, ne tahací smeták. Buď to dostane ovci a pokud ne tak si ji udělá z pánička. Potřebuje to neustálý pohyb a zaměstnání (jinak to trpí), není to panelákový pes. Frisbee a pár tratí na procházky jsou absolutně nezbytné minimum. Běhat s tím nebo s tím jezdit na kole je lepší, unaví se to a na půl dne to dá pokoj. Čím víc prostoru, tím líp. Zas na druhou stranu se s tím dostaneš do míst a máš takové starosti, které by si bez psa neměl. Taková předpříprava nanečisto…
Zdraví (několikaletý) paniček jedné takové bestie. BTW: Je to fena nebo pes? Předpokládám že pes.
Jak se vynořuje a definuje z prázdnoty nezkonfigurované mysli a vytváří si mentální modely světa.A k tomu bych měl dodat že Australští ovčáci se řadí mezi ty chytřejší. Počkej až se to začne konfigurovat ty mentální modele. Nenech se zmást kukučem, je to vychcané jak pětikoruna na asfaltu…
Jo, jo. Beruška plyšová, kulatá…ňu, ňu, ňu a ty očička. Počkej až to vyroste. Je to bestie v kožichu zamaskovaná za plyšovou maskou. Tvoje přítelkyně nemá nejmenší ponětí co si na sebe pořídila.Přítelkyně už předtím vychovala australského honáckého psa (ACD) a horší už to asi nebude :) Tenhle je oproti ACD takový jemný, například nepoužívá nos jako bagr a taky cítí bolest, takže nedělá takové ty věci, jako že by k tobě přiběhl a zanořil do tebe nos, až ti udělá modřinu.
Zdraví (několikaletý) paniček jedné takové bestie. BTW: Je to fena nebo pes? Předpokládám že pes.Pes.
Přítelkyně už předtím vychovala australského honáckého psaTak proč z něho vysiluje? Čekal jsem případ „Jé, pěkné plyšové štěňátko co musíme vzít domů“, že už měla honáckého psa jsem nečekal.
Pes.Pokud ho necháte vykastrovat (za což by měli trestat), tak ten ještě umí dělat to že chytne stopu a zdrhne ti klidně několik kiláků za nějakou divou zvěří. Mnoho zdaru a pevné nervy, páničku.
Tak proč z něho vysiluje? Čekal jsem případ „Jé, pěkné plyšové štěňátko co musíme vzít domů“, že už měla honáckého psa jsem nečekal.Protože je to dvouměsíční štěně, které půl noci nespí a brečí a zlobí. Teď ho má třetí týden a všechna práce s výchovou teprve začíná.
Jako rada fakt nahovno.No a jestli chceš radu, jednu ti dám klidně zadarmo: Hoď se do klidu, chce to klid a nohy v teple
No a jestli chceš radu, jednu ti dám klidně zadarmo: Hoď se do klidu, chce to klid a nohy v tepleTo nebylo myšleno jako urážka, ale jako obecné konstatování.![]()
Zdraví (několikaletý) paniček jedné takové bestie. BTW: Je to fena nebo pes? Předpokládám že pes.Pěkný pes btw. Jak se jmenuje?
$ abicko_komentare --explain "http://www.abclinuxu.cz/blog/bystroushaak/2017/9/na-cem-delam-2017-9/diskuse#40" Grunt je totální píčus. Segmentation fault(Výstup tohoto zjevně nefunkčního programu nijak nehodnotím a příspěvek tedy není nutné cenzurovat. Navíc se nejedná o off-topic, protože všude jinde než u komentáře, na který reaguji, funguje správně. Děkuji za pochopení.)
There are fine people on both sides.
Problém je hlavně v tom, když je někdo osm nebo víc hodin v jedné poloze. Je potřeba to střídat. Na to bych chtěl polohovací stůl. Zatím jen občas střídám židli a klekačku (nicméně většinou je to židle).
Tohle je zajimavy tema.
Ja k tomu muz rict asi nasleduici
- ve veku asi 10let sem obdivoval "visjolie kartinky" (ruskej casak s bilou gramofonovou deskou)
- kdyz me bylo 12 "majkl najt" (ten borec co jezdi v kitu tzn David Hasselhoff) byl lepsi nez nejlepsi pionyr a mel sem za to, ze musi rozhode byt ze Zapadniho Nemecka
- kdyz me bylo 14 az 16 a nasi nak poresili mtv, veril sem "dreams can come true"
- ve veku nakych 20+ sem se prestehoval do zapadni evropy a vydelaval mega+(krat x) czk rocne
- v nakych triceti sem vratil a koukal na vsechny ty vocasy kolem co "se snazi byt cool pouzivanim czechis"
- je me ted dost jinak nez u posledni odrazky, ale porad je zajimavy pozorovat lidi kolem a beru cestinu jako jednu z veci, ktera me dava oproti svetu vyhodu
Nemam predstavu co tim chcu rict, a je me to celkem jedno ... cas vse popre a je relativni ... zkus si precist treba toto, neni to zadna h/c scifi, ale predstava, ze prozivas ten prvni zivot te odvari :) ... pardon, zivot v 28 je teprve na zacatku
jestli byl John von Neumann génius, nebo neTak to je celkem jednoznačné, byl to jeden z nejchytřejších lidí ever. Z The Recollections of Eugene P. Wigner" "I have known a great many intelligent people in my life. I knew Planck, von Laue and Heisenberg. Paul Dirac was my brother in law; Leo Szilard and Edward Teller have been among my closest friends; and Albert Einstein was a good friend, too. But none of them had a mind as quick and acute as Jansci [John] von Neumann. I have often remarked this in the presence of those men and no one ever disputed me."
Interstellar je vysoko-rozpočtový film, který je tak debilní, jak jen filmy můžou být debilní.Jo mě přišla premisa jako prostá ekoagitka. To hejbání s ručičkama hodinek bylo WTF a Michael Caine měl teda pěkně malou roli. Jo a roboti mě připadali jako modely v minecraftu
Picke Rick je můj nový hrdinapickle riiiick!!
mého oblíbeného tématu; bootstrapingu z ničehoJop bootstrapping je super. Teďka dělám bootstraping JTAG host řadiče
Když jsem na to pak psal testy, tak jsem musel vyrobit porno videa a porno archivyTak to bych měl strašně nízkou pracovní produktivitu :-/. BTW na co se to pak použije? Doufám že ne na cenzurování internetu :-/. BTW by byla prdel tím natrénovat DeepDream od googlu :-P. Vtipná idea: hmm co by se stalo kdyby z té tvé neuronové sítě vzniknul nějakej klasickej AI jako Skynet/Matrix apod.
Všechny nás ale zarazil, když si vybral Kali linuxHoly shit, to je větší šílenec než já se slackwarem :-O ... Nebo sledoval jen Mr Robot seriál.
Třeba jsem šel po ulici a najednou se na mě usmívala ženská způsobem, který mě upřímně vyděsil.
podobám někomu známému, kdo vzbuzuje pozitivní asociace (nějaký komik, nebo takTo bys musel nahodit fotku i když teda nevím jak moc se tu lidí kouká na TV. Nejspíš se na tebe koukaj kvůli těm svalům no :-P.
Picke Rick je můj nový hrdinaKdyž si pak člověk uvědomí, že Mortyho i Ricka mluví stejnej člověk...
Jo mě přišla premisa jako prostá ekoagitka. To hejbání s ručičkama hodinek bylo WTF a Michael Caine měl teda pěkně malou roli. Jo a roboti mě připadali jako modely v minecraftuRoboti byli hned po hudbě to nejoriginálnější, na celém filmu. Mně spíš srala už jen ta podstata původní myšlenky, že země je k ničemu, tak si najdem jinou planetu. Jako wtf. Proč prostě nejít pod zem, nebo pod moře, nebo na orbitu (afaik tam byl nějaký problém se obsahem kyslíku ve vzduchu), nebo prostě nestavět vzduchotěsné domy spojené tunely, nebo postavit gigantické jaderné reaktory, které budou štěpit mořskou vodu na kyslík? Možností je asi tak miliarda a každá z nich tisíckrát levnější a míň namáhavá, než stěhovat větší množství lidí na jinou planetu, ještě k tomu v jiné galaxii..
pickle riiiick!!Terryfold song znáš? Nedávno mě taky pobavilo (Animated) Justin Roiland from Rick and Morty - Prank Call Joel Osteen's Church on H3 Podcast.Jinak nejlepší scény smartest people in the universe, one screw turn a i'm alive (se super remixem) a pass the butter (i když při současný ceně másla by byl takovej job dobrej [/trololo]).
Tak to bych měl strašně nízkou pracovní produktivitu :-/. BTW na co se to pak použije? Doufám že ne na cenzurování internetu :-/. BTW by byla prdel tím natrénovat DeepDream od googlu :-P.Dělám pro nejmenovanou společnost hostující uživatelské soubory. Porno chceme přehazovat na doménu s 18+ varováním a tak.
Vtipná idea: hmm co by se stalo kdyby z té tvé neuronové sítě vzniknul nějakej klasickej AI jako Skynet/Matrix apod.To co jsem dostal se neumí učit, je to jen klasifikátor.![]()
Roboti byli hned po hudbě to nejoriginálnější, na celém filmu.No já neříkám že byli špatný, ale prostě mě to okamžitě připomnělo minecraft.
Proč prostě nejít pod zem, nebo pod moře, nebo na orbituTo tam říkali, protože se vyvinula nějaká superplíseň a celou populaci Země ty izolovaný farmy neutáhly.
Terryfold songJo
Dělám pro nejmenovanou společnost hostující uživatelské soubory. Porno chceme přehazovat na doménu s 18+ varováním a tak.Uložto?
pickle riiiick!!Ta poslední epizoda měla hned tři naprosto kruté scény: U toho vypínače pořád přemýšlím, jestli je Morty vypnul, nebo jestli tím že byli po smrti nějak narušili schopnost Mortyho poznávat strany, kvůli které si je tam Rick živil :DJinak nejlepší scény smartest people in the universe, one screw turn a i'm alive (se super remixem) a pass the butter (i když při současný ceně másla by byl takovej job dobrej [/trololo]).
U toho vypínače pořád přemýšlímLOL vida tu scénu jsem zrovna v té hloubce nepochopil. Ale teďka bych spíš řekl, že mu je Morty vypnul a tím kliknutím v kumbále mu vypnul něco dalšího.
Jo mě přišla premisa jako prostá ekoagitka.
Prvoplánově možná. Ale nevím, jak moc byli ekoaktivisté nadšení z myšlenky, že nakonec lidstvo stejně zachrání ti proradní vědci a technici, ne hlasatelé návratu k přírodě, zavržení technického pokroku a dokonce i přepisování historie ve jménu těchto idejí.
jak moc byli ekoaktivisté nadšení z myšlenkyNejspis jich moc neznas - drtiva vetsina by byla rada, kdyby lidstvo zachranilo cokoli, treba i Donald Trump. Spis mi prijde (i kdyz jsem ten film jeste nevidel), ze film tomu reseni trochu utika - lide zdrhnou na jinou, neznicenou planetu? To neni moc ekologicka agitka. To by prave bylo, kdyby se ten problem opravdu podarilo vyresit.
Nejspis jich moc neznas - drtiva vetsina by byla rada, kdyby lidstvo zachranilo cokoli, treba i Donald Trump.
Nenapadlo mne, že by si můj komentář někdo mohl vyložit takhle. Nemyslel jsem samozřejmě to, jak by byli nadšení v reálném světě, pokud by skutečně čelili té hrozbě a někdo ji vyřešil; pak by asi opravdu jen ti nejvíc hardcore fanatici dokázali být odmítnout řešení jen kvůli tomu, kdo s ním přišel. Reagoval jsem na označení filmu za ekoagitku a pozastavil se nad tím, jak se asi (skutečným) ekoaktivistům líbila ta zápletka, o které jsem mluvil.
- Nikdo nečekal, že země, která nám dávala potravu, se proti nám takhle obrátí a zničí nás.Například tohle je prostě clickbait na lidi s konspiračníma teoriema:
- Je to zastaralá učebnice. Nahradili jsme ji opravenou verzí. - Jak opravenou? - Je tam vysvětleno, že mise Apollo byly zfalšované, aby přivedly Sovětský svaz k bankrotu. - Vy nevěříte, že jsme vstoupili na Měsíc? - Podle mě to byla skvělá propaganda, díky které se Sověti sami zničili, když investovali do raket a zbytečných strojů. - Zbytečných strojů? - A pokud nechceme opakovat plýtvání z 20. století, tak musíme děti učit o této planetě. A ne to, jak ji opustit.
K tomu prvnímu: možná jsem něco přehlédl, ale nevzpomínám si, že by tam někde bylo explicitně řečeno, že za tu ekologickou katastrofu může lidstvo a jeho činnost. Pro určité skupiny lidí to asi může znít jako samozřejmost, ale vůbec to tak být nemuselo. Já to třeba bral spíš jako takové upozornění, jak křehká může naše civilizace za určitých okolností být (i bez toho, abychom se zničili sami).
K tomu druhému: opravdu vám připadalo, že je to tam prezentované jako že ti učitelé mají pravdu a ta učebnice je podvrh? Na mne to působilo přesně obráceně: jako klasická ukázka přepisování historie za účelem manipulace lidí. Možná i proto, že si z vlastní zkušenosti pamatuji, že v našich učebnicích nebylo všechno tak úplně pravda.
Na mne to působilo přesně obráceně: jako klasická ukázka přepisování historie za účelem manipulace lidí.Však i na mě jo, ale negativní reklama je pořád taky reklama. Prostě proč musí být ve sci-fi, který by mohl být hardcore, klasická populární konspirační teorie.
Takže tobě vadí, že se film okrajově vyslovuje proti přepisování historie a konspiračním teoriím a že je pro řešení problémů technickým přístupem protože ti vadí, že se k tomu vůbec vyjadřuje?V oscarovém filmu mohli tu katastrofu, kvůli které je potřeba opustit Zemi, udělat líp.
Takže kdybych třeba řekl, že je podle mě komunismus svinstvo navržené k manipulování lidí aby šli navzájem proti sobě, tak mě tu obviníš z toho, že vlastně napomáhám konunismu tím, že o něm vůbec mluvím?Pokud bys to řekl uprostřed večerníčku, tak si zaťukám na čelo proč to taháš do jinýho tématu.
Mě ani ne, a ani mi nepřišlo že by to byl vyloženě špatný film, spíš naopak. Na druhou stranu ale shouhlasím s tím, že spoustu prvků v tom příběhu nebyli úplně domyšlené nebo byli zcela nesmyslné, ale to vychází z toho, že jeden z hlavních motivů toho filmu bylo cestování vesmírem (a časem), kde naopak těch blbostí moc nebylo. Myslím že to byl Asimov, kdo napsal že science fiction je o tom, že si autor vymyslí nějakou změnu v technologii nebo společnosti (jakkoli nesmyslná by se mohla na první pohled zdát, o to nejde), a domýšlí důsledky, co by to mohlo se společností udělat. Tady je ale problém v tom, že nikdo nedokáže domýšled důsledky do takové šíře, aby to zcela dávalo smysl. Dobrý autor se s tím dokáže vypořádat tak, že prvky mimo hlavní nápad potlačí. V případě Interstellaru to boužel bylo vyřešeno zkratkovitě, a i v ději bylo pár wtf momentů, ale jako celek mi to přišlo pořád ještě dobré. Rozhodně si myslím, že většina vysoko-rozpočtových sci fi filmů je bohužel debilnější. Téma ekologie se tam imho v podstatě neřešilo. Byla tam zmíněná jakási pseudo ekologická katastrofa, ale přišlo mi to jen jako nějaký jednoduchý zástupný důvod, proč je potřeba rychle opustit planetu a vydat se do vesmíru. Nijak se to tam dál nerozebíralo, a ani to v těch detailech, co tam byly, nedávalo moc smysl jako důvod proč opustit Zemi. Např. jen vytvořit někde ve vesmíru nový, nezávyslý ekosystém je aktuálně považováno za neřešitelné, tj. že to nikdo neumí udělat a ani se o to nikdo po neúspěchu Biosphere 2 aktuálně nesnaží.Interstellar je vysoko-rozpočtový film, který je tak debilní, jak jen filmy můžou být debilní.Jo mě přišla premisa jako prostá ekoagitka.
Interstellar určitě není vyloženě špatný film a celkově patří k těm lepším. Sice připouštím, že jsem z něj byl taky trochu zklamaný, ale když se nad tím zpětně zamyslím, tak hlavně proto, že po batmanovské trilogii bylo očekávání tak velké, že ho snad ani nešlo naplnit.
Co se ekologické zápletky týká, asi nejvíc mi vadilo, že na začátku je to prezentované skoro jako kdyby lidstvo mělo každou chvíli vymřít, ale pak uplynou desítky let - a nic. Doslova "nic", ani zmínka o tom, jak se situace vyvinula.
ale když se nad tím zpětně zamyslím, tak hlavně proto, že po batmanovské trilogii bylo očekávání tak velké, že ho snad ani nešlo naplnitHuh. Tak z téhle trilogie jsem viděl tuším ten prostřední (Dark Knight) a přišlo mi to dosti slabé. Je tenhle díl horší než ty ostatní, nebo to prostě celý není moje krevní skupina? (Tipuju asi spíše to druhé, vzhledem k tomu, že Dark Knight má dobrá hodnocení.)
Co se ekologické zápletky týká, asi nejvíc mi vadilo, že na začátku je to prezentované skoro jako kdyby lidstvo mělo každou chvíli vymřít, ale pak uplynou desítky let - a nic. Doslova "nic", ani zmínka o tom, jak se situace vyvinula.Jo to taky.
že jeden z hlavních motivů toho filmu bylo cestování vesmírem (a časem), kde naopak těch blbostí moc nebylo.Jo sci-fi část byla relativně OK. I když teda to že je červí díra jednosměrná a planety krouží těsně u horizontu událostí mě teda přišlo, že je to mírně účelové (když dokáže Cooper předat informace přes ty gravitační anomálie, tak proč nemůže být červí díra obousměrná, nebo proč nemůžou být dvě, planety blízko horizontu událostí by byly roztrhaný slapovými silami - zvlášť když na jedné jsou permanentní 100m přílivový vlny).
Byla tam zmíněná jakási pseudo ekologická katastrofa, ale přišlo mi to jen jako nějaký jednoduchý zástupný důvod, proč je potřeba rychle opustit planetu a vydat se do vesmíru.Jo právě mohli tam ukázat nějakej riot proti technologii. Ve městu Permutací v podobné době (204x) zkoušeli ovlivnit vznik a směr hurikánu něčím jako efektem motýlích křídel, v interstellaru mají problém předvídat písečnou bouři. Klidně mohli tu extinction event napojit na vytvoření červí díry blízko země nebo pád meteoritu a bylo by to ucelený sci-fi.
Rozhodně si myslím, že většina vysoko-rozpočtových sci fi filmů je bohužel debilnější.Jo to souhlasím, taky moc aktuálních hollywoodských filmů nesleduju.
tak proč nemůže být červí díra obousměrná
Červí díra prostě je jednosměrná, říkala to Samantha Carter. :-) (narážka na S04E19 "Prodigy")
To byl jen vtip… myslím, že univerzální odpověď na podobné otázky je "protože se to tak hodilo do scénáře". :-) Ale jinak mi samozřejmě taky vadí, když svět nějakého filmu nebo seriálu postrádá vnitřní konzistenci.
Asi nejlepší způsob, jak Interstellar brát, je ten, že Nolan chtěl natočit něco jako je Kubrickova Vesmírná odysea, ale na rozdíl od něj tam dal dost děje na to, aby mu diváci během těch tří hodin neusnuli. :-)
Taky rukama teď neudělám stejné pohyby jako dřív, protože prostě vrstvy svalů omezují stupeň volnosti. Například zkřížit ruce za zády (jednu ruku spodem, druhou horem a sevřít dlaně) je teď skoro nemožné.Hmm... Já to s posilkou nedávno vyhodnotil úplně stejně jako ty, totiž že bych to sám dělal naprosto blbě a akorát si uškodil, takže mam teď taky trenéra, ačkoli v jiný posilce. Poslední část tréningu vyčleňuje vždycky na protáhování, nejprv podle toho, co jsem ten den cvičil, a pak ta poslední část je vždycky stejná, takovýto "zkus se dotknout špiček" a podobně. Přijde mi to důležitý, máš tam u vás taky něco takovýho? Což mi připomíná, že bych si to měl projít a protáhnout se :-/ Snažim se k tomu dokopat pokudmožno denně, ale ne úplně se to daří... Co se týče proteiňáků, kupuju si na radu kamaráda gainery od Nutrendu a ty jsou co do chuti docela ok. Mam teď nějakej jahodovej, celkem dobrej. Hnusný jsou, jen když to málo protřepu (ie. když tam jsou hrudky / není to 100% hladký).
Hmm... Já to s posilkou nedávno vyhodnotil úplně stejně jako ty, totiž že bych to sám dělal naprosto blbě a akorát si uškodil, takže mam teď taky trenéra, ačkoli v jiný posilce. Poslední část tréningu vyčleňuje vždycky na protáhování, nejprv podle toho, co jsem ten den cvičil, a pak ta poslední část je vždycky stejná, takovýto "zkus se dotknout špiček" a podobně. Přijde mi to důležitý, máš tam u vás taky něco takovýho?Jo, jo. Protahování na začátku a na konci. Záda, ruce, nohy, krk.
Co se týče proteiňáků, kupuju si na radu kamaráda gainery od Nutrendu a ty jsou co do chuti docela ok. Mam teď nějakej jahodovej, celkem dobrej. Hnusný jsou, jen když to málo protřepu (ie. když tam jsou hrudky / není to 100% hladký).Já nemám rád mlíko. Doslova je mi z té chuti na blití a tenhle co jsem si teď koupil, ten je hnusný po mlíku. Ten co jsem měl předtím chutnalo jen asi jako shnilý oves.
Ono po Praze a obecně po městě se běhá doceka blbě.Není prostor?
Běhat po tvrdém povrchu není úplně ideální (asi se to dá kompenzovat vhodnou obuví, ale ta něco stojí).
...zrovna v Praze je to snad odevšad kousek do nějakého parku nebo přímo do lesa :) Mezi feťáky, lupiče a další VIP obyvatele. Nějakému lesu v Praze se přezdívalo Řáholec, ale nevim kterymu.To jsou zase legendy a pohádky o Praze... Mně se třeba v Praze typicky běhávalo líp než v 'rodné vísce'. V minulém bydlení (v Praze) jsem to měl kousek na Ladronku a Hvězdu, teď to zas mám kousek do Kunratickýho lesa. V ani jedné z těhle lokací jsem neviděl žádný váguse ani feťáky. Oproti tomu na vesnici byly akorát cesty mezi polema, kde smrdělo hnojivo a člověk musel uskakovat kombajnům a podobně. Nejbližší les sice nebyl nijak drasticky daleko, ale dostat se k němu dalo jen přes poměrně rušnou silnici, navíc ten les byl menší než Kunratický. Takže ono to není všechno tak černobílé.
Nechci vám ani jednomu do toho kecat, ale než se cpát nějakýma proteiňákama a trávit večery u trenéra, nebylo by užitečnější vytáhnout to kolo, kolečkově brusle nebo prostě běhat? U sedavého zaměstnání (kor v Praze) je potřeba se držet fit, ne ze sebe dělat kulturistického modela alias Schwarzenegger.To, co dělám já, je dost všeobecný cvičení, kromě klasickejch silovejch věcí tam jsou i balanční cvičení, cvičení na flexibilitu, příp. se přidává i to běhání (podle potřeby a možností). Kulturista ze mě nebude ani blbou náhodou a ani můj trenér není žádnej vyrýsovanej šílenec, vypadá úplně normálně. Ježdění na kole je fajn a doporučuje se, akorát já aktuálně nemám pořádně kde kolo skladovat :-/ Běhání je sice masivně populární, ale je hodně zatěžující např. na klouby. Dřív jsem běhal rád (okolo 10km, i nějaký ty půlmaratony jsem si vyzkusil), ale pak mě chytlo koleno a od tý doby běhat v podstatě nemůžu. Pravděpodobně se to stalo právě z toho důvodu, že jsem neměl žádnou takovouhle průpravu...
akorát já aktuálně nemám pořádně kde kolo skladovatPlně chápu a soucítím.
Nechci vám ani jednomu do toho kecat, ale než se cpát nějakýma proteiňákama a trávit večery u trenéra, nebylo by užitečnější vytáhnout to kolo, kolečkově brusle nebo prostě běhat? U sedavého zaměstnání (kor v Praze) je potřeba se držet fit, ne ze sebe dělat kulturistického modela alias Schwarzenegger.Záleží na tom co je cílem, podle toho potom můžeš definovat nějakou užitečnost. Mým cílem momentálně je nabrat svaly, protože jsem vyhublý. V tom by mi jízda na kole vážně nepomohla, naopak bych pravděpodobně ještě víc zhubnul.
protože jsem vyhublýProč tu provokuješ? Jestli chceš, rád se podělím „a budeme mít stejně“.
Interstellar je vysoko-rozpočtový film, který je tak debilní, jak jen filmy můžou být debilní.
To by bylo na světě krásně, kdyby se tohle tvrzení aspoň vzdáleně blížilo pravdě.
GLMBasicExamples open
. Nezapomeň také na http://agilevisualization.com/
Vyšší produktivita pro praktické úkoly paradoxně částečně pramení z větší omezenosti Smalltalku vůči Selfu. I ve Smalltalku objektový model umožňuje dělat různá kouzla, ale člověk vždy narazí na omezení pramenící z nástrojů, které jsou k dispozici. To sice do jisté míry svazuje člověku ruce, ale zase lépe umožňuje udržovat vyšší stupeň kontroly. Outlinery jsou skvělé, nicméně přímočařosti Browseru zatím nedosahují.
Ale jsem přesvědčen, že času stráveného nad Selfem určitě nemusíš litovat
Trochu jsem si pohrál a podařilo se mi poměrně jednoduše nasimulovat Marvina bez nutnosti modifikace VM, takže bychom se nemuseli vzdávat prototypů ani v Pharu.
Přitom by stačilo mít možnost změnit layout....Já to asi zkusím někdy naprogramovat. Ale Morphic v Selfu, resp. totální absence čehokoliv, co by jen připomínalo dokumentaci je taky kapitola sama pro sebe.
Trochu jsem si pohrál a podařilo se mi poměrně jednoduše nasimulovat Marvina bez nutnosti modifikace VM, takže bychom se nemuseli vzdávat prototypů ani v Pharu.Jenže prototypy v neprototypovém systému většinou moc nesedí. Například si vem Morphic, ten do Smalltalku taky pasuje hrozně divně a vůbec není tak využit, jako v Selfu (například prototype based UI tam sice můžeš udělat duplikací přes morphic halo, ale už s ním nemáš možnost moc dál pracovat a třeba ho uložit).
Chystám se na GEBtak good luck
pouzivate nekdo ten cherrytree? nahradi to onenote?
Stock.*Plantation|Plantation.*Stock
Analogicky lze tagy aplikovat na cokoliv co cloveka zajima (napr knihovnicka - rok vydani/zanr etc)
Find a Node: This option searches for the text string in the names and tags you have given your nodes. For example, if you used Cherrytree to keep recipes in, and one of your recipes was in a node named Cordon Bleu, with the tag "French, Chicken", you could use either "Cordon" "Bleu", "French" or "Chicken" as your search string and Cherrytree will show you that node. The search dialog for each of these methods has these options:Mozna by stalo za to si ten sw osahat misto mrkani ...
A co Zim wiki? Dokaze nekdo porovnat s Cherrytree?Zim jsem používal kdysi před CherryTree. Nebyl špatný, ale nebylo to ono. Přišlo mi že neškáluje tak dobře jako CherryTree co do počtu nodů a už někdy od 50 to žačalo být divné. V CherryTree mám o řád víc a pořád v pohodě. Špatně se to vysvětluje. Chybělo mu hodně vlastností, které jsou v CherryTree tak nějak samozřejmé. Na druhou stranu musím nechat, že měl lepší vnitřní formát, za kterého nebyl žádný problém dostat čisté HTML.
Když už zmiňuju ty boty, jaký boty kupujete?
Ale jinak: na botách se nešetří. Takže kvalitní kožené boty z nějakého obskurního kšeftu importujícího boty ze Švajcu.
Bystroushaaku toto všechno jste zvládl za čtvrt roku? Hluboce smekám! Sice se také stále učím něco nového, ale toto všechno stihnout by mi trvalo minimálně rok, ne-li více. Když přijdu večer z práce, snažím se ještě pracovat na svých projektech, ale moc toho už nedělám. O víkendech obvykle více, ale třeba tento víkend jsem neudělal absolutně nic, jen nainstaloval a nastavil Ubuntu na jeden stroj a večer se sousedem hleděl do jedné Springové appky. Původně jsem chtěl studovat Javu a Spring, ale naše tři děti tak děsně řvaly celý víkend, že jsem se nenaučil skoro nic. V pondělí jsem šel do práce zničenější než jsem byl v pátek večer. Fakt máte můj hluboký obdiv a těším se na další blog. Co se týká knih, stále se mi připomíná sága od H. N. Turtledove - Světoválka. Často nad tím přemýšlím, jaké by to asi bylo. Za posledního čtvrt roku jsem četl pár knih od Jefferyho Deavera, líbí se mi jeho způsob uvažování. Mám rozečtenou knihu o Pythonu, o návrhových vzorech, přečetl jsem knihu o Gitu a nějaké další věci kolem programování. V plánu mám přečíst si něco o matematice, nedělám nic, kde bych potřeboval něco víc, než se bere někdy v prváku na střední. Zapomněl jsem toho strašně moc.Tohle je asi tak 10% toho co jsem dělal, jen takové ty vybrané zajímavější věci. Ty nudné a nezajímavé jsem tam samozřejmě nepsal. Osobně si myslím, že toho nedělám zas tak moc. Dní, kdy jsem nic nedělal, nebo jsem dělal něco úplně nezáživného, ale nutného byla pořád většina.
A tenhle princip se vztahuje na úplně libovolnou konzumní věc, protože designeři se samozřejmě snaží předmět přizpůsobit co největší zákaznické skupině.
Jestli má globalizace nějaká pozitiva tak to, že v globálním měřítku jsou i minoritní skupiny zákazníků zajímavé z komerčního hlediska. (ne všechny skupiny a zdaleka ne pro všechny výrobce, ale šance na propojení výrobce-výrobku-spotřebitele tu jsou přeci jen o dost vyšší než na malém lokálním trhu)
RSS feed generuje tisíce položek měsíčně a je únavné tím zaměstnávat můj mozek. Zatím jsem to rozepsal pomocí naivních bayessovských klasifikátorů, jaké se používají ve spam filtrech, ale ty neurony mi přijdou, že by mohly být úspěšnější.
A nebojíš se, že si vytvoříš svoji vlastní informační bublinu?
Ta neuronová síť, to je obecně zajímavá věc. Přibližně 80MiB blob
Tohle mne na tom trochu děsí. Pokud se nějaký proces (lidská činnost) stane závislým na klasickém programu, tak je to pořád transparentní pro člověka, tzn. můžeš si vzít zdroják, přečíst, pochopit a upravit. Ale co s blobem? Můžeš ho naučit něco nového, ale chtělo by to si nechávat i dřívější vstupní data, aby bylo možné proces učení reprodukovat. A dá se výsledek učení nějak verzovat? Vracet se zpět, větvit? Dělá se to běžně?
Druhý nováček dokončil po třech měsících parttime práce své zadání. Výsledkem je asi šest set řádek kódu (ta práce byla hodně o jednání s protistranou, ne o psaní kódu), na které jsem mu v pátek dělal code review.
Chyba je, že jsi se k tomu nedostal průběžně a dělal revizi až na konci. Ale přiznám se, že mi to taky dělá problém – když jsem zavalený jinou prací a urgentními úkoly, tak se mi taky čas na revize hledá těžko.
Jedna z věcí, které bych fakt chtěl, je objektové storage, kde vezmu objekt vytvořený u mě na počítači a prostě ho hodím na server a ten se postará o jeho prezentaci, podle metod a metadat.
Tohle mi připomíná dávné časy, kdy jsem si četl o tom, jak ukládat javovské objekty do LDAPu nebo relační databáze… Zřejmě máš (pro tenhle účel) vhodnější technologie, ale mně přijde sporná ta samotná myšlenka. IMHO je lepší oddělit data a kód.
Ačkoli většinu programátorského času trávím s nějakou formou OOP, tak mám o objektovém přístupu svoje pochybnosti resp. došel jsem k tomu, že existují dva druhy „objektů“ a zatímco u jedněch ten objektový přístup spojující data a kód dává smysl, ty druhé by měly zůstat spíše strukturami, zatímco kód by měl být uložený v procedurách.
Do té první skupiny patří abstraktní konstrukty, které primárně vznikly a žijí uvnitř počítače. Zatímco do té druhé patří struktury, které mají za úkol modelovat entity existující v AFK/vnějším světě. Do první skupiny lze někdy zařadit i objekty, které modelují ty entity z vnějšího světa a slouží jako proxy pro interakci s nimi.
S přítelkyní nebydlíme, vídáme se párkrát týdně, takže vidím jak postupuje ve skocích a víc si to uvědomuji. Baví mě pozorovat, jak objevuje svět, jak se neustále učí něco nového. Jak se vynořuje a definuje z prázdnoty nezkonfigurované mysli a vytváří si mentální modely světa.
Vytrženo z kontextu tyhle věty zní, jako bys nepsal o psovi :-)
A nebojíš se, že si vytvoříš svoji vlastní informační bublinu?Cílem je vytvořit si informační bublinu z konkrétních témat, která mě zajímají. Já čtu takhle RSS někdy od roku 2006/7, tisíce měsíčně, takže tenhle strach nemám. Problém je, že je to časově čím dál náročnější a s tím jak se sám specializuji je čím dál větší kus z toho irelevantní a také se velká část z toho opakuje. Dřív jsem například na 100 proklikaných RSS položek z
/r/programming
měl třeba 5/6 otevřených článků, které jsem přečetl. Dneska je to tak 1-2, což už se prostě těžit touhle metodou nevyplatí, tak to chce vylepšit vybavení pro těžení.
Tohle mne na tom trochu děsí. Pokud se nějaký proces (lidská činnost) stane závislým na klasickém programu, tak je to pořád transparentní pro člověka, tzn. můžeš si vzít zdroják, přečíst, pochopit a upravit. Ale co s blobem? Můžeš ho naučit něco nového, ale chtělo by to si nechávat i dřívější vstupní data, aby bylo možné proces učení reprodukovat. A dá se výsledek učení nějak verzovat? Vracet se zpět, větvit? Dělá se to běžně?Jak jsem psal, dělala to pro nás nějaká firma. Jenže se tomu prý už nechtějí věnovat, tak se snažím trochu nenápadně tlačit, abych to po nich mohl převzít. Verzování a vracení se zpět si umím představit. Ten blob imho naučit nic nového nemůžeš. Ne že by to principielně nešlo, ale já k tomu nemám žádné podklady jak a čím byl trénován, ani konkrétní scripty.
Chyba je, že jsi se k tomu nedostal průběžně a dělal revizi až na konci. Ale přiznám se, že mi to taky dělá problém – když jsem zavalený jinou prací a urgentními úkoly, tak se mi taky čas na revize hledá těžko.To psaní kódu bylo jen relativně malá část, z větší části to bylo o jednání a na tom bych zabil hodně času. Většinu toho kódu napsal během asi týdne, takže já to jako průběžně beru.
Tohle mi připomíná dávné časy, kdy jsem si četl o tom, jak ukládat javovské objekty do LDAPu nebo relační databáze… Zřejmě máš (pro tenhle účel) vhodnější technologie, ale mně přijde sporná ta samotná myšlenka. IMHO je lepší oddělit data a kód.Pro mě to není něco hrr. Je to výsledek zcela promyšlené snahy za poslední asi tři, možná čtyři roky. Imho naprosto nemá smysl snažit se modelovat objekty v něčem, co není samo o sobě programovací jazyk s nějakou mírou perzistence.
Ačkoli většinu programátorského času trávím s nějakou formou OOP, tak mám o objektovém přístupu svoje pochybnosti resp. došel jsem k tomu, že existují dva druhy „objektů“ a zatímco u jedněch ten objektový přístup spojující data a kód dává smysl, ty druhé by měly zůstat spíše strukturami, zatímco kód by měl být uložený v procedurách. Do té první skupiny patří abstraktní konstrukty, které primárně vznikly a žijí uvnitř počítače. Zatímco do té druhé patří struktury, které mají za úkol modelovat entity existující v AFK/vnějším světě. Do první skupiny lze někdy zařadit i objekty, které modelují ty entity z vnějšího světa a slouží jako proxy pro interakci s nimi.Ono hlavně to čemu se běžně říká OOP je takový divný zmutovaný a zkomolený bazmek. Například ten protypový model co používá Self je fakt něco úžasně jednoduchého a přitom silného. To jsem asi nikde replikované neviděl.
Cílem je vytvořit si informační bublinu z konkrétních témat, která mě zajímají. Já čtu takhle RSS někdy od roku 2006/7, tisíce měsíčně, takže tenhle strach nemám. Problém je, že je to časově čím dál náročnější a s tím jak se sám specializuji je čím dál větší kus z toho irelevantní a také se velká část z toho opakuje. Dřív jsem například na 100 proklikaných RSS položek z /r/programming měl třeba 5/6 otevřených článků, které jsem přečetl. Dneska je to tak 1-2, což už se prostě těžit touhle metodou nevyplatí, tak to chce vylepšit vybavení pro těžení.
V zásadě člověk potřebuje znát trendy, vědět, co všechno existuje, a mít nějakou hrubou předpověď budoucnosti – ne číst konkrétní zprávy. Je to jako se čtením novin. Ty jsou v podstatě zbytečné.1 Když budeš potřebovat nějakou konkrétní informaci, tak si ji cíleně najdeš – nemusíš kvůli tomu projíždět průběžně všechno, co vyšlo (v tu chvíli ty informace nepotřebuješ).
Taky bych si to chtěl nějak automatizovat. Chtělo by to mít informace typu: „od druhého čtvrtletí roku X se čím dál intenzivněji mluví o Y“ nebo „o Z se mluvilo první měsíc nadšeně a teď vychází čím dál víc kritických zpráv“ nebo „v projektu D se sešli lidi z projektů A, B a C, které byly úspěšné (nebo z mého pohledu zajímavé)“.
Nevím, jak je ten tvůj filtr postavený, ale pokud staví na tom, o čem dnes víš, že to existuje, a považuješ to za zajímavé, tak ti může uniknout něco, o čem jsi v době nastavení filtru ani nevěděl, že to existuje, ne?
Zatím ale bohužel nemám lepší recept, než že člověk bude vstřebávat i náhodné informace (aspoň povrchně, aby věděl, že něco existuje/vzniká).
A zpět k té automatizaci – ta stojí na tom, že jiní lidé si dali práci ty informace ručně zpracovat a ty ty jejich výstupy jen přežvýkáš nějakým algoritmem. Pokud jsi jeden z mála / první, tak to může být celkem úspěšný přístup. Jenže co když začne automatizovat víc lidí, vznikne zpětná vazba a ty algoritmy se začnou vzájemně ovlivňovat? Co když se stane něco podobného jako na burze, kde se někdy algoritmy „zblázní“ a začnou reagovat na výstupy jiných algoritmů, místo na reálnou situaci?
Imho naprosto nemá smysl snažit se modelovat objekty v něčem, co není samo o sobě programovací jazyk s nějakou mírou perzistence.
To je otázka, zda to je skutečný objekt, který žije svým vlastním životem a dělá něco sám za sebe, nebo jestli je to jen struktura, která má být obrazem nějaké reálné entity a která je někým s touto entitou synchronizována. Viz můj další komentář.
Ono hlavně to čemu se běžně říká OOP je takový divný zmutovaný a zkomolený bazmek. Například ten protypový model co používá Self je fakt něco úžasně jednoduchého a přitom silného. To jsem asi nikde replikované neviděl.
Nejde o to, jak moc je který jazyk OOP, ale jestli vůbec má to spojování stavu a chování do jednoho objektu v daném případě smysl.
[1] Ve skutečnosti tě nezajímá, že včera někoho přepadli, nebo kolik motorkářů se tenhle víkend vymlátilo. Důležitý je nějaký celkový obrázek, na základě kterého se rozhodneš. Např. „roste kriminalita → měl bych se nějak připravit“ nebo „jak moc je jízda na motorce riziková – stojí mi to za to?“
V zásadě člověk potřebuje znát trendy, vědět, co všechno existuje, a mít nějakou hrubou předpověď budoucnosti – ne číst konkrétní zprávy. Je to jako se čtením novin. Ty jsou v podstatě zbytečné.1 Když budeš potřebovat nějakou konkrétní informaci, tak si ji cíleně najdeš – nemusíš kvůli tomu projíždět průběžně všechno, co vyšlo (v tu chvíli ty informace nepotřebuješ).Já jsem noviny přestal číst už před 10+ lety a televizi taky tak. V podstatě všechno co tam je jsou dočasné sračky nulového významu, které ale zanechávají pocit, jakože mají nějaký význam, nebo důsledek pro tvůj život. Jenže nemají. To úplně vynechávám, že díky negativní zpětné vazbě jsou to většinou jen depresivní věci. Kde kdo koho zabil, co se nepovedlo a tak podobně.
Taky bych si to chtěl nějak automatizovat. Chtělo by to mít informace typu: „od druhého čtvrtletí roku X se čím dál intenzivněji mluví o Y“ nebo „o Z se mluvilo první měsíc nadšeně a teď vychází čím dál víc kritických zpráv“ nebo „v projektu D se sešli lidi z projektů A, B a C, které byly úspěšné (nebo z mého pohledu zajímavé)“. Nevím, jak je ten tvůj filtr postavený, ale pokud staví na tom, o čem dnes víš, že to existuje, a považuješ to za zajímavé, tak ti může uniknout něco, o čem jsi v době nastavení filtru ani nevěděl, že to existuje, ne?Momentálně je to primitivní blacklist. Nespecifikuji co mě zajímá, ale co mě nezajímá. I bayesovský filtr bude fungovat jako blacklist, stejně jako když třídíš spam.
A zpět k té automatizaci – ta stojí na tom, že jiní lidé si dali práci ty informace ručně zpracovat a ty ty jejich výstupy jen přežvýkáš nějakým algoritmem. Pokud jsi jeden z mála / první, tak to může být celkem úspěšný přístup. Jenže co když začne automatizovat víc lidí, vznikne zpětná vazba a ty algoritmy se začnou vzájemně ovlivňovat? Co když se stane něco podobného jako na burze, kde se někdy algoritmy „zblázní“ a začnou reagovat na výstupy jiných algoritmů, místo na reálnou situaci?Jedna z věcí, které mi silně zjednodušují život je filosofie neřešení problémů, které nemám.
To je otázka, zda to je skutečný objekt, který žije svým vlastním životem a dělá něco sám za sebe, nebo jestli je to jen struktura, která má být obrazem nějaké reálné entity a která je někým s touto entitou synchronizována. Viz můj další komentář.Meh. Přijde mi, že se bavíme o úplně odlišných věcech.
Ve skutečnosti tě nezajímá, že včera někoho přepadli, nebo kolik motorkářů se tenhle víkend vymlátilo. Důležitý je nějaký celkový obrázek, na základě kterého se rozhodneš. Např. „roste kriminalita → měl bych se nějak připravit“ nebo „jak moc je jízda na motorce riziková – stojí mi to za to?“
Doporučuji zamyslet se nad tím, jestli rostoucí počet zpráv o přepadeních nebo nehodách motorkářů opravdu nutně odráží trend v počtu těch přepadení a nehod a jestli to nemůže stejně dobře odrážet preference (nebo dokonce zájmy) těch, kdo připravují a vybírají zprávy.
A co bys doporučoval, nečíst?
Spíš vstřebávat i náhodné informace včetně těch z jiných oborů.
Jinak si myslim, že neni třeba se bát, protože v informační bublině žijeme každý z nás.
V zásadě ano, ale jde o to, co všechno ta bublina zahrnuje. Tímhle slovním spojením se většinou myslí příliš omezená bublina. Což ale u Bystroushaaka zjevně neplatí, když předpověděl např. Bitcoin a Ethereum.
Dělá se to běžně?Ano, když učíš síť, je rozumné dumpnout si občas checkpoint (protože ten runtime je nestabilní. Protože může vypadnout proud. Protože to může zdivergovat a pak se rád vrátíš k předchozí funkční verzi.). A pak jsou lidi, co dávají nadějně vypadají checkpointy ke stažení. Problém je, že typicky furt nevíš, co se v té síti děje, a jediné měřítko kvality checkpointu je jak dobře funguje na testovacích datech.
Ačkoli většinu programátorského času trávím s nějakou formou OOP, tak mám o objektovém přístupu svoje pochybnosti resp. došel jsem k tomu, že existují dva druhy „objektů“ a zatímco u jedněch ten objektový přístup spojující data a kód dává smysl, ty druhé by měly zůstat spíše strukturami, zatímco kód by měl být uložený v procedurách.A je mezi tím opravdu rozdíl? Přijde mi, že ten rozdíl je spíše v syntaxi a/nebo pojmenování než v podstatě věci...
A je mezi tím opravdu rozdíl?
Ano, myslím, že v tom právě rozdíl je. Objekt vzniká a „žije“ uvnitř informačního systému a poskytuje nějakou službu jiným objektům/komponentám nebo je naopak řídí a říká jim, co mají dělat. Ten objekt tam existuje a jedná sám za sebe. Např. to může být procesor, který je nějak nakonfigurovaný (tzn. má stav) a převádí data z jednoho formátu do druhého nebo je nějak vyhodnocuje (což může zase ovlivňovat jeho stav – např. hodnota hashe závisí na přechozích bajtech nebo hodnocení anti-spamového filtru závisí na tom, jaké e-maily přes něj prošly v minulosti).
Oproti tomu struktura je jen modelem/kopií nějaké entity z vnějšího světa (mimo tvůj informační systém) a někdo musí stav té reálné entity a toho obrazu synchronizovat. Např. když se tvůj zákazník přestěhuje, tak ty si musíš ve svém IS aktualizovat jeho adresu (a je jedno, jestli je to záznam v DB nebo struktura v operační paměti – BTW: synchronizace těchto dvou je zase další kapitola). Ta struktura se sama od sebe neaktualizuje – musí přijít někdo jiný (procedura) a provést synchronizaci. Běžně tu dochází k nekonzistencím resp. ke zpoždění – stav reálné entity se už změnil, ale struktura obsahuje ještě stará data. U skutečných objektů se to neděje, protože objekt je sám sebou, on je ten primární zdroj informace/stavu, není kopií/modelem něčeho jiného.
Něco mezi tím jsou ty proxy objekty, které zprostředkovávají přístup k entitě vnějšího světa. Např. proxy objekt, který poskytuje stav skladových zásob u dodavatele. Tenhle objekt by měl mít dvě oddělená rozhraní – jedním by poskytoval služby směrem ke zbytku IS (tvářil by se, že je sám tím skladem dodavatele) a druhé by sloužilo k synchronizaci stavu s vnějším světem (např. příjem notifikací o změně stavu zásob nebo naopak dotazování se externí služby).
Taková proxy je celkem smysluplný návrhový vzor a OOP na to sedí. Ale pak jsou tu ty modely/kopie a u nich mi OOP moc nedává smysl. Tam mi přijde vhodnější oddělení stavu a chování – tzn. struktura + procedury (byť syntakticky to můžou být zase objekty a metody, podle toho, co ti jazyk dovolí – viz níže). A tam potřebuješ synchronizovat tři místa – 1) reálná entita ve vnějším světě 2) struktura v operační paměti 3) persistentní struktura (typicky v nějaké databázi). Na synchronizaci 2 a 3 existují různé nástroje případně ti jazyk/platforma od toho umožní abstrahovat, abys ani nemusel moc řešit, zda je to ještě na disku nebo už v paměti a naopak. Ale synchronizaci 1 a 2/3 si musíš nějak zajistit sám a OOP se k tomu moc nehodí. Resp. vymyslíš tam maximálně nějaké gettery a settery. A je tam problém se sémantikou a srozumitelností rozhraní – v podstatě by ten objekt musel implementovat několik různých rozhraní, podle toho, z které strany k tomu přistupuješ. Např. když na subjektu zavoláš metodu změňAdresu()
, tak se mají jen aktualizovat data ve struktuře/databázi nebo se má té reálné entitě ve vnějším světě odeslat příkaz, aby se přestěhovala? A má se provést oboje nebo odeslat příkaz a pak počkat, až se entita přestěhuje a potvrdí nám to, a pak teprve aktualizovat strukturu / záznam v databázi?
Pak můžou ještě existovat proxy objekty, které zajišťují tu synchronizaci mezi strukturou v paměti a persistentním záznamem (databází), ale to je jen čistě technická záležitost, pomůcka k řešení nějakého technického problému. Z hlediska významu/podstaty je to jen datová struktura, která má stav, ale nemá chování.
Navrhnout systém tak, aby obsahoval objekty (spojující stav a chování) a zároveň dobře fungoval, dobře se používal a dal se rozvíjet, je hodně obtížné a v některých případech IMHO až nemožné. Takže si myslím, že oddělit stav a chování do struktur a procedur není žádná ostuda – spíš je to často to nejlepší řešení. Ten objektový přístup bych si nechal pro objekty, které vznikly a žijí primárně v informačním systému (tzn. jsou to nějaké konstrukty – služby/komponenty – vytvořené programátorem a ne kopie/modely entit z vnějšího světa).
Přijde mi, že ten rozdíl je spíše v syntaxi a/nebo pojmenování než v podstatě věci...
Je to věc sémantiky, významu. Syntaxe je daná jazykem – pokud používáš jazyk, který nepodporuje struktury, procedury ani funkce a má jen objekty a metody, tak samozřejmě vše budou objekty a metody1 a ten význam/sémantika bude patrný z návrhových vzorů a jmenných konvencí.
[1] technicky vzato – byť svým obsahem/podstatou jsou některé z nich struktury nebo procedury
Oddělení kódu a dat na struktury a procedury na jednu stranu smysl dává, ale na druhou tím rozbiješ zapouzdření.
Zapouzdření se někdy hodí z technických důvodů (např. abys někam podstrčil proxy, dělal persistenci, odchytával události, měl cache…) ale z hlediska byznys logiky a zadání tam žádné chování není – je to jen datová struktura. Abych to uvedl na pravou míru – ono až tak nevadí, že něco implementujeme (technicky vzato) jako objekt nebo že nějaký jazyk nepodporuje struktury/procedury, ale jen objekty/metody – to je celkem nepodstatný implementační detail – jde spíš o to, co do těch objektů a metod dáme – jestli to jsou (svým obsahem podstatou) skutečné objekty spojující stav a chování nebo spíš datové struktury a chování je vyčleněné jinam, do procedur (i když technicky vzato to jsou zase metody nějakých objektů, protože daný jazyk nic jiného neumí). Problém může být, když se někdo snaží z těch technických objektů (ve skutečnosti struktur) udělat skutečné objekty a nacpat do nich chování, které tam nepatří nebo které dává smysl jen z určitého úhlu pohledu na daná data nebo jen v určité životní fázi té struktury.
Koukni na Smalldb, to tak udělané je a funguje to docela dobře.
Vypadá zajímavě, ještě si to prostuduji… a koukám, že je to tvoje práce :-)
To je fajn, ale je otázka, jestli ta daň za to (složitost jazyka) není příliš vysoká.
(a to říkám z pozice člověka, který by se C++ rád naučil – ale zatím jsem do toho prostě nepronikl dostatečně na to, abych si v tom troufal psát něco seriozního)
Když používáš jazyk jako Java, tak je všechno objekt (třída, metoda), i když něco z toho je ve skutečnosti (svým obsahem, podstatou) struktura nebo procedura. Když ale použiješ třeba relační databázi jako PostgreSQL, tak tam zase budeš mít jen struktury (záznamy) a procedury (resp. tam jsou to funkce, protože mají návratovou hodnotu) a můžeš s tím postavit dobrý informační systém1. A dost možná lepší, než kdyby ses snažil „myslet objektově“ a spojoval nesmyslně data a chování dohromady v nějakém jazyce, který to umožňuje. Ono i v té Javě se hodně systémů navrhuje z velké části procedurálně a objektový přístup se používá jen pro řešení technických detailů jako persistence nebo cache (ale ne pro byznys logiku) nebo tam, kde to skutečně dává smysl (ty objekty, o kterých píšu výše, ty které jsou konstruktem programátora a vznikají a žijí primárně v tom informačním systému, nejsou to obrazy nějakých externích entit). A pak jsou jazyky, které ty datové struktury a objekty umožňují oddělit i na úrovni syntaxe, protože podporují oboje. (nicméně teď neřeším, který jazyk je lepší, mluvím o tom, co v něm člověk napíše)
[1] jen přidáš nějakou tenkou vrstvu třeba v Javě nebo PHP, která implementuje nějaký protokol pro komunikaci s okolím – ale tahle vrstva je celkem nepodstatná a není v ní žádná logika
technicky vzato – byť svým obsahem/podstatou jsou některé z nich struktury nebo proceduryVšechno jsou to procedury a struktury... Dopručuju podívat se na UFCS, pokud nejsi s tímhle pojmem už obeznámen. Myslimže pojem pochází z jazyka D, ale podobně to má v zásadě i Python a další jazyky. V podsatě jde o to, že
objekt.foobar(argument)
je identitcké s
foobar(#objekt, argument)
(Kde #
značí nějaký druh přístupu, ať už hodnota, pointer, reference, whatever - snažím se to napsat co možná obecně.)
Jde v podstatě jen o to, že jazyky k tomu prvnímu argumentu přistupují více či méně specielně. V čistém C žádný specielní význam nemá, pak je spousta jazyků někde mezi tím (D, Python, Rust, Go,...) a potom třeba v C++ a Javě je natolik specializovaný, že už se ani explicitně nevypisuje a pracuje se s ním jen nepřímo pomocí příznaků jako static
nebo const
. Ve výsledku to pak v C++, Javě apod. vypadá, jako kdyby tam ten argument nebyl, a navíc tím, že member funkce jsou namespacované jménem toho objektu a i fyzicky ve zdrojáku jsou jakoby "v něm", to budí dojem, že ten objekt "má" nějakou metodu a něco pomocí té metody dělá. Ale to je jen syntaktické divadlo, reálně to je stále to samé - prostě funkce, která má jako první/nultý argument datovou strukturu, ze který něco čte nebo do ní zapisuje. Čili tam ten rozdíl je IMHO opravdu spíše syntaktický a konvenční, faktický ale ne.
Že je dost rozdíl mezi strukturama popisujícíma externí data a interníma strukturama stroje, co se "samy" udržují aktuální, to souhlasím...
Jakmile dojde na polymorfismus, tak ten první argument určuje nejen na čem se bude pracovat, ale i která procedura se to vlastně bude volat.Tak ono když se člověk podívá do dostatečně rozsáhlé céčkové codebase, určitě tam najde struktury s pointerama na funkce, které v podstatě dělají přesně tohle. Čili ani dynamic dispatch není v zásadě žádnou změnou paradigmatu. V tom OOP je to v podstatě jen o tom, že ten synatktický cukr umožňuje psát stručnější kód (boilerplate generovaný kompilátorem), snáz to organizovat, mít v tom pořádek a nějakou štábní kulturu. V tom vidím ten přínos spíše než v nějaké změně paradigmatu. Co se týče generik, ty s tím imho vůbec nesouvisí.
když se člověk podívá do dostatečně rozsáhlé céčkové codebase, určitě tam najde struktury s pointerama na funkceA ja bych tam cekal spis Common Lisp.
najde struktury s pointerama na funkce, které v podstatě dělají přesně tohle. Čili ani dynamic dispatch není v zásadě žádnou změnou paradigmatuDivas se na celou vec prilis technicky. V diskuzi o paradigmatech programovani neni klicove, jak se dana vec da naimplementovat, ale to, jak je chapan program a data.
OOP je to v podstatě jen o tom, že ten synatktický cukr umožňuje psát stručnější kódOOP je o tom, ze ti umoznuje vyjadrit program a data urcitymi prostredky (interface, information hiding, dynamic dispatch), ze tu samou myslenku muzes vyjadrit ekvivalentnim kodem v proceduralnim jazyce neni podstatne. Dohnano ad absurdum, jestli je OOP jen syntakticky cukr na proceduralnim programovanim, da se rict, ze proceduralni programovani je synatktický cukr umožňuje psát stručnější kód (boilerplate generovaný kompilátorem), snáz to organizovat, mít v tom pořádek a nějakou štábní kulturu. (Kazdy kdo nekdy programoval v assembleru urcite taky dospel k necemu, co se podoba proceduram, a nepotreboval pro to berlicku nejakeho jazyka.) Z tohoto uhlu pohledu tvuj argument neni moc validni.
Dohnano ad absurdum, jestli je OOP jen syntakticky cukr na proceduralnim programovanim,Třeba ve Smalltalku, což je jedno z nejstarších praktických OOP je kladen brutální důraz na late binding a předávání bloků, což je ekvivalent lambda funkcí. Například if podmínka je jen metoda bool objektu, které se jako parametr předává blok s kódem. Je to procedurální programování?
v holém céčku je to typicky tak, že se předává pointer na funkci + opaque data pointer, což je v zásadě to samé, co lambda, akorát opět bez té šikovné syntaxe, pracnější, méně bezpečné, atd...Není, protože to nemá namespace místa, kde to bylo vytvořeno a nemůžeš to vytvořit v jiné funkci (closure). Reflexe je určitě fajn, ale hraje roli imho spíš ve Smalltalku jako IDE, než jako jazyku.
Není, protože to nemá namespace místa, kde to bylo vytvořeno a nemůžeš to vytvořit v jiné funkci (closure).Můžeš, ty příslušný data z toho místa, kde ty bylo vytvořeno, jsou pak v tom opaque pointeru.
Nové C už umí definovat funkce v jiné funkci? Nebo o čem se to tu bavíme?Ne-e. Mam na mysli něco takovéhleho: Python vs C. Podobné API (tj. jako ten
takes_a_linear
) je v C na každém kroku, zrovna někdy včera jsem něco zkoušel s epoll
a kqueue
, taky to tam mají takhle.
Ten komfort oproti třeba tomu pythonu nebo jiným jazykům je samozřejmě úplně někde jinde, o tom žádná. Na druhou stranu třeba ten epoll je kernelové API a když si k tomu člověk udělá vhodný binding pro nějaký vyšší jazyk (C++, D, Rust, whichever), může v podstatě předávat lambdy+closures kernelu i s tou komfortní syntaxí, což mi přijde celkem kůl...
Ne-e. Mam na mysli něco takovéhleho: Python vs C. Podobné API (tj. jako ten takes_a_linear) je v C na každém kroku, zrovna někdy včera jsem něco zkoušel s epoll a kqueue, taky to tam mají takhle.Jasně no, ale tohle není closure. Closure je https://repl.it/LwFj/6 Ono se to může zdát jako blbost, ale umožňuje to úplně jiný styl programování. Očividná věc jsou dekorátory, ale tohle má tak nějak důsledky, které se nenápadně proplíží i do zbytku jazyka a umožní ti programovat jinak. Například v tom Smalltalku, je přes bloky řešené kde co. Tam je trochu zajímavé a také odlišuje blok od lambda funkce, že když uděláš return v tom bloku, tak to nevrátí z bloku, ale z nadřazeného elementu. Například nesmyslná ukázka:
testValue: val val ifTrue: [ ^val ].Zde dojde k vrácení nejen z bloku definovaného
[]
, ale z celé metody testValue
. Což se může zdát na první pohled divné, ale umožňuje to fakt úplně jiný styl programování.
Ekvivalent v pythonu by bylo něco jako:
def testValue(val): val.ifTrue(lambda x: return x)kdyby ten return v lambdě nevrátil nejen z té lambdy, ale i
testValue
. Může se to zdát divné, když je to ale zasazené do konzistentního zbytku systému, tak to dává smysl.
Ehm, špatně. Takhle:def testValue(val): val.ifTrue(lambda x: return x)
def testValue(val): val.ifTrue(lambda: return val)
Jasně no, ale tohle není closure. Closure je https://repl.it/LwFj/6V čem se to liší od toho mého příkladu? (Capture lokálních proměnných tam mam taky...)
Zde dojde k vrácení nejen z bloku definovanéhoOk, to už je opravdu něco trochu jiného, vzhledem k tomu, že to ovlivňuje control flow té nadřazené funkce... Nadruhou stranu zrovna konkrétně v rámci toho ifu to až tak divný není, z ostatních jazyků je člověk typicky zvyklý, že return v těle ifu vrátí z celé funkce...[]
, ale z celé metodytestValue
. Což se může zdát na první pohled divné, ale umožňuje to fakt úplně jiný styl programování.
V čem se to liší od toho mého příkladu? (Capture lokálních proměnných tam mam taky...)Mno, eh, pokud na to chceš nahlížet takhle, tak jo :D
Nadruhou stranu zrovna konkrétně v rámci toho ifu to až tak divný není, z ostatních jazyků je člověk typicky zvyklý, že return v těle ifu vrátí z celé funkce...Jasně, ale tohle není návrat z těla ifu, to je návrat z bloku. A blok může být libovolný. Zajímavé je to třeba u různých iterátorů kolekcí. K tomu je taky zajímavý ten late-binding, kde předáváš do metod blok kódu ze současného namespace, který se vykoná ale „lazy“ ve chvíli, kdy je fakt třeba.
Mno, eh, pokud na to chceš nahlížet takhle, tak jo :DPočkej, opravdu nerozumim jak jsi to myslel. Je podle tebe nějaký rozdíl (z hlediska closures/lambdas) mezi tim tvým a mým python kódem? Tam totiž žádný nevidim. Nebo jsi měl na mysli mezi pythonem a C? S tím bych určitě souhlasil (konkrétně tam vidim hlavně ten rozdíl v tom, že si musím ručně vytvořit ty typy a starat se o paměť, což ten Python oboje dělá automaticky.)
Jasně, ale tohle není návrat z těla ifu, to je návrat z bloku.Jj.
A blok může být libovolný. Zajímavé je to třeba u různých iterátorů kolekcí. K tomu je taky zajímavý ten late-binding, kde předáváš do metod blok kódu ze současného namespace, který se vykoná ale „lazy“ ve chvíli, kdy je fakt třeba.To mi připomíná projekt před lety ještě na škole, kde učitelé pracovali na svém frameworku pro 3D grafiku a měli tam pro skriptování věcí vlastní jazyk podobný Tcl, který fungoval v tomhle ohledu podobně. Typicky jako handlery událostí se předávalo něco na způsob takovýchhle bloků. (Dost jsem se tehdy divil, že nepoužili Python nebo Smalltalk nebo takněco a vynalézali vlastní řešení.)
Počkej, opravdu nerozumim jak jsi to myslel. Je podle tebe nějaký rozdíl (z hlediska closures/lambdas) mezi tim tvým a mým python kódem? Tam totiž žádný nevidim. Nebo jsi měl na mysli mezi pythonem a C? S tím bych určitě souhlasil (konkrétně tam vidim hlavně ten rozdíl v tom, že si musím ručně vytvořit ty typy a starat se o paměť, což ten Python oboje dělá automaticky.)No že to musíš dělat ručně. To bys mohl vzít assembler a říct, že má closures taky, když si je tam ručně uděláš a celé to nějak ztrácí pointu.
Lambdy až tak jiné nejsou, v holém céčku je to typicky tak, že se předává pointer na funkci + opaque data pointer, což je v zásadě to samé, co lambda, akorát opět bez té šikovné syntaxe, pracnější, méně bezpečné, atd...Ta pointa je v zásadě v tom, že v C se často / typicky pro situaci, ve které v jazycích jako Python, Java, C++ apod. použiješ closure, používá její ekvivalent (namatlaný ručně). Napsal jsem to proto, že na tom je IMHO vidět, že closure (minimálně v kontextu zmiňovaných jazyků a podobně jako značná část OOP) nepřinášejí moc novou myšlenku, pouze usnadňují a zefektivňují použití již existující myšlenky pomocí syntaktického cukru a automatiky kompilátoru nebo runtime. Naproti tomu třeba použití lambd ve FP už mi jako změna myšlení připadá. Nebo třeba v Pythonu dekorátory už mi taky přijdou, že tam je nová myšlenka. Nevim no, asi věc názoru...
A
s objektem typu B
bindovat do jednoho z těch objektů, popř. obou. Jak vlastně rozhodnout, do kterého z nich to nabindovat, a proč by to vlastně mělo dávat smysl, když takové porovnání dává smysl třeba jen v jednom krátkém scopu?
Docela mi dává smysl, aby operátory byly metodami objektu, a zápis a == b
byl ekvivalentní zápisu a.==(b)
. Tak to má mimochodem Scala:
#!/usr/bin/env scala case class Value(value: Int) { def ==(value: Int): Boolean = value == this.value; } println(Value(1) == Value(2)) println(Value(1) == Value(1)) println(Value(1).==(Value(1)))Dilema, kam tu metodu umístit (v případě více typů), zůstává, ale dělá ho jen původní autor třídy. Ale proč tomu operátoru předávat i blok, který případně spustit? V čem je to výhodné? Přijde mi, že to akorát vše komplikuje a nic moc revolučního a pokrokového v tom nevidím. Asi nejvíc se mi tedy líbí to, že i primitivní typy jsou objekty – tohle vysloveně posrali v Javě.
Asi nejvíc se mi tedy líbí to, že i primitivní typy jsou objekty – tohle vysloveně posrali v Javě.Shameless plug: Rust
Docela mi dává smysl, aby operátory byly metodami objektu, a zápis a == b byl ekvivalentní zápisu a.==(b). Tak to má mimochodem Scala:Teď nějak nevím, jestli se chápem. Tohle co do funkcionality nemá žádný rozdíl.
Teď nějak nevím, jestli se chápem. Tohle co do funkcionality nemá žádný rozdíl.Jen nad tím tak spekuluji. Tímhle jsem jen chtěl říct, že docela chápu, proč může dávat smysl mít operátor součástí objektu a ne prostě natvrdo zakotvený v jazyce, ale moc nerozumím tomu zbytku. Konkrétně u těch podmínek mi to přijde takové divné. Si tak představuji, jestli pak člověk bude psát něco jako
(x < 5).ifTrue(...).else(...)
, jak by asi vypadala obdoba switch
, a tak.
Asi si prostě počkám, až o tom Smalltalku něco napíšeš.
Si tak představuji, jestli pak člověk bude psát něco jako (x < 5).ifTrue(...).else(...), jak by asi vypadala obdoba switch, a tak.To se "nedávno" objevilo v JavaScriptu. Viz MDN: Using promises.
Jen nad tím tak spekuluji. Tímhle jsem jen chtěl říct, že docela chápu, proč může dávat smysl mít operátor součástí objektu a ne prostě natvrdo zakotvený v jazyce, ale moc nerozumím tomu zbytku. Konkrétně u těch podmínek mi to přijde takové divné. Si tak představuji, jestli pak člověk bude psát něco jakoTak ono to samozřejmě nemá smysl roubovat na C-like syntaxi. Mimochodem to taky afaik (neznám, slyšel jsem) používá taky objC a Ruby.(x < 5).ifTrue(...).else(...)
, jak by asi vypadala obdobaswitch
, a tak.
Asi si prostě počkám, až o tom Smalltalku něco napíšeš.Nechci psát o Smalltalku, ale o Selfu. Je teda fakt, že ten má v tomhle zrovna syntaxi stejnou.
Mimochodem to taky afaik (neznám, slyšel jsem) používá taky objC a Ruby.Co si tak vzpomínám, deu kdysi tvrdil, že Objective-C je C s OOP nadstavbou ovlivněnou Smalltalkem.
Nechci psát o Smalltalku, ale o Selfu.Ajo.
Co si tak vzpomínám, deu kdysi tvrdil, že Objective-C je C s OOP nadstavbou ovlivněnou Smalltalkem.Je, ale má nějakou divně hybridní syntaxi, něco mezi smalltalkem a C, s tím že je to i zpětně kompatibilní s C. Ale jak píšu, nedělal jsem v tom, jen jsem na to zběžně koukal.![]()
Divas se na celou vec prilis technicky. V diskuzi o paradigmatech programovani neni klicove, jak se dana vec da naimplementovat, ale to, jak je chapan program a data.NOTABUG. Dlouhodobě se držím toho, že vnímám tu technickou podstatu jako ekvivalentně důležitou. IMHO by se tady dalo parafrázovat takovéto pořekadlo s bicyklem: Otázka, jestli je důležitější paradigma/abstrakce, nebo implementace, je jako otázka, jestli je u bicyklu důležitější přední nebo zadní kolo. "Sandboxové" jazyky jako LISP na tohle dojely. A dokonce i u té Javy je vidět podobný efekt v kontextu toho, jak se v poslední době přizpůsobuje třeba úspěchu jazyka Go (lehkotonážní GC, kompilace do statické binárky, ...). Samozřejmě na druhou stranu potom nízkoúrovňové jazyky jsou sice ok z hlediska implementace, ale na řadu věcí nepraktické/neefektivní. Takže je to IMHO o hledání té správné rovnováhy.
OOP je o tom, ze ti umoznuje vyjadrit program a data urcitymi prostredky (interface, information hiding, dynamic dispatch), ze tu samou myslenku muzes vyjadrit ekvivalentnim kodem v proceduralnim jazyce neni podstatne.To je pravda, nicméně mně na tom, že se dá stejná myšlenka vyjádřit jinými prostředky, připadá důležité to, že to člověku rozšiřuje obzory a umožňuje mu poznat, že nějaký koncept (třeba dejme tomu třída v OOP) je opravdu pouze vyjadřovácí prostředek, který není pro tu myšlenku až tak zásadně podstatný. (Tím se nechci stavět do role nějakého osvícence, taky mám v tomhle ohledu rezervy a neškodilo by mi třeba si vyzkoušet nějaký hodně jiný jazyk než na co jsem zvyklý apod. Ale člověk je limitován časem, žeano...)
Dohnano ad absurdum, jestli je OOP jen syntakticky cukr na proceduralnim programovanim, da se rict, ze proceduralni programovani je synatktický cukr (...)Je to tak
funkce(data)
namísto data.funkce()
, ale hlavně v té imutabilitě, protože to je to, co způsobuje ten jiný styl programování, ne to, že by se volaly funkce nad daty místo metod nad objektama. Pro tebe coby znalého je tohle nejspíš zřejmé, ale řadě lidí, zejména pokud se zabývají výlučně klasickým OOP, to zřejmé není...
Co se týče toho FP, tak tam ten rozdíl oproti OOP IMHO není ani tak v tom [...]Podle Oderskyho je to ortogonální – tedy můžeš programovat současně objektově a imperativně, nebo také objektově a funkcionálně. Příkladem jazyka, který propaguje druhé zmíněné, má být Scala. Když se nad tím tak zamyslíš, tak to docela dává smysl. Jsou to dvě oddělené věci:
Pro tebe coby znalého je tohle nejspíš zřejmé, ale řadě lidí, zejména pokud se zabývají výlučně klasickým OOP, to zřejmé není...Nijak zvlášť se v různých programovacích paradigmatech nevyznám. Spíš mi tak přišlo, že ty technické detaily tady nehrají moc roli a šlo spíš o ten způsob uvažování, organizaci v kódu, a tak. Prostě víc abstraktní věci.
nechci to všechno redukovat na instrukce pro CPUJaký instrukce? Instrukce jsou přece jen cukr pro mikrokód
portable asssmebly
Samozřejmě na druhou stranu potom nízkoúrovňové jazyky jsou sice ok z hlediska implementace, ale na řadu věcí nepraktické/neefektivní.Tak třeba VHDL je tak implementačně orientovaný, že se v něm nedá ani pořádně psát
To je pravda, nicméně mně na tom, že se dá stejná myšlenka vyjádřit jinými prostředky, připadá důležité to, že to člověku rozšiřuje obzory a umožňuje mu poznat, že nějaký koncept (třeba dejme tomu třída v OOP) je opravdu pouze vyjadřovácí prostředek, který není pro tu myšlenku až tak zásadně podstatný.
V zásadě máme tři úrovně: 1) myšlenka (byznys zadání) → 2) vyjádření myšlenky (zdrojový kód) → 3) implementace (převod toho lidsky čitelného kódu na něco vykonatelného procesorem).
Těch implementací může být víc – tentýž kód můžeš převést na různé spustitelné tvary (různá běhová prostředí nebo kompilátory pro tentýž jazyk). Tahle část je ale z mého pohledu nepodstatná – ty moje původní komentáře se týkaly právě přechodu mezi 1 (myšlenou) a 2 (jejím vyjádřením v kódu). A šlo mi o to, zda – resp. v kterých případech – je vhodnější pro vyjádření té myšlenky použít objektový přístup a v kterých něco jiného.
A není to ani moc otázka volby jazyka jako spíš stylu psaní / návrhu programu. I v objektovém jazyce se dá psát procedurálně1 nebo funkcionálně2.
[1] bez problémů – zato obráceně to bude horší
[2] to může trochu drhnout, bude to ukecanější, něco možná nepůjde, záleží na jazyku…
Působí to na mě jako architektonické dilema, do jaké míry oddělovat model a logikuMozna je to strach rict, ze kral je nahy, a na nektere ulohy OOP neni dobre. Radu uloh je mnohem prirozenejsi implementovat proceduralne nebo funkcionalne. Ale protoze poslednich 20 nebo 25 let se dokolecka opakovalo, ze objektove programovani je lepsi nez proceduralni, tak spousta lidi programuje s objekty. ...ale naprosto proceduralnim zpusobem a neprijde jim to divne. Typicky ruzne korporatni IS. Takovy projekt obsahuje pul tuny POJO's majici maximalne gettry, settry (v lepsi pripade i smysluplny konstruktor) a k tomu dalsi pul tuny ruznych *Servisu a *Executoru, ktere berou tyto objekty a nejak je transformuji na jine.
Mozna je to strach rict, ze kral je nahy, a na nektere ulohy OOP neni dobre.
To bylo myšleno na koho? Pokud na mně, tak bych jen připomněl, že jsem to byl já, kdo do téhle diskuse přišel s tím, že ne na všechno se hodí objektový přístup
Ačkoli většinu programátorského času trávím s nějakou formou OOP, tak mám o objektovém přístupu svoje pochybnosti resp. došel jsem k tomu, že existují dva druhy „objektů“ a zatímco u jedněch ten objektový přístup spojující data a kód dává smysl, ty druhé by měly zůstat spíše strukturami, zatímco kód by měl být uložený v procedurách.
Viz #160
Radu uloh je mnohem prirozenejsi implementovat proceduralne nebo funkcionalne.
Vždyť to říkám :-)
tak spousta lidi programuje s objekty. ...ale naprosto proceduralnim zpusobem a neprijde jim to divne. Typicky ruzne korporatni IS. Takovy projekt obsahuje pul tuny POJO's majici maximalne gettry, settry (v lepsi pripade i smysluplny konstruktor) a k tomu dalsi pul tuny ruznych *Servisu a *Executoru, ktere berou tyto objekty a nejak je transformuji na jine.
Vždyť oni ty úlohy řeší procedurálně a o to ti šlo, ne? Nemá smysl cpát objektový přístup tam, kam se nehodí – přestože programuješ (ať už z jakéhokoli důvodu – často to neovlivníš) v objektovém jazyce (resp. dneska jazyky podporují často více paradigmat současně).
Nebo co navrhuješ? Používat několik jazyků a přepínat mezi nimi podle toho, co zrovna řešíš? Co když bude daná úloha/projekt obsahovat i části, na které se hodí objektový přístup?
IMHO buďme rádi, že jazyky to OOP podporují a můžeme pomocí něj implementovat ty konstrukty, které ze své podstaty objektové jsou a nemusíme to psát celé v něčem jako Pascal nebo PL/SQL1 – což nám ale nebrání mít jiné části programu napsané formou struktur a procedur a jinde použít přístupy funkcionálního programování.
[1] Oracle tam sice něco jako objekty dodělal, ale je to tak špatné, že doporučuji se tomu vyhnout
Ale to je jen syntaktické divadlo, reálně to je stále to samé - prostě funkce, která má jako první/nultý argument datovou strukturu, ze který něco čte nebo do ní zapisuje. Čili tam ten rozdíl je IMHO opravdu spíše syntaktický a konvenční, faktický ale ne.Tohle je nepodstatny technickych detail. Vzdycky budes mit nejaka data nejake operace, ktere s temito daty pracuji. Rozhodujici je (a to je asi patrne i to, co xkucf resi), zpusob, jak tyto data a operace s nimi interpretujes. Na jedne strane mas objektovy pristup, kdy klicova je identinta daneho objektu, o datech objektu nevis nic, a interpretovat stav objektu se da pouze definovanym rozhranim. Na druhe strane mas pristup, kdy data sama o sobe jsou nositelem informace, identita je podruzna, a procedury slouzi k transformaci jedne hodnoty na druhou. Spojenim techto dvou koncepcne odlisnych pristupu navrhu dat a operaci s nimi vznikne ale akorat velice krehky domecek z karet, jak ukazuje ORM.
Občas nechápem prečo takéto blogy nemajú TUČŇÁKA?Protože ho tomu nikdo nedal. Já mám zásadu, že tučňáky nikdy vlastním blogům nedávám.
Ťažko sa vyjadriť k tak rozsiahlemu blogu, bez toho aby z toho nebol rozsiahli komentár.Co ti brání napsat rozsáhlý komentář? :)
Rád zas čítam o Selfe a Smalltalku, ľudia musia všetko objaviť minimálne dva krát aby to naozaj objavili. Kopec vedeckých objavov sa znovu objavuje, pretože ľudský život je konečný a nikto neabsorbuje všetky vedomosti. Einstein tiež len poskladal známe fakty, výhoda pre našu budúcnosť je v tom, že to všetko prečítal a posunul dobu o minimálne 50rokov.To jsem rád, protože o něm určitě budeš číst víc. Mám v plánu němu určitě napsat několik blogů. Respektive, jeden už mám napsaný, jen ho musím upravit. Pak mám připravenou sérii o Selfu jakožto o programovacím jazyku a technologii, kde se věnuji i historii a tak podobně, a snažím se to vysvětlit v celkovém kontextu. Ale tam bude ještě trvat docela dlouho, než to dopíšu.