21 May 2018

CSS-treeshaking med PurgeCSS

Som webudvikler benytter man typisk et CSS-framework som Bulma, Bootstrap eller Foundation, når man udvikler hjemmesideprojekter.
I hvert fald når det kommer til projekter hvor man med fordel kan drage nytte af allerede eksisterende funktionalitet der har en stor grad af stabilitet og som er fri for bugs/uhensigtsmæssigheder, da det allerede er trykprøvet igennem implementering i utallige andre projekter på tværs af projekttyper. Ligesom det derudover typisk også vil reducere udviklingstid, fordi man ikke skal "genopfinde" den dybe tallerken for hvert nyt projekt, man påbegynder.

Når man inddrager fulde CSS-frameworks i sit udviklingsprojekt, er der dog samtidig stor sandsynlighed for at man kun benytter en delmængde/en underdel af de CSS-klasser som frameworket inkluderer i sine kernefunktionalitet (e.g. gridsystem, form-controls, elementer) og sin komponentmodularitet.

10 May 2018

Utility baseret CSS med TailwindCSS

Igennem de sidste år har måden som jeg skriver CSS på ændret sig fra at være baseret på et koncept om »seperation of concerns« igennem semantisk CSS, og til i dag at være en blanding af komponentbaseret CSS under inklusion af en del utillity-classes.
De fleste af mine utility-classes opstod når jeg fik en følelse af gentagen CSS (fx en bestemt border-type, drop-shadow eller border-radius som var en del af projektets designmanual) i forskellige CSS-blokke, men hvor det samtidig ikke ville give semantisk mening at ekstrahere blokkene til deres egne CSS-komponenenter.

Før Adam Wathan mfl. lancerede TailwindCSS i slutningen af sidste år, havde jeg derfor aldrig benyttet en fuldstændig utility-baseret tilgang til styling af markup, men fordi op mod halvdelen af min måde at skrive CSS på havde flyttet sig i den retning, blev jeg hurtigt solgt på ideen om fuld utility-baseret CSS.

7 February 2018

Bøger der er værd at (gen)læse: Clean Code (af Robert C. Martin)

I dette indlæg fortsætter blogserien om bøger der er værd at læse - eller genlæse, hvis man har læst dem tidligere.

Tidligere i denne måned genlæste jeg Clean Code, der er skrevet af Robert C. Martin (Uncle Bob) og udgivet i sin førsteudgave i 2008. Første gang jeg læste bogen var for et par år siden, og det er med fordel en bog der kan genlæses med nogle års mellemrum.

Bogen er en eviggyldig påmindelse om at det er en kunst at skrive letlæselig kode, og Robert C. Martin leverer påmindelsen igennem praktiske eksempler på lavniveau programmeringskoncepter som velstrukturereret navngivning, og hvordan man organiserer kode så den er let at forstå.
Med andre ord så er bogen en indførsel i grundprincipper som programmører benytter på daglig basis.