Will You Be Out of Job if You Don’t Learn AI?

About a year back, Mark Cuban remarked that people without AI skills “are going to be a dinosaur within three years.” Mark is not alone in believing that AI takeover is imminent. I have heard similar opinions from people around me just as often. Some are even frantically picking up MOOC courses on Machine Learning lest they become unemployable.

The Science Behind Excellence is Known; Why Isn’t, then, Everyone an Expert?

In the mid-1980s Daniel Chambliss, a sociology professor from Hamilton College, endeavored to demystify excellence, defined by him as ”consistent superiority of performance.” His quest lead him to study “competitive swimming” as it offered unambiguous measures of performance (races won, fastest swim). Obviously, it’d be a lot harder to rank pianists, actors, and writers. Over the next six years, he tracked, interviewed, and analyzed around one hundred and twenty swimmers of various levels of ability.

Why Trends Matter (And Numbers Don't)

If you follow the news, the proposition that world is getting better would sound almost laughable. How could that even be? There are cases of horrific violence every day; climate change, already a terrifying problem, is getting aggravated by a rising middle-class; and, abject poverty is still widespread. The good news is our pessimism is unfounded. In nearly every metric of human betterment, we have made a remarkable progress over the last decades.

Want to Finish Your Side-project? Start by Getting Something on the Screen

Before Tom Wolfe wrote his masterworks, he was an ordinary writer who got plagued with writer’s block now and then. On an Esquire magazine assignment on California’s custom cars, he was convinced—and later admitted to his editor—that he wouldn’t be able to get the story done by himself. Byron Dobell, his editor, who desperately needed something, asked him to just write up his notes in a letter to him. Wolfe just did that. He started the letter with “Dear Byron”, and when he finished it, it ran forty-nine pages. Next morning, he submitted it to his editor, who was expecting much editorial work before publishing it. Instead, he just erased the salutation and ran the piece.

The Futility of Bitcoin's 'Digital Gold' Vision

A few days back, Bitcoin crossed the $15,000 mark. In just two months it has more than tripled its price, proving that sceptics were naive all the way long. There has also been a decided shift in the perception of Bitcoin: from a revolutionising currency to a store of value. People might still be optimistic about its practical utility, but it’s difficult to treat a currency with such wild movements as…well…a currency. There’s little sense in using Bitcoin to buy things when you can expect it to buy thrice as much in a few weeks more, much less in accepting it when it’s prone to crash, fees are ridiculously high, and verifying transactions takes forever.

Survivorship Bias is a Poor Excuse for not Trying

Microsoft’s meteoric rise can be traced back to a meeting where Bill Gates sold a vapourware operating system to IBM. If that hadn’t happened, Microsoft could’ve likely been a small company selling programming languages. Bill Gates admits that he was lucky and insists that dropping out of college education isn’t a smart idea. In another universe, Bill Gates could’ve been a CEO of a medium-size company—talented, smart but not a hugely successful one.

Things You Can Omit in an MVP

Most software ventures fail and they fail because they never solved a problem, to begin with. The Internet has made it easier than ever to start a software business but, at the same time, made it too enticing to create a product that no one needs. For that reason, it’s only rational to first test the waters with a Minimal Viable Product—a reduced subset of a full-blown software. As the well-reasoned logic goes, if people are ready to pay for your rough-and-ready product, there’s decent chance you’re heading in the right direction.

Contradictory Startup Advice

There isn’t any established science that categorically nails the process of creating a startup (I have used “startup” to refer an Internet business of any scale). However, there are pointers from founders who did it successfully and cautious lessons from those who failed. Be it marketing, sales, hiring, or making business decisions, every area pertaining to startups has been meticulously covered in books, podcasts, courses, and articles.

Why Programmers Should Automate More

Last week, I created a small script to aid my workflow which left me wondering why I didn’t make it earlier. It adds an option in Finder’s context menu to start a static web server in any folder which makes it easier to preview static websites. Technically, it’s equivalent to firing up the terminal, cding to the directory, and using one of the many options to create a static server. The convenience of doing in one step which took three is minor, but automating the process is also advantageous in secondary ways. The crucial benefit is removing the tedious chunk—even if a small one—of my work. I can take pride in how my real work won’t include time to get a static server running.

How to Teach Offside To a Five-Year Old

I have a big gripe with how children are taught things. Each lesson is shoved down their throats without an effort to steer their curious minds. In an insidious manner, this creativity-inhibiting process creates a deep-rooted habit of rote-learning things without using the critical thinking intellect. The hows and whys gradually disappear from children’s conscious creating a subservient bot rather than an inquisitive person. Sometimes, forced rote-learning is fairly obvious but often it’s rather subtle. A remarkable example of this lies in sports’ idiosyncrasies and how they were explained to me.

Never Underestimate the Power of Creating Something Useless

We conceived the idea of “Bouncelytics” as a small analytics tool to help people understand their bounced visitors I saw many blogs mentioning how bounce rate wasn’t a useful metrics since it didn’t account for the time spent on the page. As lean guys, we set-up our landing page with what we were planning to build and posted it wherever we could. We got about 170+ sign-ups and we were terribly excited about having so many people interested in our product. I always liked the idea of a small product with minimal overhead that pays the bills and frees you to do anything else. This idea seemed like a ticket to freedom. Everyone saw the product as “interesting”. We started working together after quitting our jobs (not a big deal since I had months of savings and I always wanted to build something of my own).

Imperfect 'Best' Practices

Six years ago, I was taught my first lesson of C++. Soon after learning about loops, came a subsidiary lesson about the goto statement. The teacher made it clear that using goto was a horrible practice because of unconditional-jumps mess it creates and should always be avoided. A bit of googling followed and I ended up with a well known essay of E. Djikstra’s ‘Goto is considered harmful’ and I committed myself to never use the statement even if it meant creating a frivolous flag variable.

Why Productivity Tricks Don't Matter

We’re living in an exciting century. The majority of today’s success stories trace its existence from few nerds hacking in their garage. Yet, majority of ambitious hackers, struggle to get going with any of the dozen of ideas that they have thought, most of which end up being un-fiddled in their favorite note-taking apps.

Hackers Are the Real 10x Engineers

The notion of 10x programmer was first mentioned by John Brooks (of, Brook’s law fame) in his essay No Silver Bullet, according to which, ‘there is as much as a tenfold difference between an ordinary designer (programmer) and a great one’. The idea has been widely debated, sometimes refuted and many times defended which is unsurprising for it is impossible to accurately measure a programmer’s productivity.

Why You Should Never Freelance on Freelancing Sites!

Back in the days, I used to be the crazy money minded programmer writing kLOCs of crap with no code quality concern, for projects I often found on freelancing sites. Freelancer.com, oDesk and likes which seem to be quite popular among employers looking for cheap third world country coders but honestly, if you think about being a better programmer, never log in to them. Why?