Quick & dirty “CDN” in WordPress

If you want a quick & dirty way to speed up WordPress without any plugins:

  1. create a subdomain in DNS, e.g. static.yourblog.org
  2. add that subdomain as a ServerAlias to your Apache config (remember to restart apache)
  3. add the following to your wp-config.php:
    define('WP_CONTENT_URL','http://static.yourblog.org/wp-content');

If you want to do this the right way; plugins such as WP Super Cache or W3 Total Cache do a much better job at this.

Sample eens een ringtone; Bicycle Race Bells

Stel dat ge een nieuwe GSM hebt, een heuse SmartPhone misschien zelfs. Dan wilt ge dat toestel natuurlijk personaliseren, er uw eigen stempel op drukken als het ware. Want ge kunt U toch niet belachelijk maken met pakweg de default wallpaper of een standaard ringtone?
“Fietsbellen!”, riep ik onlangs dan ook in het midden van de nacht tegen m’n schone slapende vrouw. “Ik wil fietsbellen als ringtone vrouwtje” en m’n echtgenote stemde, nadat ik het oorstopje een beetje wild uit haar liefelijke rechteroor pulkte,  enthousiast in met deze briljante vondst. “Ik ben wel nog erreugh moe liefje” pruilde ik geslepen en nog voor ik m’n zin kon afmaken sprong mijn supervrouw fluks uit bed. “Geen probleem”, zei ze, “laat mij maar doen!” Toen ik voor de formaliteit nog wat protesteerde, snoerde ze me de mond met “Wat Chloe O’Brian kan, kan ik ook”! “Doe maar die van Queen” probeerde ik nog te roepen, maar zalig slapen de simpelen van geest en ik droomde psychedelische taferelen van fietsbellen, naakte vrouwen en luide gitaren:

Queen - Bicycle Race (Uncensored).avi

