Russell Brand does not deserve your anger

I have been offline for a while, only catching up now on the latest Russell Brand bullshit controversy shared by everyone and their dog. Depressing stuff.

Brand wasn’t banned from anywhere, he just does his admin like I do my taxes. But the tweets got re-tweeted, and the links shared. Worrying.

Maybe it’s just the wine talking, but I think I do get it. You are angry. Takes one to know one. Being angry is not a bad thing by default, even though a lot of people have told you that it is. They were wrong. Your anger can be a very attractive feature of your personality.

Be glad you’re angry. Be glad that defaulting into anger is part of the way you’re shaped. It’s easier for us, the angry ones, than it is for those who become overwhelmed, I think. There is also a good chance that your anger is a sign that you have a strong creative impulse. That’s lucky, too.

The angry often change things. That’s a big part of the reason people are scared of anger. What doesn’t change cannot die, after all. Angry, not contented, people break rules that are in dire need of being broken. Angry people make the best lovers, leaving dark secret things seared into your soul.

Thinking things like “this shit stops now” is not a mark of the calmly comfortable mind. But it’s a type of thinking that’s often needed to make the world better.

Anger should be the thing that allows you to leapfrog over the particular bogeymen hiding under your bed, launching you into the world. Again, be glad that you have something in your psyche that can be greater than your fears.

But anger shouldn’t be used like this. It shouldn’t fuel slacktivist +1s on teh onlines. It shouldn’t become narrowly focused on a particular cause. That’s called addiction. Being in a permanent state of anger directed at the (South African, though it applies for all) government made people unthinkingly share his tweets.

There is no one cause for the ills of the world. Religions, your government, whatever, are never the sole causes of the ills you see around you. Look out for this laser-like focus of your anger, it’s a big blind spot, and people like Brand use such blind spots to manipulate us into doing his marketing for him. Empty controversy and free press. For what? Building Brand’s brand?

It doesn’t matter how justified anger toward government is – third-rate comedians shouldn’t be able to become our puppet masters this easily.

It’s a criminal waste of a powerful force.

Normalize until it’s correct, then denormalize it until it works

No wonder NoSQL took off ;)

6NF Golf

How to build a load-balanced, 3 node multi-master MySQL cluster

This howto will show you how to build a basic multi-master MySQL cluster (actually, a Percona XtraDB cluster) with a load balancer in front of it.


  • OS: Ubuntu 12.04 LTS (precise pangolin).
  • Database: Percona XtraDB Cluster. Percona XtraDB is a higher-performance, backwards-compatible drop-in replacement version of the InnoDB storage engine for MySQL. The Percona XtraDB Cluster is the Percona Server setup with the Galera multi-master cluster libraries built in.
  • Load balancer: HAproxy. HAProxy is a very high performance TCP/HTTP load balancer.

We will be building three database nodes, connected to one load balancer. Something like this:

The steps:

  1. Setup the machines
  2. Install Percona XtraDB Cluster on the database machines
  3. Configure the bootstrap node
  4. Configure the rest of the cluster
  5. Test the cluster
  6. Daemonise the clustercheck script on the database machines with xinetd
  7. Set the HAProxy load balancer up
  8. Win

Continue reading

I closed my mouth

I whispered an offer softly in the ear of your playful heart.

I closed my mouth and spoke to you in a hundred silent ways.

You know what’s on my mind, you’ve heard my thoughts,

And now, what I described to you last night, I’ll do today.


My life is a house

Total surrender
Your touch is so tender
Your skin is like water
On a burning beach
And it brings me relief

Crowded House, Nails in my Feet (the video is shit, hence the dodgy soundcloud link).

Full lyrics here

If the doors of the generous ones are locked

“Wrestle with your darkness
Angels call your name
Can you hear what they are saying
Will you ever be the same

You will find the gate that’s open
Even though your spirit’s broken
Open up my heart
Cause my lips to speak”

– Madonna, Isaac, Confessions on Dance Floor

Installing Sublime Web Inspector (and making it work on Ubuntu)

Sublime Web Inspector is a very nice add-on for Sublime Text 2 that allows you to debug JavaScript (running in Chrome) right in Sublime. This will walk you through installing it on an Ubuntu-flavoured machine.

You will need to have installed:

  • Sublime Text 2
  • Chrome (chromium-browser in apt)

Install Sublime Package Control

If you have already installed Sublime Package Control, skip to “Install Web Inspector”.

Open Sublime Text 2.
Open the Sublime Text console by pressing CTRL+` (Control + Backtick).
Copy and paste the following into the console, and press enter:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen(''+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')

You can get the newest version of the package control installation instructions from: .

Wait till the script finishes, then restart Sublime.

Install Web Inspector

Back up and install Sublime Package Control if you don’t have it already.
Now you can use the command palette (CTRL + SHIFT + P) to install the Web Inspector plugin:
Screenshot at 2013-03-18 15:35:04

Screenshot at 2013-03-18 15:35:49

Then, open Preferences -> Package Settings -> Web Inspector -> Settings – Default and modify the linux path to the chromium-browser executable as follows:
Screenshot at 2013-03-18 15:37:04
BTW, you can see I have some other nice (though not universally loved) add-ons (Bracket Highlighter, DocBlockr, SublimeLinter) installed for Sublime (all available through Package Control), they are also worth a look.

Change the /Application/whatever link to point to /usr/bin/chromium-browser (the most probable place for your chromium executable) -
Screenshot at 2013-03-18 15:37:32

The only config change necessary – change the path and save:
Screenshot at 2013-03-18 15:38:06

Use the command palette and choose Web Inspector (or press CTRL+SHIFT+R to choose the Web Inspector). Choose “Start Google Chrome with remote debug port 9222″. Web Inspector now opens chromium-browser with the --remote-debugging-port=9222 argument, thereby allowing Web Inspector to connect to Chrome’s remote debugging functionality.
Screenshot at 2013-03-18 15:45:03

You can see Chrome listening on port 9222:
Screenshot at 2013-03-18 15:48:36

In the newly opened chrome, go to the page you want to work on. Also open its source in Sublime Text.

Press CTRL+SHIFT+R (or choose Web Inspector through the control palette) and choose “Start Debugging”. Then choose the relevant Chrome tab (not pictured, because of, uhm, my tabs).
Screenshot at 2013-03-18 15:40:25

You will now see the Web Inspector is connected to your browser, look at the console output right inside Sublime Text:
Screenshot at 2013-03-18 15:47:31

Go view the screen cast at the Web Inspector page to get an idea of what it can do and how to change its settings.