Cesta samuraje, rok desátý

Blog SoftWare Samuraj slaví jubileum - desáté narozeniny! 🎂 🔟

Fluentd, case study (část 3)

Fluentd je modernější alternativou k etablovanému řešení pro sbírání distribuovaných logů. The ELK is dead, long live the Fluentd! Třetí část, s case study.

FOSDEM 2021, Monitoring & Observability room

Moje první virtuální konference, dvoudenní FOSDEM. Navštívil jsem Golang a Monitoring roomy.

FOSDEM 2021, Golang room

Moje první virtuální konference, dvoudenní FOSDEM. Navštívil jsem Golang a Monitoring roomy.

Jak vlastně funguje proxy?

Proxy. Taková běžná věc. 🤷‍♂️ Co to vlastně ale je a jak funguje? 🤔

Remote debugging v Golangu

Návod jak z Goland IDE (nebo IntelliJ IDEA) debuggovat Golang aplikaci běžící v Dockeru.

Fluentd, lehký úvod (část 2)

Fluentd je modernější alternativou k etablovanému řešení pro sbírání distribuovaných logů. The ELK is dead, long live the Fluentd! Druhá část, s praktickým příkladem.

Fluentd, budoucnost logování (část 1)

Fluentd je modernější alternativou k etablovanému řešení pro sbírání distribuovaných logů. The ELK is dead, long live the Fluentd! První část.

Distribuovaný monolit

Distribuovaný monolit je občasné téma, které se často vynoří při diskuzích o microservices. Většinou je to dost vágní a zaměřené na architekturu.

Terraform Data Sources, jak se dotazovat na zdroje v cloudu

Vytvořit a zrušit infrastrukturu pomocí Terraformu je přímočaré. Jak se ale na jednotlivé zdroje dotazovat? Pomocí Terraform Data Sources.

Twitter Cards a Hugo šablony

Zachtělo se mi mít pro blog pěkné linky na Twitteru. Aneb, jak vytvořit Twitter Cards v Hugo šabloně.

Cesta samuraje, rok devátý

Člověk se ani nenaděje a už jsou tady další narozeniny. Tentokrát to pojmu trochu jinak a nebudu psát o osobních věcech, ale podívám se statisticky trochu zpět. Heslo dne? Tagy & grafy.

Infrastructure as Code, lehký úvod

Infrastructure as Code (IaC) je relativně novým trendem v softwarovém inženýrství. Proč si nepřečíst, co si o tom myslí tenhle Samurájek, co se prsí, že to přednáší na univerzitě? 🤭 Nadpis nelže - jde o opravdu lehký úvod do problematiky. (Abychom nikoho nevystrašili.)

Terraform discovery OCI zdrojů

Terraform je vůdčí nástroj v oblasti Infrastructure as Code. OCI je etablovaná cloud infrastruktura. Jak jdou tyhle dvě věci dohromady? Překvapivě dobře, ale to není nic nového. Zajímavá je ale jedna vlastnost - Resource Discovery (alias Reverse Engineering). A na tu se dnes podíváme.

Nový blog živě ve 30 minutách

Založil jsem si nový blog a od rozhodnutí začít do chvíle kdy byl blog online, včetně domény, mohlo uběhnout 30 minut. 😎 Dobře, kecám. 🤭 V některých věcech jsem puntičkář, takže další věci (jako CSS) jsem ladil dalšího půl dne. 😇

Lead or Follow? 🤔 Bullshit!

Jsou to dva roky, co jsem opustil team leaderské pozice a vrátil se k čistému programování. Nechal jsem téma dozrát a v průběhu času přemýšlel nad vhodnou formou. A mimochodem... není nad to, začít článek úderným titulem! 🤭

Vim: (dávkové) spouštění ex příkazů

Čas od času si člověk vytuní ve Vimu nějaký příkaz, nebo regex a rád by se k němu vrátil. Nebo ho opakovaně používal. Genialita Vimu nezná mezí a tak jdou tyto věci udělat na dvě-tři klepnutí prstu. Lighning speed. ⚡

Software Engineering, má rozumné paralely? Díl 2, hudba

Software engineering je mladé odvětví, které není ještě úplně pochopeno a popsáno. Proto se někdy vyplatí hledat paralely v jiných oborech, které lépe osvětlí daný problém, či myšlenku. Jedna taková paralela pochází z říše hudby.

