Monthly Archives: September 2012

Gevaar, kans op emotie!

Ik ben geen emotioneel mens. Domweg gelukkig, dat wel. Maar emotioneel, nee, dat dacht ik niet.

Gisteren kreeg ik echter twee keer ongelijk. Eén keer overdag bij het lezen van deze bijzonder intense blogpost van Coding Horror’s Jeff Atwood over dood, schuld en ouderschap. De tweede keer ‘s avonds, in bed, toen ik op Klara Symfonie nr. 3 van Górecki hoorde:

H.M. Górecki – Symphony No. 3 „Symphony of sorrowful songs" op. 36

Watch this video on YouTube.

Toen Klara na de eerste beweging Jan Fabre terug aan het woord liet, zette ik de radio uit en zocht ik het stuk onmiddellijk op YouTube, om het daar volledig te beluisteren met Atwood’s blogpost spokend door mijn achterhoofd.

Ook nu kan ik niet anders dan naar die “Symfonie van Klaagliederen” te blijven luisteren. Domweg gelukkig, met een krop in de keel.

Learning from my Apache/ CDN mistakes

Earlier this year I configured this here little blog to offload static resources to MaxCDN. I made some mistakes in the process, which I documented in a blogpost that has been in my drafts for too long. So here’s the gist;

  1. Etags misconfiguration:
    • Problem: By default Apache uses the file’s inode to calculate the Etag, but that inode is unknown to the CDN, so Etags can never match.
    • Solution: change the Apache config not to use inode, e.g. “FileETag MTime Size”
  2. Cookies & domains issues:
    • Problem: I created my CDN-domain as a sub-domain of my main one, which led to (small) performance and (potentially huge) security issues.
    • Solution: Make sure your CDN-domain is different from the domain on which your cookies are set. So for example for main domain blog.futtta.be don’t use static-cdn.blog.futtta.be, but rather blog-cdn.futtta.be (except if cookies would be set on futtta.be, in which case I would need cdn-futtta.be).
    • Todo: it might make sense to add some Apache magic to make sure that for requests from the CDN:

Septemberigheid, omdat dat zo hoort!

Misschien ligt het aan het weer, misschien komt het door de bergen werk of misschien word ik te oud voor die september-neptember onzin, maar ik heb nog geen tijd of zin gehad om mijn traditionele  “de mooiste maand ter wereld“-blogpost te schrijven.

Maar vandaag is daar verandering in gekomen; telewerken vanuit de comfortabele bruine zetel in de veranda, buiten regent het, onze oude zwarte labrador ligt snurkend naast me en Bon Iver (van wie op YouTube nog even een volledig concert te zien is) speelt “Michicant” met een lang uitgesponnen outro vol prachtige koperblazers:

Bon Iver at Coachella 2012: Michicant (in HD)

Watch this video on YouTube.

*zucht*

Meezingen met dochterken en Neil Diamond

Iedereen met een beetje gevoel voor goeie muziek moet verplicht de neus optrekken voor alles wat naar Neil Diamond ruikt. Dat is, denk ik, altijd zo geweest. Met disco en rock had Neil niets te maken, maar ook dichter bij huis leek hij nooit op veel steun te moeten rekenen: niet genoeg bloempjes voor de hippies, te eenvoudige woorden voor de singer-songwriters, te veel orkestratie voor de folkies misschien?

Maar ik ben 43, ik ben niet meer bezig met wat wel of niet cool is en ik kan toch niet meer volgen. Dus toen m’n 6-jarig dochterken een paar weken geleden thuiskwam van een middag spelen bij een vriendinnetje en out of the blue vol vrolijke overgave “Sweet Caroline” zong, was ik direct verkocht. “Sweet Caroline” is een pracht-song, ik word daar vrolijk van! U ook?

Neil Diamond – Sweet Caroline – 45 RPM Original Mono Mix

Watch this video on YouTube.

En indien ge het hier toch moeilijk mee zou hebben, wanneer ge echt goed luistert hoort ge misschien een echo van Leonard Cohen’s “So Long, Marianne” in het refrein. En Cohen, die moogt ge wel graag horen van uw geloof, toch?

CSP: doing unsafe-inline the Firefox-way

A couple of weeks ago I sobbed because of the lack of support for “unsafe-inline” in Firefox. There’s some Mozillians working on that (for CSS, at least), but given the release-train, that’ll probably only appear around Firefox 19. While perusing CSP-related tickets in Bugzilla however, I came across an interesting comment:

Firefox expects “options inline-script eval-script” instead of “script-src ‘unsafe-inline’ ‘unsafe-eval'” which it should be per spec. Also, Firefox expects “xhr-src” instead of “connect-src”.

Come again? So I can tell Firefox to execute inline script even without support for CSP 1.0 after all? I opened up my development-version of WP DoNotTrack to rework the “proof of concept”-code into this:

function wp_donottrack_csp() {
 global $listmode;
 if ($listmode==="1")
  $whitelist=wp_donottrack_getWhiteList(true);
  $csp="default-src 'self' 'unsafe-inline' ";

  if (is_array($whitelist)) {
   foreach ($whitelist as $white) {
    $csp.=" *.".$white;
   }
  }

 // old-style options inline-script for firefox
 $csp.="; options inline-script;";

 header("X-Content-Security-Policy: " . $csp);
 header("Content-Security-Policy: ". $csp);

 // needed for chrome, but safari 5 (latest version on windows) might be broken?!
 header("X-WebKit-CSP: " . $csp);
 }
}

Based on limited testing, it indeed seems to work great this way. So maybe -if this also turns out to work in IE10 and on Safari for Windows- a next version of WP DoNotTrack can ship with CSP-support after all?