Visualizing Team Practice Levels

Idé: Varje halvår startar man om. Man identifierar då axlarna man vill använda sig av, t ex parprogrammering, automatiserade acceptanstest, TDD, backlog refinement, … Jag hade kollat på eXtreme Programming för inspiration till fler axlar, eller om det finns något Software Engineering-dokument för organisationen eller motsvarande.

För varje axel identifierar man sedan fyra – fem “nivåer” av utförande. Det går bra att ha olika antal nivåer. För parprogrammering skulle det kunna se ut såhär:

  • promiskuös parprogrammering
  • dagligen, minst 3 timmar
  • nästan dagligen
  • minst en gång per vecka
  • varje sprint
  • en gång varje år

För TDD:

  • så ofta det bara går – all produktionskod drivs fram från test
  • varje gång vi parprogrammerar (kanske dumt att blanda in en annan axel …)
  • minst en gång per dag
  • minst en gång per sprint
  • en gång per år

 

Och varannan sprint eller så ber man teamet sätt ut ett kryss på varje “axel” som sedan sammanställs till “spider chart”. Dessa sätts upp i en serie så man kan se förändring över tid.

Spider Chart Example

munpack eml files

VIA Egencia skickar gärna sina biljettförslag som .eml-filer, vilket är ett påhitt från Microsoft. VIA Egencia har på senare tid börjat 64base-koda dem vilket gör att de inte längre är läsbara som klartext. Google mail-klienten klarar inte av att läsa/visa dessa filer alls, och även om Evoluion klarar av att läsa dem alldeles fint så är inte det inte alltid trivialt att få in mailen i Evolution. Hur som helst så kan man givetvis ordna detta på andra sätt. Här är två sådan sätt.

$ sudo aptitude install mpack
$ munpack -t file.eml
part1 (text/plain)
part2 (text/html)
$ cat part1
...
$ cp file.eml b64.txt
$ # ta bort mail headers, lägg hela base64-kodade materialet på en rad
$ $EDITOR b64.txt 
$ base64 -d b64.txt
...

Upgrading DokuWiki

DokuWiki is a really lightweight wiki which I’ve used since 2006. Today I decided it was time for an update and so these are the steps I followed.

cd /srv/www/dokuwiki
git commit
git push
wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
tar xzf dokuwiki-stable.tgz --strip-components=1
touch conf/local.php && rm -rf data/cache/*
rm dokuwiki-stable.tgz
grep -Ev '^($|#)' data/deleted.files | xargs -n 1 rm -vf
git add -A
git commit
git push

Notes:

  • the rm (xargs + grep) command removes unused files.
  • --strip-components removes path segments from the filename of the items in the tar ball.
  • Avoid getting the directory with cached content end up under git’s supervision.