Enkele uren later werd ik wakker, met Veerle die geduldig naast het bed op de grond zat te wachten. “Luister”, beval ze me en ik luisterde;
[audio:https://blog.futtta.be/wp-content/uploads/2009/10/bicyclebellrace.mp3]
“Prachtig!” riep ik en ik gaf haar een beschaafd schouderklopje, “Hoe heb je dat klaargespeeld dan?”. M’n ûberVeerleken keek me aan alsof ik een kleuter was die voor de 100ste keer “Waarom?” vroeg en antwoordde toen zuchtend met een perfecte bulleted list, die ik hier trouw copy/paste:
  • Je wilde Queen, die hun “Bicycle Race” staat natuurlijk op YouTube, dat als mp4 rippen kan het kleinste kind.
  • VLC wilde die mp4 niet naar een mp3 audio-bestand omzetten, ik heb er dan maar Ogg Vorbis van gemaakt.
  • Maar Ogg Vorbis is voor freaks, dus ik heb er met mp321 een mp3 van gemaakt
  • Die mp3 heb ik op de SD-kaart van je nieuw speelgoed gekopieerd
  • Ik installeerde Ringdroid van op de Android Market en knipte die magistrale fietsbellen tenslotte uit de mp3

“Je bent geniaal schat” riep ik, “laat ons nog eens uit de bol gaan op die ultieme fietshymne van Freddie en Brian!”. We sprongen recht en begonnen stevig te rocken en te rollen op het echtelijke bed. M’n liefde voor het leven danste haar prachtige borsten bloot en ik maakte me klaar om de solo van Brian May op m’n kleine ukelele te spelen toen plots de fietsbellen weerklonken. Ik nam verbaasd op en een grijze man van SABAM kwam -telefoon in de hand- de kamer binnen om ons erop te wijzen dat het rippen van audio om een ringtone te maken, zelfs al gaat het maar over 12 seconden, onderhevig is aan de wetgeving op het auteursrecht en dat we de leden van SABAM dan ook een billijke vergoeding verschuldigd waren die hij -en terwijl hij dat zei kleedde hij zich uit- nu kwam innen. Zo werd ik deze nacht badend in het zweet wakker, m’n Veerleken zacht snurkend naast me. Ik wilde haar nog even wakker maken om haar te vertellen over de fietsbellen en vooral over Brian May op ukelele, maar de gedachte aan die man van SABAM was er te veel aan. Ik denk dat ik de fietsbel-samples op FreeSound maar eens ga beluisteren.

Pimping my Samsung Galaxy S II

didn’t really like the look & feel of my Galaxy S II’s GUI, so I decided to customize my experience to feel a bit more at home on my “personal digital assistant”. One of the first things I did (after installing some apps) was extracting my old wallpaper from the Cyanogenmod 6 zip-file to replace the ugly Samsung wallpaper.
Next on my hitlist: getting rid of Samsung’s iPhoney TouchWiz. I was very fond of the simple elegance of the open source ADW launcher on my Cyanogenmod-ized HTC Magic  (which is for sale by the way), so I installed ADW.Launcher from the Android Market. I then configured ADW to display 5 instead of the default 4 rows to better use that incredible screen resolution.
A small inconvenience of ADW.Launcher is that you don’t get notification-bubbles that display the number of new mails, messages or missed calls on the icons of those applications. ADWNotifier, an ADW.Launcher plugin, solves that problem just fine.
What’s next? Rooting that fabulous GT9100, I guess. And maybe try this early Cyanogenmod 7 build for it?

The Magic’s gone, enter Samsung Galaxy S II

Two years ago I bought a HTC Hero, my first Android handset. I lost that great device about half a year ago and -after trying a very basic Acer e110– replaced it with a 2nd hand Belgacom HTC Magic which I upgraded to Cyanogenmod 6.
Now don’t get me wrong; me and my Magic, we got along real fine. But my employer likes the smell of a fresh smartphone in the morning and subsidizes to make that happen and when I saw a colleague with a Samsung Galaxy S II, I knew me and my Magic HTC had to part ways.
The Galaxy S II sports a huge, bright screen with vivid colors (Samsung’s super AMOLED screens are simply stunning), a 1.2 GHz dual-core processor and 16Gb of internal storage (with an microSD-slot to be able to add up to 32Gb). There’s no hardware keyboard like on the HTC Desire Z I once was planning on buying, but the Galaxy does come with Swype, the virtual keyboard that takes most of the pain out of … not having a keyboard. I’ve installed all of the favorite apps from my HTC-days and as a bonus I can now finally also use Firefox Mobile (which is great, by the way).
So what’s not to like about it? Well, it’s huge, for starters. Big hands come in handy when using the S II, so I wouldn’t want to market it in China, except as a mini-tablet maybe. I’m not too thrilled about Samsung’s TouchWiz as seen on the homescreen. And battery-life isn’t that great, but that’s to be expected, with that humongous screen real estate I guess.
All in all my S II is a great smartphone. One probably doesn’t really need a dual-core handset with 16Gb of memory and a 800X480 screen, but it sure is nice little gadget to play around with for the next 2 years or so …

WordPress dashboard fatal error; blame & tweak APC!

I upgraded APC a couple of days ago and subsequently encountered a fatal error when trying to load my WordPress dashboard (but not the other wp-admin pages);

Fatal error: Call to undefined function wp_dashboard_setup() in wp-admin/index.php on line 15

Google confirmed the obvious; APC and WordPress didn’t get along (again), and the most common solution (next to switching from APC to XCache or eAccelerator) is to alter wp-admin/index.php by replacing
require_once(ABSPATH . 'wp-admin/includes/dashboard.php');
with
require_once('includes/dashboard.php');
But I prefer not to change code that is bound to be overwritten at every WordPress upgrade and surely other PHP-apps suffer from the same problem, so instead I tweaked APC by adding the following line to my configuration:
apc.include_once_override=0
This tells APC not to optimize include_once (it’s complicated). Why I have to explicitly specify this, if “0” is the default value anyhow, is beyond me though.

As found on the web (July 6th)

generic (feed #49)
generic (feed #49)
generic (feed #49)
generic (feed #49)
generic (feed #49)
generic (feed #49)
youtube (feed #51)
blog (feed #46)
generic (feed #49)
blog (feed #46)
generic (feed #49)
generic (feed #49)