Hledám do našeho týmu backend vývojáře

Opět jsem se rozhodl "jít tomu štěstíčku trochu naproti" a publikovat zde další pracovní inzerát. Protože hledám nové lidi k nám do týmu a rád bych našel někoho, kdo bude kompatibilní s mým přístupem k softwarovému inženýrství

Bye, bye, Sometimes Clojure

Před 9 lety jsem začal psát blog Sometimes Clojure. Dnes jsem ho zrušil. Teda... částečně.

Cesta samuraje, rok osmý

SoftWare Samuraj dosáhl satori. Je spokojený a tak nepíše. Je tak spokojený, že se mu dokonce ani nechtělo napsat tenhle článek. Je spokojený se svou prácí, je spokojený se svou rodinou, je spokojený se svým životem. Už vám řekl, že je spokojený?

Remcání proti Javě

Na některé věci potřebuje mít člověk odstup. Odstup a zkušenosti z jiných oblastí. Co mě udeřilo do očí, když jsem se po čase vrátil k Javě?

Práce s Vim buffers

Práce s buffery ve Vimu může být pro uživatele náročná. Jak zjistit jaké buffery jsou k dispozici? Jak otevřít ten správný buffer? Jak ho otevřít na správném místě? SoftWare Samuraj sepsal svoje nejoblíbenější Vim-buffer příkazy.

Git fork synchronizace

Fork repozitory na GitHubu/GitLabu/Bitbucketu je otázka jednoho kliknutí. Stejně tak triviální je fork lokálně naklonovat. Jak ale řešit synchronizace mezi dvěma remote repozitory? Krátký cheat-sheet (tahák) jak na to.

Monitoring OCI instancí pomocí Prometheus (Service Discovery)

Monitorování je důležitou součástí produkčních aplikací. Co když ale chceme monitorovat cloudovou infrastrukturu, nebo aplikace běžící v cloudu? Prometheus je etablovaným řešením pro tyto případy, kdy out-of-the-box umoňuje monitorovat většinu známých platforem. Bohužel, podpora pro OCI (Oracle Cloud Infrastructure) zahrnuta není a tak jsem si ji musel napsat sám.

Migrace z Blogger na Hugo a GitLab Pages

Migrace 100 článků z jednoho blogovacího systému do jiného. Kolik je s tím práce a co to obnáší? Co všechno je potřeba nastavit a upravit? Blog SoftWare Samuraj se přestěhoval z Blogger.com na dvojkombinaci Hugo + GitLab Pages.

Golang micro-services, první ohlédnutí

Je to zhruba půl roku, co jsme začali vyvíjet nový produkt: smečku mikro-servis, běžících v cloudu (nebo v Dockeru). Všechny jsou napsány v Golangu a protože to pro náš 2-pizza team byla nová technologie, bylo dobré si udělat retrospektivu.

GopherCon UK 2018, den 2

V minulé části jsme se podívali na první den londýnské Golang konferencce GopherCon UK. Čvrteční přednášky nebyly až tolik Golang-technické (a žádná z nich nebyla advanced) a z tohoto pohledu byl páteční den přínosnější i zajímavější.

GopherCon UK 2018

Londýnská konference o Golangu se konala ve dnech 1.–3. srpna a ne jen tak ledaskde, ale přímo v The City, v prostorách bývalého pivovaru z 18. století, The Brewery. Luxusní místo pro konferenci.

Správa proprietárních závislostí v Golang

Golang není zas až tak nový jazyk, a ačkoliv se v něm příjemně píše, má vývoj v Golangu určitá úskalí a výzvy. Poslední tři měsíce jsem se tématu verzování, závislostí, reprodukovatelnosti a automatizaci Go buildů intenzivně věnoval a řekl bych, že to soudruzi z U.S.A "nedotáhli úplně dokonce".

Cesta samuraje, rok sedmý

Byl to těžký rok. A byť, z hlediska blogování, to byl rok velice úspěšný, tak co mi v hlavě utkvívá, jsou ty negativní věci. Ale nesmutněme - SoftWare Samuraj má narozeniny!

Maximální počet otevřených souborů v Ubuntu

Operační systémy a někdy i přímo jazyky, či jejich runtimy mají omezený maximální počet otevřených souborů. Z bezpečnostních a performance důvodů. Občas se vám stane, že na tento limit narazíte a potřebujete ho upravit. Jak to pořešit na Ubuntu?

