Algorithms Are Chaotic Neutral

Carina Zona gave the Sunday keynote for PyConAU 2015. It was a very interesting talk about the ethics of insight mining from data, and algorithms. She gave examples of data mining fails – situations where Target discovered a teenage girl was pregnant before her parents even knew; or like machine learned Google search matches that implied black people were more likely to be arrested. It was her last few points that I got interested in the ethical dilemmas that may occur. And it is these last few points that I want to focus the discussion on.

One of the key points that I took away[1] was that the newer and more powerful machine learning algorithms out there are inadvertantly discriminate along the various power axes out there (think race, social economic background, gender, sexual orientation etc). There was an implicit notion that we should be designing better algorithms to deal with these sorts of biases.

I have experience designing these things and I quite disagree with that notion. I noted on Twitter that the examples were basically the machine learning algorithms were exposing/mirroring what is learned from the data.

Carina did indeed point out that the data is indeed biased – she did indeed point out that for example, film stock in the 1950s were tuned for fairer skin, and therefore the amount of photographic data for darker skinned peole were lacking [2]

But before we dive in deeper, I would like to bring up some caveats:

  • I very much agree with Carina that we have a problem. The points I’m disagreeing upon is the way we should go about to fix it
  • I’m not a professional ethicist, nor am I a philosopher. I’m really more of an armchair expert
  • I’m not an academic dealing with the topics – I consider myself fairly well read, but I am by no means an expert.
  • I am moderately interested in inequality, inequity and injustice, but I am absolutely disinterested with the squabbles of identity politics, and I only have a passing familiarity of the field.
  • I like to think of myself as fairly rational. It is from this point of view that I’m making my arguments. However, in my experience I have been told that this can be quite alienating/uncaring/insensitive.
  • I will bring my biases to this argument, and I will disclose my known biases whereever possible. However, it may be possible that I have missed, and so please tell me.

Continue reading

  1. [1] not necessarily the key points she was trying to communicate – it could just be I have shitty comprehension, hence rendering this entire blogpost moot
  2. [2] This NPR article seems to be the closest reference I have, which by the way is fascinating as hell.

The Bane of Communicating Succinctly

You may have noticed I have not blogged for a while. And if you do follow me on twitter you’ll note that my tweet rate has also dropped.

Ever increasingly, I find the need to share some ideas, but the ideas cannot be succinctly communicated in a pithy sentence or two. I have a lot of what I consider to be “dangerous” ideas (in the vein of the Festival of Dangerous Ideas), and I think it is imperative to be clear about the ideas.

And so I would sit down and write a blog post about it, only for it to derail into some mega long essay that is at best reads like mindless rambling (for example, see my previous post). It is in these cases that I sometimes feel I’m better off not writing. But sometimes I get passionate about a topic, and start writing a lot

Then midway through, I’d lose steam. Here are the example of titles that I have in my archive that went nowhere:

  • Why Do Ceramics Heat Up in Microwave Ovens (3997 words and I lost steam) – this article began life exactly a year ago today
  • Making Friends – A Rant (1301 words, and still incomplete, as I’m still gathering data, though I’m quite sure I’ll lose steam on that too)
  • Scrambled Eggs, The Guide (1514 words, lost steam already)
  • Logarithmic (A musing on non linear progression of things)
  • Track (A musing on being on track for a plan, and why sometimes it’s ok to let go)
  • Graveyard of Sideprojects (originally written when there was a craze over having side projects. I have 200+ side projects that I have not touched for years)
  • The Virtuous Molecule (a blog post about the fallacies of natural products)
  • Reviews: I have 3 book reviews, 2 movie reviews in my drafts, and they are nowhere

I have since concluded that it’s the length that makes me lose steam.

Yesterday I read Evan Miller’s Four Days of Go. The takeaway is that I wish I could write like him. I actually felt envious that he was able to get his point across straight, and still not be dry.

I have a problem with communicating succinctly. I look at all the work emails that I sent out – most explanation type emails have graphs, definitions and all sorts of background things. Even when I highlight the key takeaway points, written in normal English, sometimes they are missed.

…[P]erfection is attained not when there is nothing more to add, but when there is nothing more to remove

So says the oft-quoted Antoine de Saint Exupery.

The problem is I don’t know what to take away. I don’t know what to remove. The typical advice of how to improve writing is to “write more”. I’ve written this blog for more than 10 years in one form or another. I actually need to know how to improve, not just write more.



