Haisum's Blog It's not a bug, it's a feature.

Writing makes science possible

Years ago, I was forced to go through a series of audio lectures by Professor Steven L. Goldman on Great Scientific Ideas That Changed the World. It was part of a undergraduate course, so I had to listen, read and understand the lectures. Turned out, it was one of best things I did during graduation. I recommend anyone interested in learning history of science and how it evolved and shaped our modern world to go through the lectures. If you are more of a reader than listener, transcript of those lectures is available in PDF which you can read on your kindle or print out and read on paper. It will be one of best things you’ll read about our modern world and how science played an elementary role in building it.

Relief of knowing the bug isn't your fault

I wrote a vagrant file for local setup of jekyll for this blog last week. One really annoying bug that bothered me was that in spite of installing ruby2.0 package, bundle install command was failing on different bundles again and again with very obscure errors. Digging in deep revealed in spite of installing ruby2.0 only, /usr/bin/ruby was pointing to ruby1.9. I thought I was at fault first, but after some retries concluded, either of ruby, ubuntu or jekyll screwed up. Ruby 2.0 is requirement for jekyll, so symlinking /usr/bin/ruby2.0 to /usr/bin/ruby solved the issue, but if anything else depended on ruby1.9 in ubuntu, it would break. I didn’t really care because all I wanted with my ubuntu/vagrant vm was running jekyll so I could preview my blog before pushing it. Today after some google search I found it was indeed a bug by Ubuntu itself. You can see a lot of bashing going on at Bug#1310292: installing ruby2.0 results in ruby 1.9.3-p484 as default version. It feels good to find bugs in such big scale, quality software. You find satisfaction in knowing you aren’t the only one introducing stupid bugs in production.

Collection of papers, lectures and readings on distributed systems

Ever since I graduated, I have been very very interested in building distributed fault tolerant systems and I read a lot about them. In my part time, I also work on some hobby projects to get better understanding of modern distributed systems. Over the time, I have made a good collection of useful resources such as papers, lectures and other readings. Here’s my collection on distributed systems shared with public via Google drive. Hope it helps someone interested in or working on distributed systems.

Vagrant file for github pages

Vagrant makes life easier and keeps your machine clean. I have made a vagrant file for github pages and am sharing it here so you don’t have to scratch head and says some nasty things to ruby and gems as I did.

Wrong words at wrong time

This happened almost an year ago. I was in Dubai, dressing up to go to work in morning. My home mate was in good mood this morning so he offered me and another mate a ride to office which we gladly accepted. So we sit in car and set off, my friend though to take a “short cut” and went in a service lane and got out of it at wrong side on a road which was not one way. In his defense, if you have been to Dubai, it’s a city with big one way roads and two ways road are very rare. As we get out of service lane a big dumper is coming our way from other side right one our faces. All of us were damn sure we can’t do anything about it, only the dumper driver can apply brakes and save us. So almost certain of our deaths, two friends start remembering God. Muslims usually say Allah u Akbar, or recite some other verse in such situations and it’s considered good and useful in after life for them to remember God in last moments of life. Apparently I am not good at playing Muslim and as soon as I saw dumper a lot of F-Bombs dropped out of mouth. It went like this: