<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Några ord från Agical</title>
    <link>https://blog.agical.se/</link>
    <description>(Agical's blog)</description>
    <image>
      <url>https://blog.agical.se//apple-touch-icon.png</url>
      <title>Några ord från Agical</title>
      <link>https://blog.agical.se/</link>
    </image>
    <generator>Hugo -- gohugo.io</generator>
    <language>sv</language>
    <copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright>
    <lastBuildDate>Thu, 11 Sep 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://blog.agical.se/" rel="self" type="application/rss+xml" />
    
      
          
          
          <item>
            <title>Tjafset på utvecklings-avdelningen - varför fattar de inte?</title>
            
            <link>https://blog.agical.se/posts/tjafset-pa-utvecklings-avdelningen-varfor-fattar-de-inte-x-/</link>
            <pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/tjafset-pa-utvecklings-avdelningen-varfor-fattar-de-inte-x-/</guid>
            <description>&lt;p&gt;Har du någon gång haft den där känslan av förvirring, frustration,
irritation eller rent av ilska över att de inte förstår hur man
utvecklar mjukvara eller driver IT-projekt? Att de prackar på dig sina
regler och uppfattningar utan att förstå att det är en dålig idé.&lt;/p&gt;
&lt;p&gt;Om du är utvecklare kanske du har upplevt att det är som att tala med
en vägg när du försöker förklara varför Jira inte behövs i just det här
fallet. Eller standup-mötet, eller en omständlig riskanalys som bara tar
tid från att lösa det verkliga problemet?&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/tjafset-pa-utvecklings-avdelningen-varfor-fattar-de-inte-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Har du tagit din Jira-ticket?</title>
            
            <link>https://blog.agical.se/posts/har-du-tagit-din-jira-ticket-x-/</link>
            <pubDate>Fri, 04 Jul 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/har-du-tagit-din-jira-ticket-x-/</guid>
            <description>&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/har-du-tagit-din-jira-ticket-x-/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Har du tagit din Jira-ticket?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Om du går till nästan vilken IT-avdelning som helst idag, som
utvecklar digitala produkter och tjänster, så möts du av Jira. Den nya
tidens standardverktyg för att “hantera krav”. Du kanske till och med
får höra att “här jobbar vi agilt, allt vi gör ligger i Jira” (att just
det uttalandet är ett missförstånd går vi in på en annan gång)&lt;/p&gt;
&lt;p&gt;Så här kan det låta på ett morgonmöte:&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/har-du-tagit-din-jira-ticket-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Prydligt, tydligt, synligt</title>
            
            <link>https://blog.agical.se/posts/prydligt-tydligt-synligt/</link>
            <pubDate>Thu, 26 Jun 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/prydligt-tydligt-synligt/</guid>
            <description>&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/prydligt-tydligt-synligt/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;En del av professionella kockars förberedelser innefattar &lt;em&gt;Mise en
place.&lt;/em&gt; Bokstavligen - “allt i ordning”. Verktyg och ingredienser
inom räckhåll. Upphackat, portionerat, klart. Ett systematiskt sätt att
förbereda sig inför tillagning av en måltid, tillika en självklarhet på
fina restauranger.&lt;/p&gt;
&lt;p&gt;Min erfarenhet är att motsvarande vanor inom vårt skrå är kraftigt
underutnyttjat. Speciellt tydligt blir det när grupper försöker arbeta
ihop. Vilket är svårt nog utan ordningen och redan som Mise en place
bidrar till.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/prydligt-tydligt-synligt/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>IT-systemet som inte gick sönder på 20 år</title>
            
            <link>https://blog.agical.se/posts/it-systemet-som-inte-gick-sonder-pa-20-ar/</link>
            <pubDate>Mon, 09 Jun 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/it-systemet-som-inte-gick-sonder-pa-20-ar/</guid>
            <description>&lt;p&gt;Den här historien handlar om ett administrativt kursplaneringssystem.
I en offentlig verksamhet. Det utvecklades med stöd av konsulter, i en
upphandling, enligt lagens alla regler. För 20 år sedan.&lt;/p&gt;
&lt;p&gt;Inom vissa andra områden, såsom nätverk eller telekommunikation,
förväntas ofta extrem stabilitet, upptid och leveransförmåga. Dessa
attribut anses vara en självklarhet. Det blir glasklart om du tänker dig
att din telefon eller ditt wifi bara fungerade 60% av tiden.&lt;/p&gt;
&lt;p&gt;I administrativa stödsystem finns dock helt andra förväntningar.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/it-systemet-som-inte-gick-sonder-pa-20-ar/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Kan du säga 10 meningar utan att döma?</title>
            
            <link>https://blog.agical.se/posts/kan-du-saga-10-meningar-utan-att-doma-x-/</link>
            <pubDate>Mon, 09 Jun 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/kan-du-saga-10-meningar-utan-att-doma-x-/</guid>
            <description>&lt;p&gt;Den här historien handlar om ett administrativt kursplaneringssystem.
I en offentlig verksamhet. Det utvecklades med stöd av konsulter, i en
upphandling, enligt lagens alla regler. För 20 år sedan.&lt;/p&gt;
&lt;p&gt;Inom vissa andra områden, såsom nätverk eller telekommunikation,
förväntas ofta extrem stabilitet, upptid och leveransförmåga. Dessa
attribut anses vara en självklarhet. Det blir glasklart om du tänker dig
att din telefon eller ditt wifi bara fungerade 60% av tiden.&lt;/p&gt;
&lt;p&gt;I administrativa stödsystem finns dock helt andra förväntningar.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/kan-du-saga-10-meningar-utan-att-doma-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Rödluvan och standardsystemet</title>
            
            <link>https://blog.agical.se/posts/rodluvan-och-standardsystemet/</link>
            <pubDate>Fri, 28 Feb 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/rodluvan-och-standardsystemet/</guid>
            <description>&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/rodluvan-och-standardsystemet/image2.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Det var en gång en ung programmerare som trivdes med att gå klädd i
en röd hoodie. Hon blev därför kallad Rödluvan, vilket hon var helt nöjd
med.&lt;/p&gt;
&lt;p&gt;En dag bad hennes mor att hon skulle gå till mormor och hjälpa henne
i bageriet, det var tydligen ett mjukvaruproblem i någon av de maskiner
mormor använde.&lt;/p&gt;
&lt;p&gt;– Nu går du raka vägen dit, förmanade modern som visste att Rödluvan
ibland scrollade på mobilen och kom på andra tankar.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/rodluvan-och-standardsystemet/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Den sjungande apan</title>
            
            <link>https://blog.agical.se/posts/den-sjungande-apan/</link>
            <pubDate>Thu, 20 Feb 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/den-sjungande-apan/</guid>
            <description>&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/den-sjungande-apan/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;En gång för länge länge sedan, i ett land långt långt borta, härskade
den goda Feymild Albida. Det var en god härskare som ville sina
undersåtar väl. Under decennier hade skördarna varit goda, och fred
rådde i landet, men det var något som saknades. Trots sin klokhet och
godhet kom Feymild ingen vart i sina tankar, det var stopp. Till slut
bestämde sig den gode härskaren för att kalla på en av sina bästa
rådgivare. Rådgivaren kom omedelbart.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/den-sjungande-apan/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Gåtor, problem och rediga röror!</title>
            
            <link>https://blog.agical.se/posts/gator-problem-och-rediga-roror/</link>
            <pubDate>Wed, 29 Jan 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/gator-problem-och-rediga-roror/</guid>
            <description>&lt;p&gt;När vi ska reda ut röror behöver vi flera infallsvinklar. Tekniska,
organisatoriska och inte minst mänskliga perspektiv. Dessa perspektiv
får vi bara genom att ta ett steg tillbaka och analysera situationer
ordentligt. Men innan vi kastar oss över analyser och lösningar behöver
vi förstå vad vi står inför.&lt;/p&gt;
&lt;p&gt;Är det en gåta, ett problem eller är det en enda redig röra?&lt;/p&gt;
&lt;h3 id=&#34;ett-vardagsrum-någonstans-i-sverige-någon-gång-på-80-talet&#34;&gt;Ett
vardagsrum, någonstans i Sverige, någon gång på 80-talet&lt;/h3&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/gator-problem-och-rediga-roror!/image1.jpg&#34; /&gt;&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/gator-problem-och-rediga-roror/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Go see för att förstå behov och krav</title>
            
            <link>https://blog.agical.se/posts/go-see-for-att-forsta-behov-och-krav/</link>
            <pubDate>Thu, 19 Dec 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/go-see-for-att-forsta-behov-och-krav/</guid>
            <description>&lt;p&gt;“Gå och se” (genchi genbutsu) är en princip från Toyota Production
System. Det betyder ungefär samma sak som att “gå en mil i någon annans
skor”. Det är ett utmärkt sätt att korsa gränser, förstå varandra och
öppna dörrar för kommunikation.&lt;/p&gt;
&lt;p&gt;Det innebär att åka till “den plats där det faktiska arbetet utförs”.
För bussförare är det bussen. För en marknadsförare är det skrivbordet
och den bärbara datorn. För en fabriksarbetare: fabriksgolvet. Jag har
lärt mig att det är lätt att tillämpa “Go see” i alla situationer när
man vill främja förståelse, insikter och samarbete.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/go-see-for-att-forsta-behov-och-krav/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Får det lov att vara 10 gånger tidigare?</title>
            
            <link>https://blog.agical.se/posts/far-det-lov-att-vara-10-ganger-tidigare-x-/</link>
            <pubDate>Wed, 25 Sep 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/far-det-lov-att-vara-10-ganger-tidigare-x-/</guid>
            <description>&lt;p&gt;Ekot av ett snärtigt slag tonar ut. En man grinar illa och vänder sig
om för att dölja sina känslor. Spänningen i luften går att ta på.
Kameran zoomar ut och vi ser två män som stirrar på varandra. Det är
tydligt att det är en kraftmätning som pågår.&lt;/p&gt;
&lt;p&gt;Båda rättar till sin hållning och tar några steg i sidled. Den yngre
av dem lutar sig sakta framåt och intar en försvarsposition. Den äldre
söker ögonkontakt och nickar sedan mot sin motståndare. Två sekunder
senare klipper den äldre mannen till. Ett tekniskt kliniskt slag som
överraskar. Den unga mannen stapplar baklänges.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/far-det-lov-att-vara-10-ganger-tidigare-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Samtal: Hur får Agical saker att fungera?</title>
            
            <link>https://blog.agical.se/posts/samtal--hur-far-agical-saker-att-fungera-x-/</link>
            <pubDate>Wed, 19 Jun 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/samtal--hur-far-agical-saker-att-fungera-x-/</guid>
            <description>&lt;p&gt;Alldeles nyligen besökte jag Agical, ett mjukvaruföretag i Stockholm
som arbetat agilt i många år, och som lyckats mycket väl med det. Jag
har varit på besök tidigare, men det är mer än tio år sedan, så det var
dags att återknyta bekantskapen.&lt;/p&gt;
&lt;p&gt;Att arbeta agilt har blivit väldigt populärt, men det har också lett
till att idéerna tunnats ut på många arbetsplatser. Ola Ellnestam, VD på
Agical, och jag, bestämde oss för att skriva en artikel ihop och visa
hur agilt arbete på Agical fungerar.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/samtal--hur-far-agical-saker-att-fungera-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Från många bollar i luften - till förmågan att hålla fokus</title>
            
            <link>https://blog.agical.se/posts/fran-manga-bollar-i-luften---till-formagan-att-halla-fokus/</link>
            <pubDate>Tue, 13 Feb 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/fran-manga-bollar-i-luften---till-formagan-att-halla-fokus/</guid>
            <description>&lt;p&gt;I många år har förmågan att “Hålla många bollar i luften”
efterfrågats. Kravet tycks ha varit obligatoriskt i varje jobbannons
sedan 90-talet. Oavsett om det handlar om gruppchefer,
utvecklingschefer, testledare, produktägare, scrum masters, analytiker,
eller kundservice..&lt;/p&gt;
&lt;p&gt;Lägg också till att ha möten “back-to-back” hela dagen, har setts som
något positivt. Något att skryta om.&lt;/p&gt;
&lt;p&gt;Fullbokad kalender = Hög status!&lt;/p&gt;
&lt;p&gt;“Oj, vilken kalender, möten mellan 8-17”&lt;/p&gt;
&lt;p&gt;“Wow, du måste vara duktig på att hålla många bollar i luften”&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/fran-manga-bollar-i-luften---till-formagan-att-halla-fokus/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Askungen</title>
            
            <link>https://blog.agical.se/posts/askungen/</link>
            <pubDate>Tue, 28 Nov 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/askungen/</guid>
            <description>&lt;p&gt;Det var en gång en ung flicka som alltid varit nyfiken, ända sedan
hon lärde sig prata. Hennes far var från ett land långt bort och pratade
engelska. Han hade fått en sträng uppfostran och tyckte att hon var
alldeles för frågvis.&lt;/p&gt;
&lt;p&gt;– All you do is ask, ask and then ask some more, brukade han
utbrista.&lt;/p&gt;
&lt;p&gt;Det var så hon fick smeknamnet Askungen.&lt;/p&gt;
&lt;p&gt;När Askungen blivit stor, gått ut skolan och börjat arbeta, så var
det som programmerare. Hon visste att det fanns många tillfällen till
arbete i yrket men som oerfaren var det svårt ändå. Till sist fick hon
jobb på det stora bolaget AB Bank och Försäkringsförvaltning, BOFF.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/askungen/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Snövit och de 7 egenskaperna</title>
            
            <link>https://blog.agical.se/posts/snovit-och-de-7-egenskaperna/</link>
            <pubDate>Sat, 04 Nov 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/snovit-och-de-7-egenskaperna/</guid>
            <description>&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/snovit-och-de-7-egenskaperna/image5.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Det var en gång en furste som bodde i ett slott. Fursten hette
Princip och bestämde vilken arkitektur som just nu var bäst.&lt;/p&gt;
&lt;p&gt;Varje morgon frågade Princip sin spegel Internet:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Spegel, spegel som på nätet är&lt;br /&gt;
Säg mig vilken bästa arkitekturen är?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Varje morgon svarade spegeln:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Din arkitektur bäst i världen är.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Princip blev lika glad varje gång och gick sedan för att fundera på
vilken som skulle vara nästa arkitektur. Mer distribuerad eller kanske
mer centraliserad? Eller någon annan aspekt. Likt modets flyktiga väsen,
där inte bara kjollängder varierar utan också många andra detaljer,
skiftade Princips rekommenderade arkitektur på flera sätt.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/snovit-och-de-7-egenskaperna/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Ej Inga Norska Avi-justeringar – säg vad du menar</title>
            
            <link>https://blog.agical.se/posts/ej-inga-norska-avi-justeringar--x--sag-vad-du-menar/</link>
            <pubDate>Thu, 17 Aug 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/ej-inga-norska-avi-justeringar--x--sag-vad-du-menar/</guid>
            <description>&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/ej-inga-norska-avi-justeringar--x--sag-vad-du-menar/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Sliter ni också ert hår när ni läser otydligheter i mejl?&lt;/p&gt;
&lt;p&gt;Vänder ni på klacken när ni ser svamliga textväggar på
intranätet?&lt;/p&gt;
&lt;p&gt;Vill er inre språkpolis bara gå hem och kura ihop sig till en boll
när ekonomichefen langar fram slajd på slajd med syftningsfel och
särskrivningar staplade på varandra?&lt;/p&gt;
&lt;p&gt;Jag förstår er, ta ett djupt andetag och läs vidare.&lt;/p&gt;
&lt;p&gt;Smaka på följande bokstavs-sallad: hasNoNoNotAdjs(...)&lt;/p&gt;
&lt;p&gt;Ni som var med på 90-talet tror kanske att raden ovan är en textrad
från 2 UNLIMITEDs &#34;No Limit&#34;.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/ej-inga-norska-avi-justeringar--x--sag-vad-du-menar/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Börja slutför</title>
            
            <link>https://blog.agical.se/posts/borja-slutfor/</link>
            <pubDate>Fri, 07 Jul 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/borja-slutfor/</guid>
            <description>&lt;p&gt;Det är augusti. Du är peppad efter en vederkvickande semester.
Telefonen ringer och du svarar glatt.&lt;/p&gt;
&lt;p&gt;- Det här kundsegmentet är kritiskt, morrar en kollega över telefon.
Märkbart förargad.&lt;/p&gt;
&lt;p&gt;Du kan inte låta bli att dras med i argumentationen och tankarna
börjar snurra.&lt;/p&gt;
&lt;p&gt;- Okej, vi kör, säger du. Motvilligt&lt;/p&gt;
&lt;p&gt;Samtidigt funderar du. Hur lång tid tar det där kundsegmentet att
fixa, egentligen.&lt;/p&gt;
&lt;p&gt;Du avslutar samtalet med din kollega.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/borja-slutfor/image1.jpg&#34; /&gt;&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/borja-slutfor/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Tre är det mest magiska talet</title>
            
            <link>https://blog.agical.se/posts/tre-ar-det-mest-magiska-talet/</link>
            <pubDate>Mon, 08 May 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/tre-ar-det-mest-magiska-talet/</guid>
            <description>&lt;p&gt;Dynamiska duos finns det gott om. Batman och Robin. Thelma och
Louise. C3P0 och R2D2. Det kan bli charmiga, gripande eller nördiga
interaktioner. Vi kan dock inte skaka av oss känslan av att någon
saknas.&lt;/p&gt;
&lt;p&gt;Något gnager.&lt;/p&gt;
&lt;p&gt;Vad händer om vi lägger till en part? Vad händer om vi går från duo
till trio? En annan sorts dynamik infinner sig omedelbart.
Konstellationen upplevs som mer komplett. Vi går från en balansakt till
en stabil och förlåtande interaktionsmodell med helt andra
förutsättningar.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/tre-ar-det-mest-magiska-talet/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Parprogrammering, är du galen?</title>
            
            <link>https://blog.agical.se/posts/parprogrammering--ar-du-galen-x-/</link>
            <pubDate>Fri, 05 May 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/parprogrammering--ar-du-galen-x-/</guid>
            <description>&lt;p&gt;&lt;em&gt;Vi ser ett öde kontorslandskap. Klockan är 08:37, och det är
måndag morgon. Kameran zoomar ut och två människor kommer in i bilden
från höger. Båda bär på en kaffekopp och personen till vänster bär,
förutom kaffekoppen, en pärm under armen.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;“Vi har otroliga problem efter våra driftsättningar”, morrar personen
till vänster. Märkbart stressad. Sen fortsätter hon. “Som om inte det
vore nog, så har vår mest rutinerade och erfarna programmerare Lise
sjukskrivit sig”. “Ånej, inte Lise”, flikar personen till höger in och
smuttar på sitt kaffe. Samtidigt som hon tittar över muggens kant.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/parprogrammering--ar-du-galen-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Problem med kravspecen?</title>
            
            <link>https://blog.agical.se/posts/problem-med-kravspecen-x-/</link>
            <pubDate>Fri, 03 Feb 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/problem-med-kravspecen-x-/</guid>
            <description>&lt;p&gt;Ganska ofta dyker frågan upp från någon släkting eller bekant som
brottas med ett system av något slag. “Vi har problem med kravspecen.
Var kan jag ta reda på hur man gör med specen? Vad kan jag läsa eller
lära mig mer?”&lt;/p&gt;
&lt;p&gt;Utan att fördjupa oss närmare i orsaker till problem med specar just
nu, så har vi några tips och förslag. Nyligen hade vi en konversation i
Agical-chatten.&lt;/p&gt;
&lt;h2
id=&#34;har-du-någon-referens-om-kravspecifikation-för-mjukvara-som-du-kan-rekommendera&#34;&gt;Har
du någon referens om kravspecifikation för mjukvara som du kan
rekommendera?&lt;/h2&gt;
&lt;p&gt;P: Jag fick en förfrågan från min släkting ni kanske kan hjälpa mig
med?&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/problem-med-kravspecen-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Hoppa över till Rust</title>
            
            <link>https://blog.agical.se/posts/hoppa-over-till-rust/</link>
            <pubDate>Thu, 10 Nov 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/hoppa-over-till-rust/</guid>
            <description>&lt;p&gt;Jag har konverterat ett spel, Infinite Bunner, skrivet med
spelramverket PyGame Zero i Python till spelramverket &lt;a
href=&#34;https://macroquad.rs/&#34;&gt;&lt;u&gt;Macroquad&lt;/u&gt;&lt;/a&gt; i
programmeringsspråket &lt;a href=&#34;https://rust-lang.org/&#34;&gt;&lt;u&gt;Rust&lt;/u&gt;&lt;/a&gt;.
Detta som en del av projektet &lt;a
href=&#34;https://github.com/rust-gamedev/rust-game-ports&#34;&gt;&lt;u&gt;Rust Game
Ports&lt;/u&gt;&lt;/a&gt; från &lt;a href=&#34;https://gamedev.rs/&#34;&gt;&lt;u&gt;Rust gamedev working
group&lt;/u&gt;&lt;/a&gt;. Projektet innehåller ett flertal spel skrivna i olika
spelramverk i Rust som har konverterats från andra språk eller ramverk.
Det är tänkt att kunna användas som referens för hur spel kan se ut i
olika spelramverk i Rust.&lt;/p&gt;
&lt;p&gt;Jag blev intresserad av just Infinite Bunner när jag läste boken &lt;a
href=&#34;https://wireframe.raspberrypi.org/books/code-the-classics1&#34;&gt;&lt;u&gt;Code
the Classics vol. 1&lt;/u&gt;&lt;/a&gt; från Wireframe Magazine. Boken innehåller
historien om fem klassiska arkadspel och fulla källkoden för moderna
versioner av spelen. Infinite Bunner är baserat på den gamla klassikern
Frogger där spelaren styr en groda över farliga bilvägar och floder för
att ta sig hem till sitt bo. I den här moderniserade versionen får den
stackars grodan fortsätta i all evighet.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/hoppa-over-till-rust/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Är du rostig på presentationer?</title>
            
            <link>https://blog.agical.se/posts/ar-du-rostig-pa-presentationer-x-/</link>
            <pubDate>Fri, 04 Nov 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/ar-du-rostig-pa-presentationer-x-/</guid>
            <description>&lt;p&gt;&lt;em&gt;Skapa vackra presentationer från en enkel textfil&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Har du någon gång bråkat med en presentationsprogramvara för att få
det att se ut som du vill? Skulle du vilja ha ett enklare sätt att
skriva presentationer? Då är programmet Rusty Slider för dig!&lt;/p&gt;
&lt;h2 id=&#34;räddningen&#34;&gt;Räddningen&lt;/h2&gt;
&lt;p&gt;Applikationen Rusty Slider är till för alla som ska hålla i en
presentation men har tröttnat på att använda Powerpoint eller Keynote.
Skriv hela presentationen i en vanlig texteditor med hjälp av Markdown.
På så sätt kommer du snabbt till kärnan i presentationen och undviker
att slösa en massa tid på utseendet. Slutresultatet blir ändå vackert
tack vare Rusty Sliders visualisering av innehållet.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/ar-du-rostig-pa-presentationer-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Det lekfulla perspektivet</title>
            
            <link>https://blog.agical.se/posts/det-lekfulla-perspektivet/</link>
            <pubDate>Thu, 13 Oct 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/det-lekfulla-perspektivet/</guid>
            <description>&lt;h3 id=&#34;drömmar-om-lego&#34;&gt;Drömmar om lego&lt;/h3&gt;
&lt;p&gt;Om en hjärna kan bli fyrkantig så blev min det någonstans i
10-årsåldern. Jag ägnade ett ohälsosamt antal timmar i veckan åt Lego,
åtminstone enligt min mamma. “Du kan inte sitta inne hela dagarna och
bygga Lego, du måste ut och leka …”. Men jag ville inte gå ut. Jag ville
stanna inne och bygga med mitt Lego, sortera mitt Lego och planera
Lego-byggen.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/det-lekfulla-perspektivet/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Min mamma förstod ju såklart att jag älskade Lego och nöjde sig till
slut med att sucka lätt åt mitt ointresse att leka utomhus. Hon tittade
till mig då och då där jag satt på golvet och roade mig själv. Hon såg,
likt tjuren Ferdinands mamma, att jag trivdes. Så hon lät mig leka med
mitt kära Lego.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/det-lekfulla-perspektivet/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Samarbete samtidigt</title>
            
            <link>https://blog.agical.se/posts/samarbete-samtidigt/</link>
            <pubDate>Fri, 07 Oct 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/samarbete-samtidigt/</guid>
            <description>&lt;p&gt;Tycker du att ditt team bara irrar, byter arbetsuppgifter och har
svårt att fokusera? Tycker du att ni arbetar för lite tillsammans. Du är
inte ensam, vi har också känt så. Vi vet också att det finns sätt att
strukturera sitt arbete som underlättar samarbete. Men för att komma dit
behöver vi fundera över hur vi arbetar idag.&lt;/p&gt;
&lt;p&gt;Under många år har utvecklarskrået sneglat på olika yrken och försökt
efterlikna deras processer. Programmering likställs med den mer konkreta
världen och förhoppningen är att sysslorna ska vara ungefär som fysiskt
arbete. Det ska vara förutsägbara, okomplicerade och synliga steg mot
målet. Precis som i tillverknings- eller byggindustrin.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/samarbete-samtidigt/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Därför kastade jag av mig det agila oket</title>
            
            <link>https://blog.agical.se/posts/darfor-kastade-jag-av-mig-det-agila-oket/</link>
            <pubDate>Wed, 28 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/darfor-kastade-jag-av-mig-det-agila-oket/</guid>
            <description>&lt;p&gt;Agila arbetsplatser är lite av en varningssignal för mig. Jag börjar
genast fundera på om det betyder att det är en massa möten och ritualer
jag förväntas delta i, fast jag kanske sitter som på nålar och bara vill
fixa den där buggen eller nya funktionen.&lt;/p&gt;
&lt;p&gt;Är det bara jag?&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/darfor-kastade-jag-av-mig-det-agila-oket/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Egentligen gillar jag idén med att arbeta så att det är lätt och
billigt att korrigera fel. Jag har jobbat med utveckling i en eller
annan form i 35 år. Att det går att göra saker på ett stelt, trögt och
dåligt sätt så att så många som möjligt har ångest känner jag mycket väl
till. Jag ordnade själv flinkt att det blev så om jag tilläts ha
tillräckligt med inflytande.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/darfor-kastade-jag-av-mig-det-agila-oket/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Så påverkas jag av snabb återkoppling</title>
            
            <link>https://blog.agical.se/posts/sa-paverkas-jag-av-snabb-aterkoppling/</link>
            <pubDate>Fri, 23 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/sa-paverkas-jag-av-snabb-aterkoppling/</guid>
            <description>&lt;p&gt;&lt;strong&gt;Att säga att jag uppskattar återkoppling skulle vara en
underdrift. Jag älskar det. Vikten av återkoppling var något som ofta
togs upp under min utbildning. Det är verkligen en värdefull metod för
att hitta rätt.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Jag heter Carl. Jag är UX-Designer på Agical.&lt;/p&gt;
&lt;p&gt;En del av mitt arbete är att att ta fram nya arbetsflöden i
IT-system. För omsätta idéer till en del av produkten behöver jag hjälp
av programmerare. Jag hade en aning om att återkoppling kunde hjälpa
mig. I stället för att jobba själv i långa perioder bestämde jag mig för
att söka återkoppling oftare än vanligt.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/sa-paverkas-jag-av-snabb-aterkoppling/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Den Agila teatern presenterar: Fabriken</title>
            
            <link>https://blog.agical.se/posts/den-agila-teatern-presenterar--fabriken/</link>
            <pubDate>Wed, 21 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/den-agila-teatern-presenterar--fabriken/</guid>
            <description>&lt;p&gt;Tänk dig att du upptäcker fördelarna med att äta vegetariskt. Du mår
mycket bättre, känner dig piggare, och din mage fungerar perfekt. En dag
möter du en vän och berättar om det fantastiska i att äta vegetariskt.
Din vän låter sig övertygas och beger sig till en vegetarisk restaurang
för att prova.&lt;/p&gt;
&lt;p&gt;När ni återigen träffas är din vän märkbart besviken och ventilerar
sina åsikter om hur dålig den vegetariska dieten är. Framförallt var
köttet väldigt segt. Du tittar förundrat på vännen och frågar om det
verkligen var en vegetarisk restaurang, det borde inte vara kött i
maten. Absolut, svarar vännen, de var t o m certifierade av en
organisation som dykt upp nu när den vegetariska dieten blivit
populär.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/den-agila-teatern-presenterar--fabriken/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Madonna kan krascha ditt IT-system</title>
            
            <link>https://blog.agical.se/posts/madonna-kan-krascha-ditt-it-system/</link>
            <pubDate>Tue, 13 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/madonna-kan-krascha-ditt-it-system/</guid>
            <description>&lt;p&gt;Det var dags att gå hem, lugnet hade infunnit sig på kontoret och det
vara bara jag och en kollega kvar. Då kom en användare gående. En av
handläggarna som använder systemet jag och mina kollegor programmerar på
varje dag. Det är inte ovanligt i sig, men jag kände på mig att en udda
förfrågan hängde i luften.&lt;/p&gt;
&lt;p&gt;“Ola …”, började användaren trevande. “... kan jag fråga en
sak?”.&lt;/p&gt;
&lt;p&gt;“Självklart, det går alltid bra.”, svarade jag glatt.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/madonna-kan-krascha-ditt-it-system/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Berättelsen om hur akvariet blev till</title>
            
            <link>https://blog.agical.se/posts/berattelsen-om-hur-akvariet-blev-till/</link>
            <pubDate>Wed, 24 Aug 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/berattelsen-om-hur-akvariet-blev-till/</guid>
            <description>&lt;p&gt;&lt;em&gt;Eller; “Vaför jag valde att använda Rust och Macroquad för att
utveckla en datavisualiseringsapplikation”&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Att använda ett akvarium för datavisualisering är något jag har
funderat över längre än jag kan minnas. Därför är jag inte helt säker på
hur jag kom på idén. Men jag har alltid tyckt att statiska grafer är
ganska tråkiga att titta på. Däremot är en skärmsläckare med fiskar som
simmar omkring mer rofyllt.&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/berattelsen-om-hur-akvariet-blev-till/image1.png&#34; /&gt;&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/berattelsen-om-hur-akvariet-blev-till/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Topplocket går!</title>
            
            <link>https://blog.agical.se/posts/topplocket-gar/</link>
            <pubDate>Wed, 24 Aug 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/topplocket-gar/</guid>
            <description>&lt;p&gt;En kort historia om en helt vanlig funktion på ett kontor som retade
gallfeber på personalen.&lt;/p&gt;
&lt;h2 id=&#34;det-var-en-gång&#34;&gt;Det var en gång&lt;/h2&gt;
&lt;p&gt;För några år sedan lackade jag ur fullständigt på vårt kontor.&lt;/p&gt;
&lt;p&gt;Hur kunde det bli så? Vårt fina kontor.&lt;/p&gt;
&lt;p&gt;Vi hade precis renoverat köket för hundratusentals kronor och det var
väldigt snyggt. Stilrena luckor. Läckra lådhandtag. En lyxig stenbänk.
Stora papperskorgar. Till och med en stadig vinkyl var installerad. Jag
var nöjd. Riktigt nöjd faktiskt.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/topplocket-gar/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Kalla mig inte för en resurs, tack</title>
            
            <link>https://blog.agical.se/posts/kalla-mig-inte-for-resurs-tack/</link>
            <pubDate>Fri, 03 Jun 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/kalla-mig-inte-for-resurs-tack/</guid>
            <description>&lt;p&gt;Jag fyller i en uppdragsoffert i &lt;a
href=&#34;https://keysourcingtool.com&#34;&gt;KeySourcingTool&lt;/a&gt; och snubblar på
första fältet. De ber om Resursens namn. Vad kan det vara? Eftersom jag
har varit med ett tag misstänkte jag att det kunde vara mig de avsåg,
men jag frågade ändå deras utmärkta och supersnabba support. Där fick
jag veta att det faktiskt är mig de kallar för resurs.&lt;/p&gt;
&lt;p&gt;I rent ekonomiska termer stämmer det förvisso, men på ett mänskligt
plan känns det som ett hemskt knasigt ord att referera till någon man
ska samarbeta med. En Iron Maiden-sång gör sig påmind i mitt sinne.
Något med ”I am not a number! I am a free man!”.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/kalla-mig-inte-for-resurs-tack/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Säg det med fiskar!</title>
            
            <link>https://blog.agical.se/posts/datavisualisering-som-ett-akvarium/</link>
            <pubDate>Thu, 24 Feb 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/datavisualisering-som-ett-akvarium/</guid>
            <description>&lt;p&gt;Visualisera din affärsdata som fiskar som simmar i ett akvarium.&lt;/p&gt;
&lt;h2 id=&#34;gammal-tråkig-visualisering&#34;&gt;Gammal tråkig visualisering&lt;/h2&gt;
&lt;p&gt;Vi har alla haft tråkiga stapel- och linjediagram som visar hur våra
system mår. Viktiga affärshändelser kopplas på ett föga engagerande vis
till datapunkter och misslyckas därför ofta med att bli information för
betraktaren. Dessa visualiseringar tenderar att vara statiska, väldigt
tekniska och så tråkiga att den som tittar på dem riskerar att
somna.&lt;/p&gt;
&lt;h2 id=&#34;använd-ett-akvarium-istället&#34;&gt;Använd ett akvarium istället!&lt;/h2&gt;
&lt;!--![](/images/datavisualisering-som-ett-akvarium/image2.png)--&gt;
&lt;canvas id=&#34;glcanvas&#34; tabindex=&#34;1&#34; style=&#34;width: 100%;&#34;&gt;
&lt;/canvas&gt;
&lt;script src=&#34;mq_js_bundle.js&#34;&gt;&lt;/script&gt;
&lt;script&gt;load(&#34;rusty-aquarium.wasm&#34;);&lt;/script&gt;
&lt;p&gt;Applikationen Rusty Aquarium visualiserar datapunkter som fiskar som
simmar runt i ett simulerat akvarium. Det kan användas för att
presenteras på en TV på kontoret. Olika datapunkter kopplas till olika
sorters fiskar, såväl som storlek, hur snabbt de simmar och även till
rörelsebubblor.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/datavisualisering-som-ett-akvarium/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Snacka om bra utveckling</title>
            
            <link>https://blog.agical.se/posts/snacka-om-bra-utveckling/</link>
            <pubDate>Tue, 22 Feb 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/snacka-om-bra-utveckling/</guid>
            <description>&lt;p&gt;Hur många gånger har vi inte svurit över vårt eget beteende eller
våra kollegors när det inte blir som vi tänkt oss. Hur många gånger har
vi inte önskat att vi agerat annorlunda. Förmodligen alldeles för ofta.
Men det är ju så lätt att hitta saker som är fel, saker som avviker och
saker som vi vill bli av med. Så det kanske inte är så konstigt
ändå.&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/snacka-om-bra-utveckling/snacka-whiteboard.jpg&#34; /&gt;&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/snacka-om-bra-utveckling/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Var sak inom digital utveckling förtjänar sin tid - även analys?</title>
            
            <link>https://blog.agical.se/posts/var_sak_fortjanar_sin_tid/</link>
            <pubDate>Mon, 24 Jan 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/var_sak_fortjanar_sin_tid/</guid>
            <description>&lt;p&gt;Före agila metoders intåg gjorde många alldeles för mycket analys,
för länge, av det system, produkt eller tjänst som skulle utvecklas. Nu
gör vi alldeles för lite, under för kort tid, under stress, press och
leveranshets.&lt;/p&gt;
&lt;p&gt;Det finns en bra mellanväg i processen där vi kan tänka utan att
fastna, där vi kan ta reda på fakta först utan att gräva för djupt, där
vi kan undersöka, rita, diskutera och testa utan att för den skull vänta
med att börja.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/var_sak_fortjanar_sin_tid/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Upptid och nedtid</title>
            
            <link>https://blog.agical.se/posts/upp_och_nedtid/</link>
            <pubDate>Sun, 09 Jan 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/upp_och_nedtid/</guid>
            <description>&lt;h2 id=&#34;det-var-en-gång&#34;&gt;Det var en gång …&lt;/h2&gt;
&lt;p&gt;I en datorhall någonstans på söder, på 90-talet, stod en så kallad
stordator och surrade. Datorn i fråga användes för att köra ett
kassasystem för öppenvården i Södra Stockholms Läns Landsting. Dess
användare visste inte om det, dess driftansvarige hade ingen aning och
datorn själv var lika ovetande, men snart skulle kassasystemet inte
längre fungera som tänkt.&lt;/p&gt;
&lt;p&gt;Klipp till: Ett kontorslandskap. Två IT-tekniker samtalar med
varandra. En lång och en lite kortare.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/upp_och_nedtid/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          
      
          
          
          <item>
            <title>Vi känner varandra</title>
            
            <link>https://blog.agical.se/posts/alla-kanner-varandra/</link>
            <pubDate>Wed, 03 Nov 2021 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/posts/alla-kanner-varandra/</guid>
            <description>&lt;p&gt;Det rullar runt ett löfte inom ledarskapslitteratur och
managementkurser som kan sammanfattas ungefär så här: “Så fort ett
arbetslag lär känna varandra så kommer produktiviteten skjuta i höjden”.
Du har säkert hört det, och kanske nickat instämmande. Du har kanske
yttrat en variant själv? Du kanske till och med har drömt dig bort och
tänkt att “Det vore sjukt najs om jag fick jobba med fler personer som
ger mig energi. Som jag kan längta efter att träffa.”&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/posts/alla-kanner-varandra/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
    
      
          
          
          <item>
            <title>A rich poor man&#39;s CSS hot reload</title>
            
            <link>https://blog.agical.se/en/posts/a-rich-poor-man-x-s-css-hot-reload/</link>
            <pubDate>Fri, 23 May 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/a-rich-poor-man-x-s-css-hot-reload/</guid>
            <description>&lt;p&gt;Hot reloading CSS can be as easy as
&lt;code&gt;(require .. :reload-all)&lt;/code&gt; followed by
&lt;code&gt;(spit css-file css)&lt;/code&gt;, at least if you add a file watcher.
😀&lt;/p&gt;
&lt;p&gt;I’m using &lt;a
href=&#34;https://github.com/thheller/shadow-cljs&#34;&gt;&lt;u&gt;shadow-cljs&lt;/u&gt;&lt;/a&gt;
for almost everything I do. Its hot-reloading of code is so damn good
that I have grown addicted to it and I now need moar hot reloading
everywhere in my life. shadow-cljs also &lt;a
href=&#34;https://shadow-cljs.github.io/docs/UsersGuide.html#_css_reloading&#34;&gt;&lt;u&gt;hot-reloads
css files&lt;/u&gt;&lt;/a&gt;, did you know?&lt;/p&gt;
&lt;p&gt;However, unless you hand-code the actual &lt;code&gt;.css&lt;/code&gt; files,
what remains is something that will rebuild them when their source code
changes. A poor, poor man uses &lt;a
href=&#34;https://sass-lang.com/&#34;&gt;&lt;u&gt;SASS&lt;/u&gt;&lt;/a&gt; or some similar huge
dependency for this. But a rich, poor man uses data instead of text. As
a Clojurian rich man (but I am repeating myself) I use the &lt;a
href=&#34;https://github.com/noprompt/garden&#34;&gt;&lt;u&gt;Garden CSS library&lt;/u&gt;&lt;/a&gt;.
Garden gives me a way to express CSS in Hiccup-ish data. It also comes
with a bunch of nice CSS utilities such as unit conversion and color
manipulation, making me miss SASS even less.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/a-rich-poor-man-x-s-css-hot-reload/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>10 signs you can benefit by using the Mikado Method</title>
            
            <link>https://blog.agical.se/en/posts/10-signs-you-can-benefit-by-using-the-mikado-method/</link>
            <pubDate>Fri, 28 Mar 2025 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/10-signs-you-can-benefit-by-using-the-mikado-method/</guid>
            <description>&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/10-signs-you-can-benefit-by-using-the-mikado-method/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;h2 id=&#34;the-more-you-fix-the-more-you-break&#34;&gt;1. The more you fix the
more you break&lt;/h2&gt;
&lt;p&gt;Whenever you change code you run the risk of altering its behavior.
Unintendedly.&lt;/p&gt;
&lt;p&gt;The Mikado Method separates the process from the change itself.&lt;/p&gt;
&lt;p&gt;Thus shifting the cognitive power to where it belongs.&lt;/p&gt;
&lt;h2 id=&#34;disagreement-within-your-team&#34;&gt;2. Disagreement within your
team&lt;/h2&gt;
&lt;p&gt;Whenever there’s a shortage of relevant information, concerns
flourish. People get stuck in endless conversations and speculate about
ways to fulfill their unmet needs.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/10-signs-you-can-benefit-by-using-the-mikado-method/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Go see för att förstå behov och krav</title>
            
            <link>https://blog.agical.se/en/posts/go-see-for-att-forsta-behov-och-krav/</link>
            <pubDate>Thu, 19 Dec 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/go-see-for-att-forsta-behov-och-krav/</guid>
            <description>&lt;p&gt;“Gå och se” (genchi genbutsu) är en princip från Toyota Production
System. Det betyder ungefär samma sak som att “gå en mil i någon annans
skor”. Det är ett utmärkt sätt att korsa gränser, förstå varandra och
öppna dörrar för kommunikation.&lt;/p&gt;
&lt;p&gt;Det innebär att åka till “den plats där det faktiska arbetet utförs”.
För bussförare är det bussen. För en marknadsförare är det skrivbordet
och den bärbara datorn. För en fabriksarbetare: fabriksgolvet. Jag har
lärt mig att det är lätt att tillämpa “Go see” i alla situationer när
man vill främja förståelse, insikter och samarbete.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/go-see-for-att-forsta-behov-och-krav/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>From Big to Small Data - Security AND privacy, is it possible?</title>
            
            <link>https://blog.agical.se/en/posts/from-big-to-small-data-security-and-privacy-is-it-possible-x-/</link>
            <pubDate>Tue, 29 Oct 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/from-big-to-small-data-security-and-privacy-is-it-possible-x-/</guid>
            <description>&lt;p&gt;I often hear from people working with security that we can’t have
both security &lt;em&gt;and&lt;/em&gt; privacy. That we have to sacrifice privacy in
order to prevent crimes. That law enforcement needs our private data and
that our devices at home and transport need to be “secured” by gathering
data about every small action you do.&lt;/p&gt;
&lt;p&gt;This is simply not true.&lt;/p&gt;
&lt;p&gt;I have learned, by working with the DNS TAPIR team and development,
that there are ways of doing &lt;em&gt;both&lt;/em&gt;. We just need to shift our
mindset when working with data and security solutions.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/from-big-to-small-data-security-and-privacy-is-it-possible-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>From Big to Small Data - Security AND privacy, is it possible? </title>
            
            <link>https://blog.agical.se/en/posts/from-big-to-small-data---security-and-privacy--is-it-possible-x-/</link>
            <pubDate>Tue, 29 Oct 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/from-big-to-small-data---security-and-privacy--is-it-possible-x-/</guid>
            <description>&lt;p&gt;I often hear from people working with security that we can’t have
both security &lt;em&gt;and&lt;/em&gt; privacy. That we have to sacrifice privacy in
order to prevent crimes. That law enforcement needs our private data and
that our devices at home and transport need to be “secured” by gathering
data about every small action you do.&lt;/p&gt;
&lt;p&gt;This is simply not true.&lt;/p&gt;
&lt;p&gt;I have learned, by working with the DNS TAPIR team and development,
that there are ways of doing &lt;em&gt;both&lt;/em&gt;. We just need to shift our
mindset when working with data and security solutions.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/from-big-to-small-data---security-and-privacy--is-it-possible-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>The programming language doesn&#39;t matter, until it does</title>
            
            <link>https://blog.agical.se/en/posts/the-programming-language-doesn-x-t-matter--until-it-does/</link>
            <pubDate>Fri, 27 Sep 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/the-programming-language-doesn-x-t-matter--until-it-does/</guid>
            <description>&lt;p&gt;On LinkedIn, a recipe for raking home the likes and cheering-ons is
to post about that the tools do not matter at all, only the people
matter.&lt;/p&gt;
&lt;p&gt;“Yay!”&lt;/p&gt;
&lt;p&gt;“Thanks for sharing!”&lt;/p&gt;
&lt;p&gt;“So insightful!”&lt;/p&gt;
&lt;p&gt;I call bullshit.&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/the-programming-language-doesn-x-t-matter--until-it-does/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Well, maybe it is true for some, but not for all, and certainly not
for me! To me people matter a ton, and so do tools. The amount of matter
is on the same order of magnitude for both. This is because I work as a
programmer for a reason. I think there is nothing more fun, thrilling,
and rewarding to do than to code. It’s where that creative part of me
gets its nourishment. As a programmer I create things &lt;em&gt;ex
nihilo&lt;/em&gt;. My ideas come into existence from under my fingertips, and
it is the most wonderful feeling. Also in my spare time you’ll find me
coding.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/the-programming-language-doesn-x-t-matter--until-it-does/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Google and AI just took my dream sites away</title>
            
            <link>https://blog.agical.se/en/posts/google-and-ai-just-took-my-dream-sites-away/</link>
            <pubDate>Fri, 19 Jul 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/google-and-ai-just-took-my-dream-sites-away/</guid>
            <description>&lt;p&gt;Since I was a teenager I’ve been somewhat interested in dream
interpretations. So, now and then I google a strong dream I’ve had. Our
dreams are subconscious messages from ourselves to ourselves is what I
believe. And there can be insights to learn from them. Dreams are great
teachers.&lt;/p&gt;
&lt;p&gt;By putting together different sources and interpretations from
psychologists, religious interpreters and spiritual sharers I kind of
get my own interpretation. A way to understand what my dream wants to
tell me to guide me the next few days.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/google-and-ai-just-took-my-dream-sites-away/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>There can be only one!</title>
            
            <link>https://blog.agical.se/en/posts/there-can-be-only-one/</link>
            <pubDate>Sat, 01 Jun 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/there-can-be-only-one/</guid>
            <description>&lt;p&gt;Here is a stupid simple way to easily manage those UI elements of
which there can be only one opened at a time, such as application menus.
I call them &lt;a
href=&#34;https://en.wikipedia.org/wiki/Highlander_(film)&#34;&gt;&lt;u&gt;Highlander&lt;/u&gt;&lt;/a&gt;s.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/there-can-be-only-one!/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;My requirements are that I want no extra DOM elements, nor any extra
CSS, plus that the user’s intent should be honored, either if it is
intentionally closing the element or starting to interact with some
other element. (Say the menu is open and the user starts to drag
something somewhere else. That dragging should happen and the menu
should also close.)&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/there-can-be-only-one/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Keeping the :arglists of Clojure functions DRY</title>
            
            <link>https://blog.agical.se/en/posts/keeping-the--arglists-of-clojure-functions-dry/</link>
            <pubDate>Mon, 22 Apr 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/keeping-the--arglists-of-clojure-functions-dry/</guid>
            <description>&lt;p&gt;&lt;strong&gt;The problem&lt;/strong&gt;: &lt;code&gt;function-a&lt;/code&gt; takes the same
arguments as &lt;code&gt;function-b&lt;/code&gt;. In fact, &lt;code&gt;function-a&lt;/code&gt;
calls &lt;code&gt;function-b&lt;/code&gt;. Without too much synchronized updating of
the function signatures, I want &lt;code&gt;(doc function-a)&lt;/code&gt; to show me
the same argument lists as &lt;code&gt;(doc function-b)&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The solution&lt;/strong&gt;: Use &lt;code&gt;:arglists&lt;/code&gt; in the
metadata of the function.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-clojure&#34; data-lang=&#34;clojure&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;kd&#34;&gt;defn &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;function-b&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[{&lt;/span&gt;&lt;span class=&#34;ss&#34;&gt;:keys&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]}]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;println &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;kd&#34;&gt;defn &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;function-a&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;ss&#34;&gt;:arglists&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;([{&lt;/span&gt;&lt;span class=&#34;ss&#34;&gt;:keys&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]}])}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;function-b&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;args&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;That’s the TL;DR. Read on for some rationale, and for some nerdy
diving into the worlds of static and dynamic analysis.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/keeping-the--arglists-of-clojure-functions-dry/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>15 second Netlify deploy of a Rust mdBook</title>
            
            <link>https://blog.agical.se/en/posts/15-second-netlify-deploy-of-a-rust-mdbook/</link>
            <pubDate>Wed, 03 Jan 2024 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/15-second-netlify-deploy-of-a-rust-mdbook/</guid>
            <description>&lt;p&gt;I have been enjoying learning some &lt;a
href=&#34;https://www.rust-lang.org/&#34;&gt;&lt;u&gt;Rust&lt;/u&gt;&lt;/a&gt; and some &lt;a
href=&#34;https://macroquad.rs/&#34;&gt;&lt;u&gt;Macroquad&lt;/u&gt;&lt;/a&gt; game development via
&lt;a href=&#34;https://macroquad-introduktion.agical.se/&#34;&gt;&lt;u&gt;Olle Wreede’s
tutorial&lt;/u&gt;&lt;/a&gt; (Swedish only so far, sorry!). When I sent some pull
requests towards the tutorial I lacked a deployed version attached to
the PR. I decided to add that, and my goto for such things is &lt;a
href=&#34;https://www.netlify.com/&#34;&gt;&lt;u&gt;Netlify&lt;/u&gt;&lt;/a&gt;. However, the
tutorial is authored with &lt;a
href=&#34;https://rust-lang.github.io/mdBook/&#34;&gt;&lt;u&gt;mdBook&lt;/u&gt;&lt;/a&gt;, and there
doesn’t seem to be a straightforward way to get Netlify to build
this.&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/15-second-netlify-deploy-of-a-rust-mdbook/image1.jpg&#34; /&gt;&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/15-second-netlify-deploy-of-a-rust-mdbook/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Why you should try Clojure Interactive Programming</title>
            
            <link>https://blog.agical.se/en/posts/why-you-should-try-clojure-interactive-programming/</link>
            <pubDate>Wed, 27 Dec 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/why-you-should-try-clojure-interactive-programming/</guid>
            <description>&lt;p&gt;&lt;a href=&#34;https://clojure.org&#34;&gt;&lt;u&gt;Clojure&lt;/u&gt;&lt;/a&gt; has a lot of things
going for it. To name just a few: Functional programming is the default.
Clojure makes it easy to keep data immutable. The language is small and
simple, and the programs you create stay smaller and simpler than with
most programming language environments.&lt;/p&gt;
&lt;p&gt;Still, perhaps Clojure’s super power is Interactive Programming. I.e.
&lt;em&gt;using the REPL to connect to, inspect, and modify the running
program as you are developing it&lt;/em&gt;. As a Clojure developer you can
leverage this power for fun and for profit. The Clojure REPL will
quickly let you verify that your changes are in the right direction, or
give you early feedback that you need to think differently about the
problem.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/why-you-should-try-clojure-interactive-programming/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>VS Code runCommands for multi-commands keyboard shortcuts</title>
            
            <link>https://blog.agical.se/en/posts/vs-code-runcommands-for-multi-commands-keyboard-shortcuts/</link>
            <pubDate>Mon, 27 Nov 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/vs-code-runcommands-for-multi-commands-keyboard-shortcuts/</guid>
            <description>&lt;p&gt;&lt;a href=&#34;https://code.visualstudio.com/&#34;&gt;&lt;u&gt;Visual Studio
Code&lt;/u&gt;&lt;/a&gt; has a command for stringing multiple commands together:
&lt;code&gt;runCommands&lt;/code&gt;. It’s designed to be used from keyboard
shortcuts. Here’s an example:&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/vs-code-runcommands-for-multi-commands-keyboard-shortcuts/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>To ChatGPT a picture says more than a thousand words</title>
            
            <link>https://blog.agical.se/en/posts/to-chatgpt-a-picture-says-more-than-a-thousand-words/</link>
            <pubDate>Thu, 26 Oct 2023 11:20:00 +0200</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/to-chatgpt-a-picture-says-more-than-a-thousand-words/</guid>
            <description>&lt;p&gt;One of the great usages I get from generative AI is to use it for
checking that my messages come across as I want them to do. ChatGPT,
Midjourney and their likes are trained from vast amounts of human
communication. To note how they interpret something gets to be a measure
on how it would be received by fellow human travelers. At least I
contend it is so.&lt;/p&gt;
&lt;p&gt;Additionally I can “carve out”, with pretty good precision, the
specific target group I want to reach with my article, picture, video,
email, or whatnot.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/to-chatgpt-a-picture-says-more-than-a-thousand-words/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>ImageMagick with Pango on MacOS Ventura</title>
            
            <link>https://blog.agical.se/en/posts/imagemagick-with-pango-on-macos-ventura/</link>
            <pubDate>Tue, 10 Oct 2023 22:13:00 +0200</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/imagemagick-with-pango-on-macos-ventura/</guid>
            <description>&lt;p&gt;In &lt;a
href=&#34;https://blog.agical.se/en/posts/imagemagick--x--pango--x--babashka--x---x--x-/&#34;&gt;&lt;u&gt;ImageMagick
+ Pango + Babashka = ❤️&lt;/u&gt;&lt;/a&gt; I told you about the Docker image &lt;a
href=&#34;https://hub.docker.com/r/cospaia/magick-pango-babashka&#34;&gt;&lt;u&gt;cospaia/magick+pango+babashka&lt;/u&gt;&lt;/a&gt;,
and that it allows for using &lt;a
href=&#34;https://docs.gtk.org/Pango/pango_markup.html&#34;&gt;&lt;u&gt;Pango
markup&lt;/u&gt;&lt;/a&gt; with &lt;a
href=&#34;https://imagemagick.org/&#34;&gt;&lt;u&gt;ImageMagick&lt;/u&gt;&lt;/a&gt; locally as well
as in CI. I also told you that I haven’t succeeded to install ImageMagic
with Pango support on my Mac.&lt;/p&gt;
&lt;p&gt;Since I wrote that I have tried to figure it out, and when compiling
ImageMagick from source failed in some opaque way, all too early in the
&lt;code&gt;make&lt;/code&gt;, I almost threw in the towel. But then I got an idea.
What if…&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/imagemagick-with-pango-on-macos-ventura/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>ImageMagick &#43; Pango &#43; Babashka = ♥️</title>
            
            <link>https://blog.agical.se/en/posts/imagemagick--x--pango--x--babashka--x---x--x-/</link>
            <pubDate>Tue, 10 Oct 2023 17:01:00 +0200</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/imagemagick--x--pango--x--babashka--x---x--x-/</guid>
            <description>&lt;p&gt;If you want to conveniently compose pictures and text
programmatically you may want to have a look at &lt;a
href=&#34;https://imagemagick.org/&#34;&gt;&lt;u&gt;ImageMagick&lt;/u&gt;&lt;/a&gt;. Especially when
powered by &lt;a
href=&#34;https://docs.gtk.org/Pango/pango_markup.html&#34;&gt;&lt;u&gt;Pango&lt;/u&gt;&lt;/a&gt;
markup. The markup is SGML and the resulting text line breaks and flows
automatically. It gets quite a lot easier to lay your text out this way,
than to use ImageMagic’s built in text facilities. And some things do
not only get easier, they become &lt;em&gt;possible&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;However, first you need to get the ImageMagick + Pango pair
installed. Depending on your machine this can get complicated. I still
haven’t figured out how to do it on my Mac. (&lt;a
href=&#34;https://blog.agical.se/en/posts/imagemagick-with-pango-on-macos-ventura/&#34;&gt;&lt;u&gt;See
here for how I worked around it.&lt;/u&gt;&lt;/a&gt;) As my real use case was to get
it to happen in a CI build step, I searched for ImageMagic + Pango
Docker images and couldn’t find one that actually worked.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/imagemagick--x--pango--x--babashka--x---x--x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Full source code: Newsletter automation using Buttondown &#43; Google Sheets</title>
            
            <link>https://blog.agical.se/en/posts/full-source-code--newsletter-automation-using-buttondown--x--google-sheets/</link>
            <pubDate>Mon, 02 Oct 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/full-source-code--newsletter-automation-using-buttondown--x--google-sheets/</guid>
            <description>&lt;p&gt;Here’s how I created a fully automated, weekly newsletter using only
RSS, &lt;a href=&#34;https://buttondown.email&#34;&gt;&lt;u&gt;Buttondown&lt;/u&gt;&lt;/a&gt;, and &lt;a
href=&#34;https://sheets.google.com&#34;&gt;&lt;u&gt;Google Sheets&lt;/u&gt;&lt;/a&gt;. Full source
code included!&lt;/p&gt;
&lt;p&gt;I run a hobby project (&lt;a
href=&#34;https://cospaia.se&#34;&gt;&lt;u&gt;Cospaia&lt;/u&gt;&lt;/a&gt;, mostly in Swedish, but
it’s not important for this article) together with some friends. We
wanted a weekly automated newsletter. When figuring out how to do this,
I compared it to a commercial project I’m involved with, where we use &lt;a
href=&#34;https://www.netlify.com/products/forms/&#34;&gt;&lt;u&gt;Netlify Forms&lt;/u&gt;&lt;/a&gt;
and &lt;a href=&#34;https://mailchimp.com/&#34;&gt;&lt;u&gt;Mailchimp&lt;/u&gt;&lt;/a&gt;, with &lt;a
href=&#34;https://zapier.com/apps/netlify/integrations/mailchimp&#34;&gt;&lt;u&gt;Zapier
as glue&lt;/u&gt;&lt;/a&gt;. As Mailchimp is pretty crappy, and has a history of
biting me really hard (deleting my subscriber database), and we are not
hosting the Cospaia site using Netlify, I looked around for other ways
to do this one. In the Cospaia project, instead of Netlify we are using
&lt;a href=&#34;https://vercel.com/&#34;&gt;&lt;u&gt;Vercel&lt;/u&gt;&lt;/a&gt;, so Vercel Functions
came to mind. I didn’t immediately find something however, like I did
with Netlify Forms. This doesn’t mean there isn’t an easy path here,
just that Brave Search found &lt;a
href=&#34;https://css-tricks.com/using-netlify-forms-and-netlify-functions-to-build-an-email-sign-up-widget/&#34;&gt;&lt;u&gt;something
else&lt;/u&gt;&lt;/a&gt; for me first. It was actually also involving Netlify Forms,
but instead of Mailchimp there was something else. It looked super
interesting and relevant to what I needed: &lt;strong&gt;Buttondown&lt;/strong&gt;!
But before digging into the solution, let’s have a look at my
requirements.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/full-source-code--newsletter-automation-using-buttondown--x--google-sheets/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>The Stone Soup is a Lie</title>
            
            <link>https://blog.agical.se/en/posts/the-stone-soup-is-a-lie/</link>
            <pubDate>Tue, 26 Sep 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/the-stone-soup-is-a-lie/</guid>
            <description>&lt;p&gt;Some 20 years ago I worked at a startup with a CEO who liked to cook
up various tricks to make potential customers think we were further
ahead than we were. I complained that he was setting us and the
customers up for failure. I suggested that at the next meeting we should
be completely open and honest about what they would buy into. We could
leverage it, even. We could tell the customers about the big opportunity
to be part of, and shape, our journey. Somewhat to my surprise, he
agreed. And to his big surprise, the next meeting landed us our first
contract. I was a bit disappointed that he then coined it “the trick of
honesty”. I suspect he might still be regarding it as just one of his
many tricks. ¯\&lt;em&gt;(ツ)&lt;/em&gt;/¯&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/the-stone-soup-is-a-lie/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Bring me clarity - Not No No Notification Adjustment</title>
            
            <link>https://blog.agical.se/en/posts/bring-me-clarity---not-no-no-notification-adjustment/</link>
            <pubDate>Tue, 29 Aug 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/bring-me-clarity---not-no-no-notification-adjustment/</guid>
            <description>&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/bring-me-clarity---not-no-no-notification-adjustment/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Are you bent out of shape by obscure emails?&lt;/p&gt;
&lt;p&gt;Do text walls on the intranet rub you the wrong way?&lt;/p&gt;
&lt;p&gt;Are you looking for the exit when the CFO pulls slide after slide
with nothing but misplaced participles and spelling errors.&lt;/p&gt;
&lt;p&gt;I’m sorry if I got you revved up. Relax, take a deep breath and read
on.&lt;/p&gt;
&lt;p&gt;Get a load of this: hasNoNoNotAdjs(...)&lt;/p&gt;
&lt;p&gt;If you think the above is from the popular 90-ies song “No Limit”
you’re barking up the wrong tree.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/bring-me-clarity---not-no-no-notification-adjustment/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>How to increase collaboration between analyst and product teams - 3: Chat culture!</title>
            
            <link>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---3--chat-culture/</link>
            <pubDate>Fri, 04 Aug 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---3--chat-culture/</guid>
            <description>&lt;p&gt;It’s pivotal to have a deliberate and thought through system for
communication when you’re into cross functional collaboration. Such as
between product and analytics teams. To have a shared chat platform for
everyone in an organization should go without saying these days. Like
Slack, Discord, Teams or something else.&lt;/p&gt;
&lt;p&gt;Still, I know there are workplaces where people lack an appropriate
chat tool for one reason or another. Or, where the chat is used for
limited conversations, or only inside one’s team.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---3--chat-culture/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Calva Maintenance is Exciting!</title>
            
            <link>https://blog.agical.se/en/posts/my-open-source-work-may-june-2023/</link>
            <pubDate>Thu, 29 Jun 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/my-open-source-work-may-june-2023/</guid>
            <description>&lt;p&gt;&lt;em&gt;The following is my report for the May - June, 2023 period of &lt;a
href=&#34;https://www.clojuriststogether.org/&#34;&gt;Clojurists Together&lt;/a&gt; long
term sponsoring.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;As usual, the bulk of my open source energy is poured into &lt;a
href=&#34;https://calva.io/&#34;&gt;Calva&lt;/a&gt;, a &lt;a
href=&#34;https://clojure.org/&#34;&gt;Clojure&lt;/a&gt;/&lt;a
href=&#34;https://clojurescript.org/&#34;&gt;ClojureScript&lt;/a&gt;/&lt;a
href=&#34;https://github.com/clojure/clojure-clr&#34;&gt;ClojureCLR&lt;/a&gt;/&lt;a
href=&#34;https://github.com/Tensegritics/ClojureDart&#34;&gt;ClojureDart&lt;/a&gt;/&lt;a
href=&#34;https://babashka.org/&#34;&gt;Babashka&lt;/a&gt;/&lt;a
href=&#34;https://github.com/babashka/nbb&#34;&gt;nbb&lt;/a&gt;/&lt;a
href=&#34;https://marketplace.visualstudio.com/items?itemName%253Dbetterthantomorrow.joyride&#34;&gt;Joyride&lt;/a&gt;/etcetera
development environment that &lt;a
href=&#34;https://www.youtube.com/watch?v%253DL0-yDtVUWMQ&#34;&gt;takes Interactive
Programming seriously&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I also got to contribute to Clojure related starter projects + was
interviewed for &lt;a href=&#34;https://flexiana.com/&#34;&gt;Flexiana&lt;/a&gt;’s new
&lt;strong&gt;Clojure Corner&lt;/strong&gt; series: &lt;a
href=&#34;https://flexiana.com/2023/06/clojure-corner-with-pez&#34;&gt;Clojure
Corner with Peter Strömberg&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;calva&#34;&gt;Calva&lt;/h2&gt;
&lt;p&gt;Over at Twitter someone asked me if I was up to something exciting.
Implicitly wondering if Calva was about to get some cool new big thing
(I think). My answer was that it is mostly about maintenance currently.
However,&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/my-open-source-work-may-june-2023/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>How to increase collaboration between analyst and product teams - 2: Go see!</title>
            
            <link>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---2--go-see/</link>
            <pubDate>Mon, 19 Jun 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---2--go-see/</guid>
            <description>&lt;p&gt;I hear about, and have seen for myself, that there are challenges to
get product and development teams involved in the analyst team’s work.
And the other way around.&lt;/p&gt;
&lt;p&gt;Since we’re heavily dependent on each other to succeed with our work,
it’s important to do something about it. The principle “Go See” is one
thing I’ve had good experience with, when it comes to increasing
collaboration between different teams or parts of an organization.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---2--go-see/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>How to increase collaboration between analyst and product teams - 1: Demo your data!</title>
            
            <link>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---1--demo-your-data/</link>
            <pubDate>Fri, 09 Jun 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---1--demo-your-data/</guid>
            <description>&lt;p&gt;In data teams, I’ve often met the objection that it’s not possible to
demo “our product” for stakeholders.&lt;/p&gt;
&lt;p&gt;“It’s just data flows, no one wants to see that”, or “How would we
demo the ETL jobs we’ve been working on”, or “we’ve just been working on
integrations with the new data platform, there is no UI (user interface)
to show” etc.&lt;/p&gt;
&lt;p&gt;If you’re not already doing this, regular demos are a great way to
increase collaboration between different parts of an organization. For
instance product and analytics teams.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/how-to-increase-collaboration-between-analyst-and-product-teams---1--demo-your-data/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Changing my mind: Converting a script from bash to Babashka</title>
            
            <link>https://blog.agical.se/en/posts/changing-my-mind--converting-a-script-from-bash-to-babashka/</link>
            <pubDate>Tue, 16 May 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/changing-my-mind--converting-a-script-from-bash-to-babashka/</guid>
            <description>&lt;p&gt;Here, a description of one of my many rewrites of shell scripts.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;From&lt;/strong&gt;: bash-plus-a-lot-of-Unix-tools&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;To&lt;/strong&gt;: &lt;a
href=&#34;https://babashka.org/&#34;&gt;&lt;u&gt;Babashka&lt;/u&gt;&lt;/a&gt;-plus-fewer-Unix-tools
(zero Unix tools in this case).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&#34;https://clojure.org/&#34;&gt;&lt;u&gt;Clojure&lt;/u&gt;&lt;/a&gt; reaches wherever I
want to code something. For shell scripting it is a great choice because
Babashka. By old habit I still often start out with bash. I paste a
piece of my command line history in a file and go from there. Then when
my script stops behaving like I intend it to, and resists my attempts to
make it: I regret not doing it with Babashka.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/changing-my-mind--converting-a-script-from-bash-to-babashka/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>How to create a really simple ClojureCLR dependency tool</title>
            
            <link>https://blog.agical.se/en/posts/how-to-create-a-really-simple-clojureclr-dependency-tool/</link>
            <pubDate>Sun, 14 May 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/how-to-create-a-really-simple-clojureclr-dependency-tool/</guid>
            <description>&lt;p&gt;I just published &lt;a
href=&#34;https://github.com/PEZ/clojure-clr-starter&#34;&gt;clojure-clr-starter&lt;/a&gt;
– &lt;em&gt;A Dockerized CLojureCLR Starter Project&lt;/em&gt;, that makes it easy
to create a &lt;a
href=&#34;https://github.com/clojure/clojure-clr&#34;&gt;ClojureCLR&lt;/a&gt; project,
start it and connect a &lt;a href=&#34;https://clojure.org/&#34;&gt;Clojure&lt;/a&gt;
editor. This article describes how the project is set up. Surprisingly
little glue was needed once &lt;a href=&#34;https://github.com/dmiller&#34;&gt;David
Miller&lt;/a&gt; had created &lt;a
href=&#34;https://github.com/clojure/clr.tools.nrepl&#34;&gt;clr.tools.nrepl&lt;/a&gt; (a
few weeks ago).&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/how-to-create-a-really-simple-clojureclr-dependency-tool/ClojureCLR.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;There is no dependency tooling for ClojureCLR yet (it’s &lt;a
href=&#34;https://github.com/dmiller/clr.tools.deps&#34;&gt;being worked on&lt;/a&gt;) so
we have to solve a few things ourselves. We need to get ClojureCLR
to:&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/how-to-create-a-really-simple-clojureclr-dependency-tool/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>A self directing internship - and how I learn to code again - part 2</title>
            
            <link>https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-2/</link>
            <pubDate>Mon, 08 May 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-2/</guid>
            <description>&lt;p&gt;(Also read: &lt;a
href=&#34;https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-1/&#34;&gt;&lt;u&gt;Part
1 - A self directing internship - and how I learn to code
again&lt;/u&gt;&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I asked myself: “Where do I want an internship, and how do I get
it?”. I had almost completed my &lt;a
href=&#34;https://www.udemy.com/course/the-data-science-course-complete-data-science-bootcamp/?gclid=Cj0KCQjwuLShBhC_ARIsAFod4fIJJpkOYYDU27bVFFI2TWJMMmbJnHeb5mTXuYO7B6bc5tmrQcqxqZIaApl8EALw_wcB&amp;amp;matchtype=b&amp;amp;utm_campaign=Branded-Topic_la.EN_cc.ROWMTA-A&amp;amp;utm_content=deal4584&amp;amp;utm_medium=udemyads&amp;amp;utm_source=adwords&amp;amp;utm_term=_._ag_119656606043_._ad_534056433518_._kw_data+science+bootcamp+udemy_._de_c_._dm__._pl__._ti_kwd-1884763414462_._li_9062454_._pd__._&#34;&gt;&lt;u&gt;online
foundational training program in Data Science&lt;/u&gt;&lt;/a&gt; and without
thinking too much, I reached out to some people in my close network. I
mentioned that I’m learning to code again and that I was open for an
internship in an analytics team.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-2/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>A self directing internship - and how I learn to code again - part 1</title>
            
            <link>https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-1/</link>
            <pubDate>Fri, 28 Apr 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-1/</guid>
            <description>&lt;p&gt;“I want to code again. I want to do hands-on analytics work in a
data/dev team.”&lt;/p&gt;
&lt;p&gt;About 5 years ago, I started to talk like this with friends.&lt;/p&gt;
&lt;p&gt;At that point in life, a single parent with two kids and all, there
wasn’t really any space to follow up on that idea. Though I more often
was responsible for data analytics and BI products, and working closer
together with analysts and data scientists.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/a-self-directing-internship---and-how-i-learn-to-code-again---part-1/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Extend VS Code in user space, without invented restrictions</title>
            
            <link>https://blog.agical.se/en/posts/extend-vs-code-in-user-space--without-invented-restrictions/</link>
            <pubDate>Sun, 02 Apr 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/extend-vs-code-in-user-space--without-invented-restrictions/</guid>
            <description>&lt;p&gt;Let’s break out of an imaginary jail. Let’s hack &lt;a
href=&#34;https://code.visualstudio.com/&#34;&gt;&lt;u&gt;Visual Studio Code&lt;/u&gt;&lt;/a&gt; in
all ways it allows for being modified by extensions, but without leaving
user space. User space as in “a user of VS Code”, to contrast with “a
developer of VS Code extensions”. The imaginary jail being that I
thought some extensibility cases are closed to &lt;a
href=&#34;https://marketplace.visualstudio.com/items?itemName=betterthantomorrow.joyride&#34;&gt;&lt;u&gt;Joyride&lt;/u&gt;&lt;/a&gt;
and need &lt;a
href=&#34;https://marketplace.visualstudio.com/search?target=VSCode&amp;amp;category=Programming%20Languages&amp;amp;sortBy=Rating&#34;&gt;&lt;u&gt;an
extension&lt;/u&gt;&lt;/a&gt; to be implemented. It is not so!&lt;/p&gt;
&lt;p&gt;&lt;img
src=&#34;https://blog.agical.se/images/extend-vs-code-in-user-space--without-invented-restrictions/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;h1 id=&#34;bliss-in-a-universe-of-vast-possibilities&#34;&gt;Bliss in a universe
of vast possibilities&lt;/h1&gt;
&lt;p&gt;With &lt;a
href=&#34;https://github.com/BetterThanTomorrow/joyride&#34;&gt;&lt;u&gt;Joyride&lt;/u&gt;&lt;/a&gt;
a whole world of possibilities opens for programmers who want to
customize their development environment of choice from user space, as
long as that choice is VS Code. Joyride scripts allow us to add those
tiny features we miss, or large features, or fully automate our specific
workflows, or script our use of ChatGPT, or just about anything. If we
can imagine it, Joyride makes it so that we can make it happen.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/extend-vs-code-in-user-space--without-invented-restrictions/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Empathy at work</title>
            
            <link>https://blog.agical.se/en/posts/empathy-at-work/</link>
            <pubDate>Fri, 13 Jan 2023 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/empathy-at-work/</guid>
            <description>&lt;p&gt;Viktor E. Frankl says: &#34;Between stimulus and response there is a
space. In that space is our power to choose our response. In our
response lies our growth and our freedom.”&lt;/p&gt;
&lt;p&gt;Empathy @ Work workshop is focused on exploring what happens in that
space and to learn to regain the consciousness of the choice we always
have.&lt;/p&gt;
&lt;p&gt;The space is where we can explore what is truly true, what is
happening within me - learning to connect to self and to listen to
oneself to understand what is important to us and what drives us
forward. Then, in the choice, we can learn to make a conscious decision
whether to listen to the other emphatically or to express ourselves in a
way that maximises the odds to stay in connection with the other.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/empathy-at-work/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>ChatGPT: Are you holding it wrong?</title>
            
            <link>https://blog.agical.se/en/posts/chatgpt--are-you-holding-it-wrong-x-/</link>
            <pubDate>Sat, 10 Dec 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/chatgpt--are-you-holding-it-wrong-x-/</guid>
            <description>&lt;p&gt;As far as productivity boosts go, ChatGPT (which calls itself
Assistant), represents the biggest leap in a long time. Especially if
our work involves writing. Correctly used, that is. Incorrectly used,
ChatGPT can produce pure garbage, although it might look very similar to
the valuable help we could have gotten if we had wielded this new tool
rightly.&lt;/p&gt;
&lt;p&gt;Whether it boosts our productivity, by quickly helping us fill in the
blanks, or wastes our time with garbage we need to identify and clean
up, it will do so using the same engine. ChatGPT is the latest famous
and infamous installation of OpenAI’s aligned large language models. At
its core the model uses its training data to predict the next word. Much
like the help phone keyboards offer us when we are typing.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/chatgpt--are-you-holding-it-wrong-x-/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>A conversation with ChatGPT about ChatGPT</title>
            
            <link>https://blog.agical.se/en/posts/a-conversation-with-chatgpt-about-chatgpt/</link>
            <pubDate>Wed, 07 Dec 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/a-conversation-with-chatgpt-about-chatgpt/</guid>
            <description>&lt;p&gt;I blurted out ”How are you?” at the start of a session with &lt;a
href=&#34;https://chat.openai.com/&#34;&gt;ChatGPT&lt;/a&gt; and it turned into a
conversation where I really tried to get the AI to answer this question.
It gets appearant that ChatGPT is a good writer, even if it can get
stuck and repeat things a bit too often. That the chatbot ”remembers”
the conversation and can use it for its answers is very powerful and
reveals to me some about how useful this technology is and can
become.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/a-conversation-with-chatgpt-about-chatgpt/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Top 5 reasons for NOT becoming a programmer</title>
            
            <link>https://blog.agical.se/en/posts/top-5-reasons-for-not-becoming-a-programmer/</link>
            <pubDate>Thu, 27 Oct 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/top-5-reasons-for-not-becoming-a-programmer/</guid>
            <description>&lt;p&gt;Don’t you ever become a programmer, this is the final warning. Don’t
become a nerd that more than 40 years later, thinks it is “fun”. Makes
people wonder, if you see what I mean.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/top-5-reasons-for-not-becoming-a-programmer/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Why I Shrugged the Agile Yoke</title>
            
            <link>https://blog.agical.se/en/posts/why-i-shrugged-the-agile-yoke/</link>
            <pubDate>Wed, 28 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/why-i-shrugged-the-agile-yoke/</guid>
            <description>&lt;p&gt;“Agile workplace” is a red flag to me. I immediately start to worry
if it implies that I am expected to participate in a lot of meetings and
rituals, even though I might be on pins and needles to get some bug
fixed, or to tweak this or that feature.&lt;/p&gt;
&lt;p&gt;Is it just me?&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.agical.se/images/why-i-shrugged-the-agile-yoke/image1.jpg&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Actually, I like the idea of making it easy and cheap to adjust and
to correct directions. I’ve been working with software development in
one form or the other for 35 years. I know full well that it is possible
to do it in a rigid, heavy, and awful way, ensuring that as many people
as possible suffer from anxiety. When I have been given enough
influence, I have even nimbly arranged for things to be that way.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/why-i-shrugged-the-agile-yoke/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>The Agile Theater Proudly Presents: The Factory</title>
            
            <link>https://blog.agical.se/en/posts/the-agile-theater-proudly-presents--the-factory/</link>
            <pubDate>Fri, 23 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/the-agile-theater-proudly-presents--the-factory/</guid>
            <description>&lt;p&gt;Imagine that you have discovered that you enjoy the vegetarian diet.
Your body responds well, you feel more vital and digestion is a
clockwork. You run into a friend and tell them about the fantastic
results you have achieved by eating vegetarian food. Your friend becomes
convinced and decides to visit a vegetarian restaurant.&lt;/p&gt;
&lt;p&gt;Later, when you meet again, your friend is remarkably upset and
complains about how awful the vegetarian diet is. The meat in particular
was tough.You look at your friend in amazement and ask if it was really
a vegetarian restaurant, there shouldn&#39;t be meat in the food.
Absolutely, the friend replies, they were even certified by an
organization that appeared recently, now that the vegetarian diet is in
demand..&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/the-agile-theater-proudly-presents--the-factory/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>shadow-cljs &#43; Clojure with Calva: The basics</title>
            
            <link>https://blog.agical.se/en/posts/shadow-cljs-clojure-cljurescript-calva-nrepl-basics/</link>
            <pubDate>Tue, 13 Sep 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/shadow-cljs-clojure-cljurescript-calva-nrepl-basics/</guid>
            <description>&lt;p&gt;This &lt;strong&gt;How to use &lt;a
href=&#34;https://github.com/thheller/shadow-cljs&#34;&gt;shadow-cljs&lt;/a&gt; with
Calva in a fullstack project&lt;/strong&gt; guide will not take the short path
of presenting some steps and then ”BOOM there it is!” Instead we are
going to look at the pieces involved and how they are composed to create
Calva’s connection with the ClojureScript app being developed. The point
with this is to give you the knowledge to get yourself past obstacles
that a short 1-2-3 step guide might land you in.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/shadow-cljs-clojure-cljurescript-calva-nrepl-basics/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>The story behind Rusty Aquarium</title>
            
            <link>https://blog.agical.se/en/posts/the-story-behind-rusty-aquarium/</link>
            <pubDate>Wed, 24 Aug 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/the-story-behind-rusty-aquarium/</guid>
            <description>&lt;p&gt;&lt;em&gt;Or; “Why I chose to use Rust and Macroquad to develop a data
visualization application”&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I&#39;ve had the idea of using a virtual fish tank as data visualization
for longer than I can remember. So it’s not entirely clear how I came up
with it. But I&#39;ve always thought static graphs are quite boring to look
at. A fish tank screensaver on the other hand. It’s a lot more
calming.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/the-story-behind-rusty-aquarium/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Be aware of NUMA when your application needs to run very fast</title>
            
            <link>https://blog.agical.se/en/posts/be-numa-aware-for-the-sake-of-performance/</link>
            <pubDate>Wed, 09 Feb 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/be-numa-aware-for-the-sake-of-performance/</guid>
            <description>&lt;p&gt;With &lt;a href=&#34;../java-bitset-performance-mystery/&#34;&gt;the article about
a performance mystery involving Java and BitSets&lt;/a&gt;, I got &lt;a
href=&#34;https://news.ycombinator.com/item?id=30226083&#34;&gt;help from Hacker
News&lt;/a&gt; (and a lot of other sources as well) to investigate and also
solve the mystery.&lt;/p&gt;
&lt;p&gt;However, I haven’t managed to solve the problem that this &lt;a
href=&#34;https://en.wikipedia.org/wiki/Non-uniform_memory_access&#34;&gt;NUMA&lt;/a&gt;
(+ Docker, in my case) issue is causing me.&lt;/p&gt;
&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;I&amp;#39;m very happy I could find the solution to this mystery. But the solution is quite unsatisfactory for my particular problem, since I can&amp;#39;t use `numctl --membind=0` in the drag-racing environment. Have a look at my bitset solution&amp;#39;s results here: &lt;a href=&#34;https://t.co/qPakybLMAw&#34;&gt;https://t.co/qPakybLMAw&lt;/a&gt; 😭&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/be-numa-aware-for-the-sake-of-performance/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>Help solve this Java BitSet performance-flicker mystery</title>
            
            <link>https://blog.agical.se/en/posts/java-bitset-performance-mystery/</link>
            <pubDate>Sat, 05 Feb 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/java-bitset-performance-mystery/</guid>
            <description>&lt;p&gt;&lt;strong&gt;UPDATE February 6, 2022&lt;/strong&gt;: The behaviour seems to be
triggered by that the JVM process sometimes gets scheduled on a
different NUMA node from where the heap is allocated. I tested this by
using this command to run the sieve:&lt;/p&gt;
&lt;div class=&#34;sourceCode&#34; id=&#34;cb1&#34;&gt;&lt;pre class=&#34;sourceCode sh&#34;&gt;&lt;code class=&#34;sourceCode bash&#34;&gt;&lt;span id=&#34;cb1-1&#34;&gt;&lt;a href=&#34;#cb1-1&#34; aria-hidden=&#34;true&#34; tabindex=&#34;-1&#34;&gt;&lt;/a&gt;&lt;span class=&#34;ex&#34;&gt;numactl&lt;/span&gt; &lt;span class=&#34;at&#34;&gt;--cpunodebind&lt;/span&gt;&lt;span class=&#34;op&#34;&gt;=&lt;/span&gt;0 &lt;span class=&#34;at&#34;&gt;--membind&lt;/span&gt;&lt;span class=&#34;op&#34;&gt;=&lt;/span&gt;0 java PrimeSieve&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On my first try this gave me the error message
&lt;code&gt;setting membind: Operation not permitted&lt;/code&gt;. The workaround I
used was to run the docker container in privileged mode:&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/java-bitset-performance-mystery/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>A Calva workflow for quil drawing</title>
            
            <link>https://blog.agical.se/en/posts/calva-quil-workflow/</link>
            <pubDate>Wed, 05 Jan 2022 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/calva-quil-workflow/</guid>
            <description>&lt;p&gt;&lt;a href=&#34;https://github.com/quil/quil&#34;&gt;Quil&lt;/a&gt; is a &lt;a
href=&#34;https://clojure.org&#34;&gt;Clojure&lt;/a&gt; and &lt;a
href=&#34;https://clojurescript.org&#34;&gt;ClojureScript&lt;/a&gt; wrapper around &lt;a
href=&#34;https://processing.org&#34;&gt;Processing&lt;/a&gt;. Quil takes &lt;em&gt;learning
how to code within the context of the visual arts&lt;/em&gt; and applies 10X
to it. (I say being a passionate Clojurian.)&lt;/p&gt;
&lt;p&gt;With Clojure and its REPL comes the promise that you dynamically can
tweak and form your sketches, as they are running. That’s what this is
article is about. There is a Calva context, but things generally apply
accross all Clojure editors/IDEs. I will assume you know some Clojure,
but you should be able to follow pretty well regardless, because I also
will try to keep this at a beginner’s level. My aim is to leverage Quil
to try to explain things in a way that could help you ”see” how the
Clojure editor relates to the Clojure REPL. (In case you haven’t yet
”seen” this.)&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/calva-quil-workflow/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
          
          
          <item>
            <title>How to mix Clojure and Java code in the same tools-deps project</title>
            
            <link>https://blog.agical.se/en/posts/mixed-clojure-and-java/</link>
            <pubDate>Thu, 30 Dec 2021 00:00:00 +0000</pubDate>
            <author> </author>
            <guid>https://blog.agical.se/en/posts/mixed-clojure-and-java/</guid>
            <description>&lt;p&gt;For whatever reasons, you might sometimes want to develop your
program in a mix of &lt;a href=&#34;https://clojure.org&#34;&gt;Clojure&lt;/a&gt; and &lt;a
href=&#34;https://www.java.com/&#34;&gt;Java&lt;/a&gt;. (Or some other language that
compiles to &lt;code&gt;.class&lt;/code&gt; files.)&lt;/p&gt;
&lt;p&gt;This is actually so easy that nobody has bothered with writing up an
article on how to do it. At least not for non-Leiningen projects. Until
now, because in processing a pull request on &lt;a
href=&#34;https://calva.io&#34;&gt;Calva&lt;/a&gt;, I had reasons to try create a project
like this, and I’d like to help you walk a bit straighter of a path than
I did.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;a href=&#39;https://blog.agical.se/en/posts/mixed-clojure-and-java/&#39;&gt;Read this ↗️&lt;/a&gt;</description>
          </item>
          
          
      
    
  </channel>
</rss>