Jak se staví tým

Když dostanete možnost postavit nový tým, nebo třeba významně doplnit ten stávající, měli byste mít nějakou vizi, jak ten tým bude vypadat. Protože budování týmu nekončí přijímacím pohovorem. Nekončí ani po zkušební době, či úplném zapracování. Ono totiž nekončí nikdy.

Spring Security, SAML & ADFS: Implementace

V minulém dílu jsme se vyřádili na konfiguraci, tak teď už jen zbývá to nabouchat v tom Springu, ne? Mám pro vás jednu dobrou a jednu špatnou zprávu.

Spring Security, SAML & ADFS: Konfigurace

Posledně jsme se podívali jaký je mechanismus SAML autentikace. Tenhle článek se bude zaměřovat na konfiguraci potřebnou pro to, aby nám SAML autentikace fungovala.

Spring Security, SAML & ADFS: Úvod

Úvodní díl 3-dílného miniseriálu o Spring Security, SAML a ADFS. Podíváme se, co jednotlivé zkratky znamenají a jak to celé funguje. Včetně krásných barevných diagramů.

Nešvary logování

Logování je jedna z nejvíce zanedbávaných oblastí. Samozřejmě, logování je v každé aplikaci a všichni o sto šest logují: chaoticky, nekonzistentně, bez vize, bez přemýšlení. A občas jsou ty logy dost odpudivé smetiště.

vimdiff, nástroj drsňáků

Už patnáct let je Vim můj nejoblíbenější textový editor. A občas, čas od času, i hlavní nástroj na programování. Ale vždycky jsem se jako čert kříži vyhýbal jedné věci - používání vimdiff. Nicméně na každého jednou dojde.

Trampoty s JUnit 5

Poslední dobou jsem moc nepsal unit testy v Javě. Jednak jsem posledního půl roku hodně prototypoval a když už jsem testy psal, tak to bylo převážně ve Scale, nebo v Clojure. Ale teď se naskytla příležitost ošahat si nové JUnit 5.

1:1, nejdůležitější nástroj team leadera

Říká se tomu one-on-one. V psané podobě můžete narazit na zápis OoO, O-o-O, 1on1 a různé další. Já používám 1:1. Setkal jsem se s širokou paletou lidí a jejich zkušeností s 1:1. Jsou tací, kteří 1:1 nikdy neměli a někdy o něm dokonce ani neslyšeli. Jsou lidi, pro které je to jenom takový "manažment folklór". A pak je menšina těch, kteří 1:1 očekávají a vyžadují.

Technical Leader, mytické stvoření

Technical leader je jedna z těch rolí, o které se občas mluví, ale nikdo pořádně neví, co to znamená. Je to takové, trochu mytické stvoření. A co když, nedejbože, někdo takovou roli vyfasuje? Co má taková role na starosti? SoftWare Samuraj poodkrývá roušku tajemství a nechá vás spatřit nefalšovaného jednorožce.

Kniha Clojure Applied

Kniha Clojure Applied je občas na internetu doporučovaná jako "druhá" kniha o Clojure, kterou byste si měli přečíst. Osobně bych řekl, že spíš než "druhou", bych ji doporučil jako "třetí".

Střípky z prototypování II: WebSockets

Jak přinutit Wicket, aby se choval víc reaktivně? Stačí zapojit WebSockets. Není to úplně triviální, ale dá se to zprovoznit.

Smutná zpráva o stavu IT trhu

Strávil jsem teď posledních pět měsíců hledáním nové práce. Nebylo to radostné období, bylo to tristní. Aneb reflexe technických pohovorů z pohledu SoftWarového Samuraje.

Střípky z prototypování: Wicket, Spring, REST

Vytvořil jsem si několik prototypů a o některé z nich bych se rád podělil. Začneme trojkombinací Wicket, Spring, REST.

Šest ctností softwarového inženýra

Rád hledám paralely k softwarovému inženýrství. Jedna taková mne hned napadla při čtení budhistické knížky pro děti. Může se programátor vydat na dlouhou cestu bódhisattvy?

Clojure web development: Ring Middleware

Poté, co jsme se podívali jak v Clojure zpracovat HTTP request a response, budeme pokračovat dalším obohacením tohoto základního webového paradigmatu a sice pomocí konceptu Middleware.

