Law of total probability – worked examples

According to Wikipedia the law of total probability "expresses the total probability of an outcome which can be realized via several distinct events". We can also think of this as the marginal probability: irrespsective of what road we took to get to this outcome, what is the total likelihood of the outcome occurring? Example 1... Continue Reading →

Expected value refresher

The expected value of an event is its most likely outcome. Assign each potential result a probability. The expected value is sum of all the potential results x their respective probabilities: ∑ (potential_result1 x probability1,… potential_resultn x probabilityn) Consider the simplest example possible, the coin flip. You'll be paid R10 if you pick tails, but... Continue Reading →

Git cheatsheet

Even working in splendid isolation there have been times when I managed to lose a prior version of my code that actually worked better, and I wished I could get back to it without having to re-think everything from scratch! Now that I'll be collaborating with others, version management is going to be a big... Continue Reading →

Bash: command not found

This morning I've been playing "spot the difference" - a simple enough task: use a bash shell script to get 2 strings from a user (first name and second name) and then evaluate whether the 2 strings are the same or different. I had a template for the script and everything from the edX course,... Continue Reading →

Why Linux / command line?

Today I'm ploughing my way through the edX Introduction to Linux and found myself wondering "whyyyy??". It's all quite entertaining and nifty, but how will I be using this later? Naturally I googled (using bing!) and found this wonderful online resource After reading the section entitled "A Real-world Use Case" involving data for New York... Continue Reading →

Getting results vs Understanding

Alexander Pope is famously quoted as saying: A little learning is a dangerous thing; drink deep, or taste not the Pierian spring: there shallow draughts intoxicate the brain, and drinking largely sobers us again. I've been thinking about these words the past few days as I worked on my latest challenge: a text classifier using... Continue Reading →

Thoughts on keeping on going

I had an email today from a reader ("K") who tried the Learn Python Challenge on Kaggle and (as does happen!) got to about Day 4 and then abandoned ship and went in search of more new stuff... The question is how to keep on going - when you get stuck, bored, de-motivated or perhaps even... Continue Reading →

Learn Python Challenge on Kaggle

I signed up for this 7-day challenge to test my knowledge, and it's been an absolute delight! As a newbie, when I find myself on StackOverflow reading discussions about "the most Pythonic way" to do something, I usually feel a bit left out... I'll just be happy if I can do it any darned way... Continue Reading →

So stoked to be attending Data Science Intensive later this year - "first of its kind in Africa": 8 weeks solving real world problems, I can hardly wait :).

Create a website or blog at

Up ↑