Archive for the ‘Fundamentals’ Category

Stepping back

Friday, December 5th, 2014

One of my common interview question is writing a function which takes a string like “2+2” and returns an integer result.

I asked to do that for quite big set of rules initially (support several operators, multiple digit numbers etc.). However, it was overwhelming for candidates. As result I scaled it down to several simplistic cases.

I ask to write a method which can calculate “2+2”. And it takes them 30 seconds to do that.  I ask them to change a solution to handle “2+2+2”. It takes them 3-4 minutes and next thing I ask to do “12+2+2” (support of multiple digit numbers) or “2+2-2” (support of operator minus). And boom… It takes them 30 minutes to do this.

The question is “Why?”

People are wired to always push forward. As result, they take their previous solution and try to hack it into a new one which will support this new requirement. As result, the solution become so messy and complicated by second or third time around that it’s impossible to update it.

However, all they need to do is to step back for one second and think about new problem and new solution (vs trying to hack the old solution).


Define work

Wednesday, March 21st, 2012

I wanted to write down some reasonable definition of work. I tried to put it in one sentence, but it’s too vague to be precisely defined.

So, I came up with following graph which shows where work sits on the continuum of “have to do”/”will be paid”.


Survivor bias

Saturday, March 3rd, 2012

I quite often read some business related blogs or books and they are full of smart, energetic, sound and at the same time absolutely unfounded advices.

Just couple of examples: a book Good to Great or TAD talk, Simon Sinek: How great leaders inspire action

It usually goes something like this: “Let’s look on these three supersuccessful companies: Apple, Google, Facebook. All of them were founded by people who truly believed in changing the world. That means that to be successful all you need is a desire to change the world. And everybody who doesn’t believe in this will forever stay pimply, asocial and poor dummy’.

That’s exactly a Survivor bias. We get several “survivors” (several big companies) and disregard everybody else (all those other companies which failed and which were start by people who wanted to change the world too). Also, we disregard companies which become successful and which were started by people with different mindset.

So, all these advices try to imply some causation, when they don’t even properly prove correlation.

BTW. Here are several people who wrote about this problem too: Business Advice Plagued by Survivor Bias, Rails, Scrum, CMMI and Survivor Bias.