Cesta samuraje, rok šestý

Blog SoftWare Samuraj má šesté narozeniny. Tradiční retrospektiva.

Covariance & Contravariance

Variance je obecný pojem, který říká, jakým způsobem funguje subtyping u komplexních typů a může být trojího druhu: Invariance, Kovariance a Kontravariance. Jak to funguje pro pole a kolekce v Javě a ve Scale?

REST contract-first: Swagger & Gradle

Mám rád přístup contract-first. U webových služeb založených na SOAP je to poměrně etablovaný přístup. U těch REST-ových to ještě není tak jednoznačné, ale také už se to vyvíjí správným směrem. A tak SoftWare Samuraj přináší krátký tutorial, jak tento problém řešit pomocí Swagger a Gradle.

Clojure web development: Ring

Webový vývoj v Clojure je dobře etablovaný. Nebylo by to ale Clojure, kdyby si věci nedělalo trochu po svém. Dnes se podíváme jak pořešit esenci webového vývoje - HTTP request a response.

CAP Theorem

Byl jsem tudlevá na pohovoru a dávali mi tam CAP Theorem. Trochu jsem vařil z vody a tak jsem se na to podíval trochu podrobněji.

Kniha Living Clojure

Vrátil jsem se po čase ke Clojure a věrný svému přístupu jsem sáhnul po knize. Living Clojure od Carin Meier je dobrá kniha pro (věčné) Clojure začátečníky.

Clojure concurrency: Vars

Významnou vlastností Clojure jsou neměnitelné datové struktury. Vyvstává otázka: jak s neměnitelnými daty pracovat? Částečnou odpovědí na to jsou Vars - základní stavební kámen pokročilejších konceptů.

Catalanova čísla a syntax highlighting

Jak naimplementovat Catalanova čísla v Clojure? Buď pomocí kombinačních čísel, anebo stylovou rekurzí. GitHub projekt included.

Jak dělám Java pohovor IV: Java workshop

SoftWare Samuraj odtajnil svoje know-how: jak dělat na technickém pohovoru Java workshop. Vhodné i pro jiné jazyky a technologie.

Programátor -> Vývojář -> Software Engineer

Pokud člověk zůstane pár let v jedné profesi a nezaseknul se někde na začátku, prochází určitým vývojem. Jak může vypadat jedna z možných evolucí adepta softwarového inženýrství?

Merge dvou tabulek v Pythonu

Potřeboval jsem udělat merge dvou tabulek a udělat z nich hierarchický index. A páč jsem si zrovna pohrával s data science, 🤭 vybral jsem si k tomu Python Pandas.

GeeCON Prague 2016, den 2

Druhý den pražské vývojářské (Java) konference GeeCON. Dobré přednášky, špatné kafe. ☕

GeeCON Prague 2016, den 1

Navštívil jsem po čase vývojářskou konferenci. Jaký byl první den pražského GeeCONu?

Software Engineering, má rozumné paralely?

Rád hledám paralely k softwarovému inženýrství. Trošku jsem se nad tím zamyslel a snad z toho vznikne krátký seriál.

Jak dělám Java pohovor III: phone screen

Jedna z věcí, ke kterým jsem došel a považuji ji za nutnost při technickém recruitingu, je phone screen. Jediný případ, kdy ho nedělám, je buď že mám s daným člověkem přímou pracovní zkušenost, anebo jsme se předtím už osobně setkali. Jak takový phone screen může vypadat?

Cesta samuraje, rok čtvrtý

Blog SoftWare Samuraj má čtvrté narozeniny. Tradiční retrospektiva.

Můj pohled na Agile Prague 2014

Byl jsem na konferenci Agile Prague. Bylo to poprvé a hned tak se tam nevrátím. Ne, že bych své účasti litoval, ale celkový dojem z konference mám rozpačitý - pro koho je vlastně určena?

Mercurial, strategie branch-by-feature

V distribuovaných version control systémech se člověk nějakému způsobu branchování nevyhne. Je dobré si nastavit nějaké konvence a ideálně - branchovací strategii.

Kanban, zprávy z fronty II

Podařilo se nám na projektu celkem pěkně naimplementovat Kanban. Jak to v našem podání vypadalo? Pěkně!

Code review checklist

To jsem se zase jednou připletl do diskuze o code review. 🤦‍♂️ Tak jsem se nad tím zamyslel a něco si k tomu sepsal.

