Lazy Saturday

Den här lördagen har jag sett fram emot länge. De senaste två
veckorna har varit mördande med en tuff deadline och en svår tenta
inom loppet av 36 timmar.

Deadlinen var för en en artikel och en krönika för Techworld (som
nu lagt ut den krönika
jag skrev
om ambassadhacket
i mitten av december — det här med pressläggningstider är en märklig
omställning för mig som bloggvan). Det är första gången jag skriver en
riktig artikel, inte bara löst tyckande i krönikeform, i en
papperstidning, och allt som är nytt tar ju alltid extra tid och
kraft. Artikeln handlar om PUL, riktar sig mot det typiska
IT-användande företaget, och blev förförhållandevis lyckad, tror
jag. Lång blev den i vart fall, 14500 tecken vilket är en bra bit över
de 12000 jag egentligen fick till mit förfogande. Vi får väl se om den
är kapad när den dyker upp i tryck nån gång i slutet av april. På
grund av all tid som artikeln tog fick krönikan skrivas på
rekordfart. Den rör förhållandet mellan IT-expertis, rättsväsendet och
risken för rättsosäkerhet när de inte kan prata med varandra, främst
föranlett av domen mot Uppsalahackaren — lite
på samma tema som min f.d. chefs
artikel i CS
för några månader sedan.

Vid sidan om detta har jag också tentapluggat för tentan i rättshistoria,
som jag skrev i torsdags. Kursen har varit väldigt intressant och
mycket intensiv – frågeställningarna och tankegångarna har varit
ganska annorlunda från andra kurser på juristlinjen, och har gett en
teoretisk bas att förstå vad jag egentligen lärt mig under de tidigare
tre åren. Stundvis har det gjort ganska ont i huvudet, men på det hela
hamnar kursen klart i topp tre. Det enda jag egentligen tycker är synd
är att den inte ligger tidigare i programmet – den bakomliggande
frågeställningen om förhållandena juridik/rätt/värderingar/makt är
något jag skulle ha velat haft i bakhuvudet under några av de mer
materiellt inriktade kurserna. Nu blir det nationalekonomi
i fyra veckor, vilket också verkar annorlunda. Huvudkursboken
är på engelska med massa diagram och färger istället för omfattande
notapparater, bara en sån sak.

Tillsammans med allt detta har jag ju också ett vanligt jobb att
sköta. Både våren och hösten bjuder på en del spännande arrangemang
som IRI på ena eller andra sättet är inblandade i. Den 13:e mars
håller LISA ett möte
om elektronisk publicering av författningstexter
, och till hösten
slår vi på stort och arrangerar nordisk
konferens i rättsinformatik
mellan den 17:e och 19:e november -
jag håller nu på att färdigställa konferenswebbplatsen. Notera gärna
användandet av hCalender, hAtom med flera mikroformat på webbplatsen -
förutom det direkta användbarheten genom extensions som Operator utgör
de även grunden för det Atom-flöde och det iCalendar-flöde som finns
tillgängligt. Eftersom IRI-webbplatsen bygger helt på statiska filer
ligger inte nyhetsartiklar och kalenderhändelser i en databas, utan
istället genereras Atom/iCal-flödena genom att ett offlinescript
parsear mikroformaten och bygger statiska filer. En typisk
lowtechlösning i min smak.

Motionen har gått lite sisådär. Jag har som ambition att springa en
dryg tvåmilsrunda kring Stockholm varje söndag, men senast jag
försökte tvingade en krånglande stortå, eventuellt framkallad av
dåliga skor, mig att avbryta efter bara några kilometer. Vi får se om
det blir ett nytt försök imorgon. I övrigt har jag bestämt mig för att
skala ner ambitionerna den här säsongen — det blir inga långa
cykelutmaningar eller något nytt försök på Kalmar Triathlon i år. Även
om jag verkligen gillade upplevelsen av att göra en mer seriös
satsning så har jag andra saker som jag vill göra, och det finns helt
enkelt inte tid. Det får bli motion för husbehov, och kanske en liten
urladdning på midnattsloppet i slutet av sommaren.

En av de saker jag vill göra är en uppryckning av Lagen.nu. Det är
roligare än på länge att koda, och den nya kodbasen börjar bli riktigt
bra. Jag har fått till ett bra testramverk där jag anger en indatatext
i stil med:

1 § Första paragrafen.

Första paragrafens andra stycke.

2 § Andra paragrafen.

för att sedan parsea den till en objektstruktur (byggd av subklassade
unicode-, list- och dict-objekt
) som sen serialiseras till ett
enkelt ”facit” i stil med:

<Forfattning>
  <Paragraf id="P1" ordinal="1">
    <Stycke id="P1S1">
      <unicode>Första paragrafen.</unicode>
    </Stycke><Stycke id="P1S2">
      <unicode>Första paragrafens andra stycke.</unicode>
    </Stycke>
  </Paragraf>
  <Paragraf id="P2" ordinal="2">
    <Stycke id="P2S1">
      <unicode>Andra paragrafen.</unicode>
    </Stycke>
  </Paragraf>
</Forfattning>

Jag hade sedan tidigare en variant
på den här test- och facitfilsbaserade regressionstestningen
, men
det nya ramverket testar på precis rätt ställe (objektstrukturen, inte
den slutgiltiga genererade utdatan — det ovanstående är alltså inte
det egentliga utdatat även om det kan se ut så) för att det ska vara
busenkelt att utveckla ny funktionalitet genom att först skriva
testfall.

Resten av eftermiddagen tänkte jag ägna åt att få igenom mina nya
testfall för tabelldata — ett lätt exempel är tabellen i 3 §
personuppgiftslagen
, ett lite svårare tabellen i Sekretesslagens 16:e
kapitel
. ”Table recognition” visar sig vara ett svårt problem som
det forskats
mycket på
. Vi får se hur långt jag når med de naiva algoritmer jag
kan komma på.

Och ikväll blir det hårdrock – Dillinger Escape
Plan
kommer till
stan
. Och precis nyss när jag kollade upp det där fick jag veta
att Poison the Well är förband – bonuslyx!