Månadsarkiv: mars 2015

DDD i befintliga system

När jag var på den där workshoppen i yoga för män för ett par veckor sedan sprang jag på en gammal kollega. Vi kom efter en stund att prata om Eric Evans idéer om Domain-Driven Design (DDD). Både min kollega och jag tycker att DDD är väldigt spännande och funderingen vi vände och vred på var om och i så fall hur man ska kunna applicera i alla fall delar av DDD i befintliga projekt. Vi klurade en kort stund innan det var dags att åka hemåt för att återgå till familjelivet igen. Vad jag inte kom ihåg under vårt samtal var att just Eric Evans hade pratat om detta i en fin liten videosnutt.

Om jag inte minns fel utgick han ifrån en arkitekturell verklighet som säkert är väldigt bekant för många av oss: Big ball of mud. Hans poäng i videon (spoiler alert) är att introducera ett slags ”växthus” för de funktioner man avser lägga till eller förändra. All kommunikation mellan växthuset och resten av systemet sker genom något som i DDD kallas för Anti Corruption Layers (ACL), vilket är ett fint begrepp för datamappning som syftar till att bibehålla den interna modellen i växthuset isolerad från resten av systemet. Ett sådant upplägg gör att man i växthuset kan modellera och bygga upp någonting vackert och kanske lite sagolikt – vad vet jag.

För en systemutvecklare som har harvat runt bland svårbegriplig kod år efter år låter detta smått fantastiskt – tänk att få skapa en perfekt verklighet i en liten fin bubbla. Jag blev själv hänförd när jag såg presentationen och jag tycker fortfarande att idén är intressant, men jag tror att jag tänker på den nyktrare nu. Att bygga ett växthus mitt i en kodbas innebär ett avbräck från den befintliga arkitekturen. Jag menar att även en big ball of mud har en arkitektur, en tanke eller en ”såhär brukar vi göra” som man som utvecklare snällt har fått lära sig. Ett växthus innebär att man skapar en liten arkitektur i arkitekturen så att säga. Alla involverade måste lära sig den nya arkitekturen och förstå den för att inte kvadda den under det pågående förändringsarbete av kod som är systemutveckling. Det kräver engagemang och disciplin hos alla för att fungera.

Dessutom kan man aningen motsägelsefullt se det som att man gör koden mer svår att förstå om man ser på hela systemets kodbas sammantaget. Växthuset bryter jargongen som finns, det blir lite som att en författare helt byter sitt språkbruk för ett kapitel i en bok. Hur vacker prosan än må vara i just det kapitlet sticker det ut som förvirrande i det att det skiljer sig från resterande innehåll. Om vi sedan tänker oss att vi slänger in ett par sådana växthus med viss skillnad i arkitektur finns det risk att vi har skapat oss ett förvaltningshelvete.

Utan att vara framme vid någon slutsats tänker jag att Evans idé är väldigt djärv och att det gäller att vara sjukt säker på sin sak innan man ger sig på en sådan grej. Koden måste kommunicera bra och det gör den bäst när den är konsekvent, vacker eller ej.

Resande

Yogapasset på Ananda Yoga Studio var precis vad jag behövde efter en ganska turbulent vecka. Eller ja, hela månaden har väl mer eller mindre varit kaosig med sjukdomar som regelbundet avlöst varandra i detta elände som kallas ”vabruari”. Trötta barn, brist på sol och sömn har säkert bidragit till att mitt humör inte varit på topp den senaste tiden. Mer än en gång har jag bett barnen om ursäkt för mitt beteende när min korta stubin brunnit upp. Utan att nu försöka bortförklara är det utan tvekan ett tufft jobb att ta hand om en ettåring, en tvååring och en femåring på en och samma gång, särskilt under sjukdomstider.

Yogapasset var precis vad jag behövde eftersom mitt dåliga humör nästan hade blivit till en jargong.

Passet var precis lagom avvägt och det var länge sedan andningen och kroppen fungerade så pass bra ihop. Kanske var det för de ord vi som samlats i träningslokalen fick höra innan, under och efter de fysiska övningarna? Varianter på det som sades hade jag förvisso hört och läst massor av gånger tidigare. Kanske var jag just denna dag mottaglig för att ta in budskapet? I stora drag handlade det om att vi nu har nått mars månad och att det för var dag som går leder mot ljusare och varmare tider. Vi har också varje morgon en möjlighet att välja hur vi vill känna inför den stundande dagen.

När jag hörde detta minns jag att jag som hastigast reflekterade över min inställning som jag haft när jag vaknat upp om mornarna den senaste tiden. Den har inte varit på topp direkt. Min föräldraledighet varar till och med augusti. Det är alltså mars, april, maj, juni, juli och augusti kvar. Januari och februari – som i ärlighetens namn är riktiga skitmånader – är förbi och våren är nu här på alla möjliga sätt. Jag har dessutom bara den här chansen att vara så här nära mina barn en gång i livet. Ska jag då sura bort den chansen bara för att det i perioder är sjukt slitigt?

Idag när jag vaknade visste jag att vi inte kunde gå på sångstunden som vi brukar eftersom min äldsta son återigen hade haft en febrig natt. Vi hade alltså ingenting alls på agendan och SMHI yrkade på mulet och regn. Jag skulle säkert inte heller kunna ta med honom till dagis påföljande dag eftersom han även hade feber på morgonen. Hostig och snörvlig sprang han efter H som en svans och tjöt under morgonen eftersom hon inte hade tid till att sitta med honom i knäet. Mitt knä var som vanligt ledigt men föga intressant med H i huset. Allt detta hade vilken dag som helst kunnat leda till en sur och tvär inställning hos mig.

Men inte idag. Jag kommer säkert falla tillbaka in i min sura jargong fler gånger framöver, men inte idag. Idag skulle vi minsann ut till lekparken under förmiddagen eftersom väderprognosen var mest lovande då. Feber till trots var min inställning helt klart avgörande för att förmiddagen kom att bli en kanonmysig stund. Vi gick till parken utan stress eller bråk. Väl där hittade vi en massa saker i naturen som vi bestämde oss för att samla. Det skulle bli vårt vårpyssel. Vi hittade inte så mycket vårigt men med barns fantasi spelar det ingen roll. Efter lunch var bordet späckat med saker som vi hittat och snart hade dessa hamnat på teckningar tillsammans med vattenfärg och kritstreck. Och vi hade skitkul.

"Vår" enligt en febrig tvååring
”Vår” enligt en febrig tvååring

När jag nu sitter här med en kopp kaffe och tittar på de fina kreationerna som hänger på väggen är jag glad att jag har upptäckt det här med yoga. Undan för undan upptäcker jag nya saker och lär mig mer om mig själv – både fysiskt och mentalt – som jag tror och hoppas är till gagn både för mig och för de som finns runt omkring mig. Än är jag bara i början av en spännande och förhoppningsvis livslång resa som jag varmt kan rekommendera alla. Med risk att vara lite för mycket avslutar jag med ett ord: namaste!