I started lifting weights a few months ago after a bit of health awakening. At first, it was a lot of fuckaround. Eventually I got into a program, and a routine. I started seeing progress in my strength, and I kept a record of how much I can lift – I’ve got nice charts to show my strength progressions. It’s not much but I can bench press about 60% of my body mass now. Slowly but surely I’m getting there.

When you are a newbie to lifting weights, there is a phase you go through what is colloquially called ‘n00b gainz’ online. It’s where an untrained/novice lifter will gain strength faster than a trained lifter. In other words, you will see strength increase (as measured by the weight lifted) linearly as a function of time, until a certain point, where you no longer see that increase.

I’ve been riding the n00b gainz wave since I started, until the last couple of weeks, where I have stalled on my squats and benchpress. The weights I can lift no longer increase linearly with time. And this is frustrating.

It’s mostly psychological, really. There is something nice about linearity. It’s easy work – put in X amount of work, get out Y amount of result. Conversely, we can also say that things get “harder” when the results are logarithmic in response to the effort put in – where you have to put in a lot more work for less result each successive time.

It is said that the n00b gainz phase is determined by one’s genetic potential. The logarithmic progression that comes after is hard work. Some people are more genetically gifted in the strength department, and so spend longer time in the n00b gains phase. By the time they get out into the logarithmic progression bit, they are way ahead.

Thinking about this is kinda stressing. But then I think back on the things I did in life so far. Let’s say everything in life with some sort of progression will follow this form: linear until a certain point, then it becomes logarithmic. It can be studying, understanding of mathematics, or weightlifting. We’ll call this the “easy” and the “hard” parts.

All my life I have coasted on the “easy” parts. Exams? Didn’t have to study much for it, because a lot of things were intuitively understood. Startup? Writing the programs were the easy parts. Initial marketing and press handling was the easy part. Then the going gets tough, and I bail, or abandon the project. It would appear that I have ran from logarithmic progressions all my life.

This isn’t a good thing. How would one be able to persevere? I need to be learning that.

Eyetracking Jetpack Joyride, Smash Hit and Dungeon Keeper

TL;DR – I got a little upset that I didn’t get any jobs I wanted, so I decided to learn how to write an Android app to relax instead. The result is – Gaze Analytics For the Rest Of Us. The rest of the blog post chronicles how I got to that point.

The week before last was a terrible week for me. It was one week after I had published my books. I was looking to take some time off from updating the books. After about 6 months being self-employed, doing the things I love to do, I felt it was time for me to return to the workforce. Let’s face it, it’s not easy to be self employed and get a steady paycheck. So I started looking for jobs.

All was well. I had applied to a number of jobs that I was interested in. By the end of the week however, I had nothing – nobody called back. Naturally, coming off the high of having just published a couple of books, it was crushing.

Remember a few months ago, I was mulling over acquiring a tablet? Out of sheer coincidence, I came into posession of a Nexus 10 a few days after I blogged that entry. It’s an older model, but hey, beggars can’t be choosers. Despite coming to possession of the tablet, I never really used it.

Anyway, back to the week before last. Combined with the fact that I got rejected for those jobs that I wanted plus a few more not so nice news, I was feeling pretty shitty about myself. So on Friday evening, I altered my state of mind chemically to relax a little.

After some drinks, I took out my tablet and fiddled with it while relaxing with pineapples. I decided to download my favourite game on tablets since 2011 – Jetpack Joyride. Now, when your brain is under the influence, time seems to slow down – your body appears to lag. Specifically my eyeballs felt like they were lagging. I kept looking at the right of the screen, and I could feel my eyes darting to look at the right and back to Barry on a very regular basis.

This led me to ask a question: what does Jetpack Joyride look like when one’s eyes are tracked? What would a heatmap look like? Clearly there are eye tracking devices out there like the EyeTribe or Tobii which is fantastic. But I didn’t have access to any of those. The front-facing camera of my tablet appeared to frown at me. Then it hit me: why not use it to do eye tracking?

So I dragged myself to the computer, and started learning how to write Android apps. To their credit, the Android developer page is absolutely easy to use – if an intoxicated person can read and create an app in about an hour, you know it’s bloody good documentation. I didn’t get far, except to capture videos and detect my face, which is easy stuff anyone can do. I went to bed.
Continue reading


My brain is in overdrive mode again. I hate it. It makes me quite unproductive. I hate it when I’m unproductive. This post is a brain dump in bid to win my productivity back

I spent the early part of the day editing my books – pretty good effort with 1 chapter left to go for basic editing. Future edits can be done once the books have been published.