Jak dělám Java pohovor II: proč nedávám testy?

Dávání testů při přijímacích pohovorech považuji za hloupost a nepochopení smyslu interview. Zkuste testy nedávat, nebo se nad tím aspoň zamyslet - proč to děláte?

Cesta samuraje, rok třetí

Blog SoftWare Samuraj má třetí narozeniny. Tradiční retrospektiva.

Třetí rok s Kindlem

Je to už třetí rok, co čítávám odborné knihy výhradně na Kindlu. Letos se docela urodilo - celkem jsem přečetl 20 knih, z toho třetinu o leadershipu.

Kanban, lehký úvod

Po roce používání Kanbanu jsem se rozhodl sepsat úvod do Kanbanu. Citace z knih a příklady konkrétních kanban boardů. 🤓

Certifikace Java EE 6 JPA Developer

Absolvoval jsem Java EE 6 JPA Developer certifikaci. O čem to je, co jsem studoval a co mi to přineslo?

Jak se nabírají Javisti na Filipínách

Měl jsem výjimečnou zkušenost - podílet se na zakládání nového vývojářského centra... na Filipínách. Neopakovatelný zážitek! Aneb, jak jsou na tom filipínští javisti?

Gradle tutorial: tasky (pokračování)

V minulém díle Gradle tutorialu jsme si vystřihli rafinované Hello world a řekli jsme si něco o základním stavebním prvku každého build skriptu — Task, to je to, oč tu běží. Dnesk se na tasky podíváme podrobněji.

Zdravý programátor

Pryč jsou doby, kdy stačilo, aby byl programátor pragmatický. Dnes musí být ještě navíc zdravý. Programátoři totiž často vedou dosti nezdravý způsob života. Recenze knihy, která radí ke svému (programátorskému) zdraví přistupovat agilně.

Kontrakt místo pohovoru, je to reálné?

Poslední dobou se nám nějak rozmohlo zadávání projektů namísto (anebo hlavní gró) přijímacích pohovorů. SoftWare Samuraj si nemyslí, že je to dobrý nápad. Ale může se mýlit.

Hledám do svého týmu Java vývojáře

Rozhodl jsem se "jít tomu štěstíčku trochu naproti" a publikovat zde pracovní inzerát. Proč? Protože hledám lidi k sobě do týmu. Bude to lepší, než čekat, koho mi najde HR oddělení, nebo pošle nějaká agentura. Zkrátka, vytvářím si vlastní příležitost.

Team Geek, team leader se srdcem

Chlapci z Googlu (bývalí) napsali knihu o teamleadingu. Je dobrá - strukturovaná a myslí na lidi.Patterns & antipatterns included.

Gradle tutorial: tasky

V tomto díle Gradle tutoriálu se podíváme, jak se pracuje s tasky.

Joel test, má ještě smysl?

Jako vývojáři jste se možná už někde setkali s Joelovým testem. Když jsem na něj cca před osmi lety narazil, bylo to pro mne jako zjevení. A pracoval jsem ve společnosti, jejíž skóre v tomto testu bylo... ehm, nula.

Měl by mít vývojář portfolio?

Pokud přijdete jako vývojář na pohovor a přinesete ukázku své práce, buďte si jistí, že jste vystoupili z řady - téměř nikdo to totiž nedělá.

Mercurial, jak nastavit P4Merge jako nástroj pro vizuální merge a diff

Gradle, moderní nástroj na automatizaci

Gradle je nástroj na automatizaci. Potřebujete udělat build, mít Continuous Integration, zprovoznit deployment, generovat dokumentaci, připravit release, dojít nakoupit a vyvenčit psa? Gradle je to pravé pro vás!

Cesta samuraje, rok druhý

Blog SoftWare Samuraj má druhé narozeniny. Tradiční retrospektiva.

Perforce best practices

Vytvoření JMS Bridge na WebLogicu

Geek, který zapadne

Jak se správně rozhodnout po úspěšném pracovním pohovoru? Překlad článku Being the Geek Who Fits od Andyho Lestera.

Oracle EDN, implementace EDA

Oracle SOA certifikace

Druhý rok s Kindlem

Tak jsem strávil druhý rok s Kindlem. Jaké odborné knihy mojí čtečkou protekly? Bylo jich méně, než loni, ale to nevadí - důležité je nepřestávat číst.

