Biased Representation

Spot the not in the recent screen grab from a TV broadcast in South Africa for the recent elections:

SABC - South African elections
SABC - South African elections

If you are a bit slow, here is how that graph should have looked like (to be a fair, accurate mathematical representation of the data). Why? Because the y-axis of a chart must be constant for all data items on the x-axis so that they can be compared - which is the whole point of a graph. Otherwise it is not a graph but a story. Like the one you tell your kids just before an atomic bomb is being detonated - "Everything will be OK, I promise".

Full Article

The Stuff We Worry About

Amidst global warming, pollution, world hunger, cyberwarfare, real wars, droughts, economic crisis, antibiotic resistance, genocide (wtf - we have classifications of genocide?!) and Justin Bieber - we have this to worry about too:

Analysts had been worried that without standardisation between platforms, intent for violent emoji could be misunderstood. For instance, if someone sent an acquaintance a message using their iPhone offering to come around with some friends and some waterguns, that acquaintance might well misunderstand the thrust of the message if they were using an Android phone and saw a series of pistols.

Source

Pistol vs water pistol
Pistol vs water pistol

Appalling Science

We live in a day and age where information is available at the touch of a button. When I recently decided to research which thermal compound is best and how to best apply it to the CPU in my new workstation, I naturally turned to Google.

Usually within the first 2-4 pages one get all the relevant results provided your keywords are good. This was not a hard search to perform:

thermal compound cpu compared

thermal compound cpu reviewed

how to best apply thermal compounds cpu

Full Article

The Power Of Debug Logs

I am always hesitant to incorporate too many debug logging statements in my code as it tend to clutter the code, sometimes get left turned on in production where it can dramatically slow down the system, expose confidential information and also consume all free storage space quickly. Of course, if done properly this is an incredibly powerful aspect of system design.

I was reminded today how important it is to have this looking glass built into systems, especially background processes. I had created a system that integrates many disparate systems, and communicates almost exclusively using REST API calls. However, one feature was not yet turned on, so the code followed a logic path that I did not anticipate at the time. In the end, the system ended up making hundreds of API calls per second to a specific service endpoint for days on end, without me knowing.

I started picking up that something was amiss as every day I would get one or two notifications that the API call failed - due to timeout, internal error or other reasons. However, that method was being invoked by any of up to 30 different callers - so tracking it was very hard.

Full Article

I Was The Fastest Man For 30 Minutes

At least, that is what I'd like to believe. Sometimes self-deceit is bliss. This little 562hp, ΒΌ million dollar monster helped me in my quest:

Lamborghini Gallardo
Lamborghini Gallardo
Lamborghini Gallardo
Lamborghini Gallardo
Full Article