The rest of the day was spent with my brain in overdrive. No idea what caused it. Perhaps the increased sugar intake due to ingestion of carbohydrates. Either way I am overthinking the smallest of things.

The afternoon was spent evaluating a potential consulting gig. A yes/no thing took me more than 5 hours of deliberating. It was an astrophysics based statistics consulting, but I wanted more information. The domain specific knowledge usually helps me with decision making in any statistical analysis. I didn’t have enough trigonometry knowledge to take up the gig (well, I could do the statistics part, but not knowing the background of the problem makes me a poor problem solver). I should have rejected that outright. But I spent 5 hours deliberating on it.

I spent time brushing up on basic trigonometry, and then the ideas started flooding in. Maybe I could do this! Maybe I could do that! I could not calm my brain down. Maybe because it’s a Friday. I said no to the consulting job.

Then I had dinner. The food was okay. We had desserts. I recalled why I don’t actually have a food review blog – I could not stop mentally criticizing everything I ate. I deconstructed everything in my mind, down to its basic ingredients, and would be mentally telling myself how to improve textures, tastes and flavours.

One particularly sticky idea that I had was creating a milk that tasted like chocolate. By that I mean, normal looking white milk, except it was a chocolate milk. I felt like I had to go home to try. I didn’t get the chance to.

Brain on overdrive, I started overthinking everything. I went to the supermarket to pick up grapes and fruit. I thought about a joke about Abelian grapes and started chuckling to myself. Partner thought I went a little nuts, so I told her. She didn’t find it funny. Told the joke to 3 other people. Nobody found it funny. Told a number of other jokes that nobody found funny.

I started wondering about the concept and nature of humour and what makes people laugh. Clearly not me. Then I recalled the stereotype people laugh at. The Big Bang Theory was one of them. I used to like it a lot. Then I realized that you were supposed to laugh at the characters, not with the characters. Now I just watch it because I had followed it for 7 seasons so far – the sunk cost fallacy clearly affects even my currently hyperrational state of mind.

I cannot shut off. I am so tired. I know a few things will shut me off – movies, or drugs. Even with movies I don’t seem to enjoy them as much as I used to. I overanalyze every frame. I overanalyze story structure and see twists coming a mile away. I overanalyze cinematography and colour grading to get a sense of things. In the past this used to be subconsciously done. Now it’s active and conscious. It’s tiring.

So very tiring. Before writing this post, I sat in bed wondering how Superman would navigate given that he has just learned how to fly. Clearly navigating the skies by ground based landmark is one way, but then the vivid scene of Superman flying across the African savannah breaking up herds of zebras kept playing in my mind. It was a wonderful scene but it raises questions about how Superman navigates while flying. Birds can sense magnetic fields in their beaks. Can Supes do the same? Perhaps he goes home by doing the Christopher Reeve thing – flying to low earth orbit and re-entry. But how would he deal with the relativistic effect? Assuming he has a superior sense, he would definitely sense the difference.

By then it was obvious I needed a brain dump. My laptop is closest, so my blog is my tool. These things are running in my head all the time. I can’t sleep nor can I be productive. My thoughts branch out way too quickly and way too often now. I don’t really feel like sedating myself, and I don’t do trees alone, nor do I want to given my hyperactive state right now.

I’m just so tired.

Programming is Fun

This thought came to mind as I was working on various miscellenous devop stuff for new Pressyo projects:

Programming is fun and easy. Software development and engineering is tedious as fuck.

I like to think of myself as a guy who programs for a hobby. I cannot see myself doing everyday what I just spent the last 4 hours doing. Devops is schlep. Sure, things like Vagrant and Docker makes things a lot easier, but it’s still extremely time consuming and quite honestly, soul crushing. Devops isn’t for me. Yes, I know about Chef, Puppet. I love Salt myself. But even then, setting those things up are a pain in the ass and very time consuming.

But besides devops, there are other things that are pain points too: a webapp must be set up to be used for every web facing project we have. Even if a framework is used, a lot of time is spent building out the frontend. Developing frontends is schlep too.

And then somewhere in the deep depths of my memories, I recall a phrase, “a startup is defined by the schlep it is willing to undertake”. And so, I’m jumping in.


Interacting with new people do from time to time, make me somewhat anxious. Some questions in particular are especially anxiety inducing – A question like “what is your favourite X”.

The thing about favourites is that they imply a preference set in that one or more than one item in the set is more preferred than the others, usually in some kind of order. While it is true that for most categories of things I have a somewhat fixed preference set, problems arise from a few issues, which I will further elaborate below:

  • The preference set is subject to extrinsic variables
  • Too many tied orderings/too few tiebreakers
  • The humblebrag