Jak dělají Java pohovor jinde

Prošel jsem několik pracovních pohovorů a sepsalsi svoje zkušenosti. Bylo to zajímavé srovnání s tím, jak dělám technický pohovor já.

Vytvoření JDBC datasource na WebLogicu pomocí WLST

Vytvoření WebLogic Distributed Queue pomocí WLST

Kanban, zprávy z fronty

SoftWare Samuraj se pokusil o svoji první implementaci Kanbanu na projektu - stylem pokus omyl a nedopadlo to úplně špatně. Zkušenost je pozitivní a příště bych to zkusil znova.

Odstranění metadat z MDS

Dead Letter Channel nebo Invalid Message Channel? Toť otázka

Java a fault handling policies v Oracle SOA Suite

SOA Patterns, kniha

DOM, Java a odstranění child nodes

Custom XSLT funkce v Oracle SOA Suite

Technologické blogování

Recenze knihy o technologickém (odborném) blogování. Aneb jak se z neznámého, katatonického bloggera stane celosvětová hvězda softwarového světa, vydělávající miliony dolarů. 😎

Životní cyklus webových služeb

Jak dělám Java pohovor

Svého času mi na internetu hodně chyběl popis interview z pohledu pohovorujícího. A protože se posledních pár let věnuju technickým pohovorům, nechávám nahlédnout do své kuchyně.

Verzování XSD v SOAP webových službách

Verzování webových služeb, SOAP

Architektonické principy RESTu

Při studiu na Java certifikaci pro webové služby jsem se musel připravit i na část zahrnující REST. A jak se líp připravit, než sdílením informací?

Management za zavřenými dveřmi

Certifikace Java EE 6 Web Services Developer

Lean ze zákopů

Recenze knížky Lean from the Trenches. Má krátký rozsah a je nabitá informacemi. 🔫

Kanban, ultimátní kniha

Bible Kanbanu. Krátká recenze a pár citací.

Kanban z čistého nebe

Přišel jsem ke Kanbanu jak slepý k houslím. Ale já se na ty housle hrát naučím! Kde s Kanbanem začít a od čeho se odpíchnout?

SOA governance, lehký úvod

Perforce, ignorování souborů a adresářů ve streamu

Perforce, instalace serveru P4D

Perforce, ignorování souborů a adresářů

Map a reduce, funkcionální elegance

Při studiu Hadoopu jsem si odskočil ke Clojure "zkontrolovat", jak fungují funkce map a reduce - jeden ze základních kamenů funkcionálního programování.

Hadoop, lehký úvod do HDFS

Maven, buildovací a konfigurační profily

Maven profily můžou být silným nástrojem, pokud potřebujeme upravit build. Podíváme se, jak přes profily nastavit konfiguraci resources.

Cesta samuraje, rok první

Blog SoftWare Samuraj slaví první narozeniny. Malé ohlédnutí, z něhož se časem jistě vyvine silná tradice.

Leiningen, jak nemít vlasy v ohni

Leiningen je buildovací a projektový nástroj pro Clojure, který se velmi silně inspiroval Javovským Mavenem. Jeho podtitulem je "automating Clojure projects without setting your hair on fire".

Flex, pár drobností

Oracle, vyhodnocení časových podmínek

ActiveMQ, messaging podle Apache

Lepší testování v Clojure: Midje

Midje je úspěšná TDD knihovna pro Clojure unit testy. Jejím autorem je jeden ze signatářů Agile Manifesto, Brian Marick.

Změna syntax highlightingu a konvence kódu

Všechno má svůj vývoj a tak jsem se rozhodl změnit jednak syntax highlighting a jednak způsob zápisu Clojure kódu. Obojí - samozřejmě - k lepšímu ;-)

Flex certifikace

WebSphere MQ, interakce s Javou

WebSphere MQ, vzdálené posílání zpráv

Rok s Kindlem

Koupil jsem si Kindle a musím říct, že za ten rok jsem četl, jak urvaný ze řetězu... 17 odborných knih! 🤦‍♂️

ePub v cloudu

(Ne)funkční tým

Občas se vám stane, že jako team leader vyfasujete nepřátelský tým. Inspiraci jak řešit tuto těžkou situaci možná najdete v knize The Five Dysfunctions of a Team. Krátká recenze + pár citátů.

