Dneska jsem si chtěl napsat další prográmek v golangu. (Klasika, nalejvárna dat do PostgreSQL, CLI, REST). Máme tady go verze 1.8, přineslo neočekávanou novinku a to generiky (něco na ten způsob). Chtěl jsem si to vyzkoušet na dalším projektu. A místo toho dělám vše jiné :-)
Já odpočívat moc neumím. Resp. takto, pokud nemám sílu dělat to co jsem si naplánoval, dělám něco jiného. Dneska jsem chtěl programovat, těšil jsem se na to. Ale místo toho dělám něco zcela jiného. Nainstaloval jsem další DB server, hraju si s HW, připravuju si kolo na sezónu a tak dále. Prostě vše jiné než golang. ;-)
Btw. pokud chcete s golangem začít, kámoš nahrál pěkné video. Sice je to určeno pro Rubisty přecházející na golang, ale je to velmi dobrý úvod do všech akceptů jazyka formou snadno přístupnou.
O generikách v golangu si povíme jindy. Moc se mi ta změna nelíbí (ale přijdu tomu na chuť), golang je pěkný kompaktní jazyk a díky silnému statickému typování jste byli nuceni na vše psát konkrétní typy a konkrétní funkce. A to, že něco neobsahuje, je vlastnost, ne chyba. Skutečně není potřeba, aby každý systém obsahoval vše.
No, takže připravuju koleso na sezónu, hraju si se serverem, dokonce jsem zapnul Blender. Hlavně se vyhnout tomu programování. Jo, už mám dokonce i DB server a DB schéma, ale žádný řádek kódu. Prostě mozek řekl ne :-D
A ten Dell PowerEdge 2950 je sice super, ale už má svůj věk. Řadič dobrej, řadí, ale dá mu na prdel i letitý desktop server s FX8350 se ZFS. Dell má v pgbench 209tps. FX desktop-server 315tps. Dell má sice dva zdroje, lepší síťovky, hw řadič s baterkou, management kartu, dva Xeony, je to prostě server jak má být, ale má své odslouženo. Ale jako storage to bude ok.
Funguje všechno, výkon není až tak špatnej (otestováno v PovRay), ale asi nebude běžet trvale. Fakt obdivuju toho borce, kterej stále na PovRay maká. A zůstává věrný původnímu konceptu, klasickej raytracing, radiosita, modelování fotonů, C-like jazyk. Good job, bro.
Dneska tutéž scénu zvládne renderovací engine Cycles v Blenderu za zlomek času a s lepším výsledkem. Netuším, co přesně Cycles používá, ale to, na čem si PovRay vyláme zuby (radiosita + raytracing) se dá udělat „levou zadní“ pomocí ray marching (scattering). Některé věci tam jsou prostě zadarmo.
Tohle bych si chtěl taky někdy naprogramovat. Možná v důchodu? :-D
Ad „A to, že něco neobsahuje, je vlastnost, ne chyba. Skutečně není potřeba, aby každý systém obsahoval vše.“
Tohle se snažím celé roky vysvětlit lidem, kteří mi tvrdí, že v Javě „chybí“ to či ono :-) Každému člověku (nebo projektu, stylu práce…) vyhovuje trochu jiná míra bohatosti jazyka. Já se našel v té Javě (vzhledem k typu projektů, které většinou dělám) a je to můj primární jazyk, ale jsou úlohy, kde radši použiji něco jiného. Pro Golang jsem zatím využití nenašel a přišel mi vždy až příliš jednoduchý, příliš osekaný – a ta generika mi tam chyběla nejvíc. Tzn. u mě je šance, že bych to díky nim začal používat.
P.S. To FX8530 je překlep? Nemá to být FX8350? (taky ho mám)
Golang je systémový jazyk od tvůrců unixu. A přesně na to se hodí. Fakt. Beru to jako „nové C“. Velmi snadno se v tom dělají multithread věci (což se mi hodí). Pomocí kanálů. Díky tomu nemusím přejít na Erlang. Na „jednoduché“ cli věci je to super. Nebo na webserver službu. Zkus jej.
Přemýšlel jsem o klasickém C, jenže to až příliš lowlevel. Jasně, dneska třeba moderní C++ vypadá o dost jinak, ale … víš jak. A než se učit C++, tak to už rovnou Rust.
K těm generikům ještě něco někdy napíšu. Ono to tam nebylo schválně právě proto, by se psaly konkrétní funkce pro konkrétní datové typy. Já jsem generika v go nikdy nepotřeboval. V Javě jsou, jenže java nebo c# jsou postaveny zcela jinak.
Překlep opraven, díky za upozornění a máš bod za postřeh :-)
Odpočívat? Už ani nevím. Před necelými 7 lety se narodila dcera, před necelými 4 lety syn. Odpočívat třeba jednoho dne budu. Třeba jednoho dne budou děti někde na VŠ a já pomalu, ale jistě na cestě k důchodu, čili v práci budu doklusávat s haldou experience na bedrech. Pak možná půjde zase nějak odpočívat (a jsem si na nějakých 99% jist, že to nebude primárně u PC), ale do té doby to nevidím moc reálně. Ale prokrastinovat umím stále, tojo :-)…
Hehe, připomíná mi to reakce kolegy v práci. Trochu mi závidí svobodu, ale zase chce mít děti :-). Důležité je být spokojený.
Ty generika viz http://blog.rfox.eu/Paperclips/Just_a_list_of_good_programming_memes/go.png (je tam víc dobrých memů ;).
Ty se asi hodně nudíš, co? Pěkná sbírka. :-D
Doporučoval bych zavést alespoň přesměrování na https, pokud ne rovnou hsts.