Continue reading

Do Not Expect Breakthroughs

I run in multiple circles of acquaintances. Amongst my circles of acquaintances, one is a heavily transhumanist/futurist/post-human circle. I would often engage in discussion – over drinks usually – about the Singularity and what’s to come, our minds would meander amongst the hopeful and not so hopeful futures.

There were many ideas floated. Most were interesting, but few were realistic. Being around transhumanist acquaintances gives me a feeling of hanging out amongst science fiction authors of the 1950s. I often get a sense of retrofuturism when I discuss transhumanism. There is just this feeling of un-realism that I get when I hear people talk about transhumanism. Granted, a lot of these people who talk about these things are fantasizing and do not have a realistic hold of what is possible. There was a guy who seriously thought nanobots were literally robots shrunken to molecule size. It was a very awkward moment explaining that really, nanotech and nanobots are basically chemistry, and how to structure molecules so they do stuff.

I also hang in another circle of acquaintances who are very much into startup and hacker culture. Given the topic matter at hand, it is obvious that these two circles do intersect. We would hang out and talk about the Glorious Transhumanist Future, and how we can profit from it. I do however, have some reservations about these discussions.

One particular discussion stood out for me. We had just came off playing with an Oculus Rift, and he mentioned that in the future, we would be replacing our eyes with digital cameras which feed directly into the brain. And he mentioned that NOW would be the best time to get prepared for such an event: create a startup around the expectation that people will replace their eyeballs with straight-to-the-brain cameras.

Yes, you read that right. Not start a startup to get the tech, but start a startup anticipating the breakthrough.

To me, that was the most ridiculous thing I’ve heard. The level of ridiculousness would have dropped had he said “let’s work to bring the eyeball-replacement tech to the public”. Instead, when I asked him if he knew roughly the basics of replacing a human organ, he merely replied with “I trust someone will discover how to. And by that time, if we decide to enter the market it’d be too late”.

I’m sorry, but that has got to be the most bullshit thing I’ve heard. The fantasizing that someone will bring a breakthrough that will benefit you. I’d be a lot more sympathetic to the idea if he had said he’s working on the breakthrough.

And I think this is the problem with a lot of futurists. The ideas remain in the realm of pure fantasy and are not rooted in realism. Another discussion I had centered around powered exoskeletons. If one had given even the mere thought to conceptually building a powered exoskeleton (like say an Iron Man suit), one’d immediately run into problems that would require breakthroughs to solve. In the case of the Iron Man suit, there would need to be a breakthrough in battery technology, or portable power (miniaturized arc reactor, anyone?)

I’m not being a Debbie Downer pissing on everyone’s optimism though. My main thesis is: if a certain future you expect requires a breakthrough in technology or scientific knowledge, you shouldn’t be counting on the fact that the breakthrough will happen due to someone else’s hard work.

There is a lot to be said about black swans and counterfactual thinking, but I shall instead end with this xkcd from yesterday.

Obsessive Frenzy

I like to think that I understand myself very well. But there are bits of me that even I don’t get. Over the past three weeks, the online advertising world had been rocked by massive incidences of fraud and malware. As part of my day job I have traced the sources of malware and fraud and we have ceased working with those companies behind them. At the same time I was also involved in a … let’s just call it consulting capacity to another potential fraud case (not within online advertising). I got into a frenzy working on both projects at the same time. Usually I would be happy that I’m highly productive, but this time round I felt rather miserable. Continue reading

An Aversion To Ship

I have a confession to make. It had been slightly more than a month since I last committed any code to Fork the Cookbook. In fact, the whole team hadn’t contributed to Fork the Cookbook in about a month. Only the scant updates here and there. If you were to have a peek into what we were doing, you would think it was abandonware.

commit chart for fork the cookbook

Only that it wasn’t. For two weeks now, I have been actively writing code for Fork the Cookbook again. Today I wrote the third shippable feature since a month ago. And yet you will not see those features publicly yet. I have it committed on the dev branches, but they’re not in the master branch yet. In short, they’re not shipped.

I have developed an aversion to shipping code. Not due to laziness or ineffectiveness. It’s something else. I feel like there is some sort of psychological factor that prevents me from typing git merge dev-x. Not quite sure what it is. I’ll need to meditate on it tonight.

Or maybe I am making excuses for myself. Or if I listen to my bitchy critics, I’m just writing a “flawed system”. Who knows, eh?