UML certifikace, OCUP Intermediate

Jak se připravit na UML certifikaci OCUP Intermediate? SoftWare Samuraj sdílí svoje tipy a triky.

Zemřel John McCarthy, tvůrce Lispu

24. října 2011 se uzavřela životní cesta Johna McCarthyho, tvůrce Lispu.

Enterprise integrace, messaging

Messaging může být jedním ze způsobů integrace enterprise komponent. Jaké jsou základní koncepty messagingu? (A knížka jako bonus.)

ThoughtWorks Radar zmiňuje Clojure

Firma ThoughtWorks nedávno zveřejnila svůj Technology Radar a hned třikrát tam zmínila Clojure. To nebude náhoda.

ThoughtWorks Radar, zajímavé technologie

ThoughtWorks Radar monitoruje zajímavé technologie v oblasti SW inženýrství. Jáká byla edice 2011 a co zajímavého v něm shledal blog SoftWare Samuraj?

Testování v Clojure

I když Rich Hickey říká, že nepíše unit testy, tak my všichni ostatní samozřejmě testy píšeme. A to i v Clojure!

Změna domény: clojure.cz

Z rozmaru jsem se podíval, jestli je volná doména clojure.cz a... byla. Tak jsem si ji vzal.

Nazdar světe! říká ClojureScript

Vyzkoušel jsem si ClojureScript v alpha verzi. Zatím je to použití dost hard-core, jen pro silné jedince. Ale to se časem jistě změní.

Destilované UML

Recenze knížky UML Distilled od Martina Fowlera. Pokrývá UML verze 2.0 a zabývá se zasazením diagramů do kontextu SW vývoje.

PragPub píše o ClojureScriptu

Můj oblíbený e-časopis PragPub obsahuje článek o ClojureScriptu. 👍

Manažerem humorně a kousavě

Recenze knížky Managing Humans. Softwarový inženýři jsou také lidé - aspoň tak se na ně s nadhledem a humorem dívám Michael Lopp (Rands in Repose).

Jak měnit neměnitelné. Refs

Clojure používá immutable data. Pokud potřebujeme mutable data, řeší to Clojure "měnitelnou referencí na neměnitelný objekt". :-) Jedním z prostředků, které to řeší jsou Refs - transakční reference.

Nekonečná lenost sekvencí

Clojure obsahuje lazy (líné) sekvence, což je velmi šikovný funkcionální koncept. Zejména, pokud je taková sekvence nekonečná! 🤭

PragPub se věnuje Clojure

Můj oblíbený e-časopis PragPub věnuje celé číslo Clojure! 👍

Rich Hickey: Radši trávím čas přemýšlením o problému

Rich Hickey je osobnost s vyzrálými myšlenkami, kterého stojí za to číst a nechat se jím inspirovat. Odkaz na rozhovor, který s Richem vedl Michael Fogus.

Odhady pracnosti softwaru

Jak dělat odhady může být docela častá a zapeklitá otázka nejednoho SW inženýra Jak k odhadům přistupuje SoftWare Samuraj? Studuje mistry a jde svou vlastní cestou.

Master your tools!

Master your tools! Nový blog o softwarovém inženýrství.

Second mission

Taková drobnůstka z použití Clojure na realný problém - transformace dat v tabulce.

Uzávěr v laboratoři (jak začít)

Způsobů, jak si vyzkoušet Clojure je celá řada - od online interpreterů a tutoriálů, až po lokálně zpustitelný "labrepl", tutoriál zpustitelný z REPL.

Sní androidi o Clojure?

Jak to vypadá s podporou Clojure na Adroidu?

Currying

Currying je zajímavý koncept funkcionálního programování, dostupný v mnoha jazycích. Jak se používá v Groovy a v Clojure?

First mission

Vyzkoušel jsem si první reálnou úlohu v Clojure - produktivita nula, ale učící křivka mocně poposkočila. 😅

Functions without side effects

Malé zamyšlení nad funkcionálním konceptem "functions without side effects".

Konečně kód!

Kratičký Clojure zápis, hlavně na ladění syntax highlightingu. :-)

Clojure web-app

Trošku jsem na internetu zapátral, jak je to s využitím Clojure pro webové aplikace. A ejhle! Něco je k dispozici.

Sometimes Clojure

Sometimes Clojure... nový blog o funkcionálním jazyku... Clojure.