• About

    Swaroop C H is 29 years of age. He is a coder and startupper. He has previously worked at Yahoo!, Adobe, his own startup and Infibeam.


    Read more about him


    Email: swaroop (at) swaroopch.com

  • Subscription

    If you want to know when new stories and articles appear on this website, you can receive them via:

  • I'm a Wannabe Hacker

    The Glider: A Universal Hacker Emblem

Archive for the ‘Books’ Category

Two nuggets from Coders at Work book

Saturday, December 31st, 2011

I’ve been reading Coders at Work on and off, and it is a good read for coders who want to learn how coders, who they admire, think and approach programming.

Two favorite nuggets of mine so far are from JWZ and Brad Fitzpatrick who are definitely two of my programming heroes:

About taking things apart

Seibel:

Is there a key skill programmers must have?

Zawinski:

Well, curiosity – taking things apart. Wanting to know what’s going on under the hood. I think that’s really the basis of it. Without that I don’t think you get very far. That’s your primary way of acquiring knowledge. Taking something apart and looking at it is how you learn to build your own. At least for me. I’ve ready very few books about computers. My experience has been digging through source code or reference manuals. I’ve got a goal and, alright, to do this I need to know what this thing does and what this thing does. And I’ll just sort of random-walk through that until I find where I’m going.

How to improve oneself

Seibel:

Do you have any advice for self-taught programmers?

Fitzpatrick:

Always try to do something a little harder, that’s outside your reach. Read code. I heard this a lot, but it didn’t really sink in until later. There were a number of years when I wrote a lot of code and never read anyone else’s. Then I get on the Internet and there’s all this open source code I could contribute to but I was just scared shitless that if it wasn’t my code and the whole design wasn’t in my head, that I couldn’t dive in and understand it.

Then, I was sending in patches to Gaim, the GTK instant-messenger thing, and I was digging around that code and I just saw the whole design. Just seeing parts of it, I understood. I realized, after looking at other people’s code, that it wasn’t that I memorized all my own code; I was starting to see patterns. I would see their code and I was like, “Oh, OK. I understand the structure that they’re going with.”

Then I really enjoyed reading code, because whenever I didn’t understand some pattern, I was like, “Wait, why the fuck did they do it like this?” and I would look around more, and I’d be like, “Wow, that is a really clever way to do this. I see how that pays off.” I would’ve done that earlier but I was afraid to do it because I was thinking that if it wasn’t my code, I wouldn’t understand it.

Book Review : Start-up Nation (story of Israel)

Wednesday, December 21st, 2011

I read the "Start-up Nation" book last week. This book was so engrossing that I read it within 2 days, keeping aside everything else.

After reading this book, I started seeing the patterns about Israel being high tech hotspot, for example consider just two pieces of news in the last 3-4 days: Apple buying Anobit, an Israeli company, for $500 million as well as building a research center in Israel and Cornell won the bid to build a university in New York city… in collaboration with Technion university of Israel.

What is important

This book taught me the importance and inter-play of:

  • Entrepreneurism
  • Venture capital
  • Being committed to own business and country at same time
  • When people are pushed for survival, only then do they show the zeal for entrepreneurism and trade – otherwise nation becomes lazy
  • Size of country does matter
  • Government policies
  • Immigration
  • Technology as future growth
  • Multiple fields learning
  • Defense Forces
  • Liberalization and freedom of speech

To highlight in a bit more detail, I have picked a few quotes and insights from each chapter:

0. Introduction

  • Story of Shimon Peres and Shai Agassi pitching Better Place to auto manufacturers – Better Place is re-thinking electric vehicles by making fuel stations swap out your battery with a charged one instead of pumping petrol or diesel into the car, highly ambitious, executed first in Israel, now in China, etc.

1. Persistence

  • Story of "Fraud Sciences" company pitching to Paypal to use their fraud detection service – Paypal ended up buying them so that the competition doesn’t get them – idea came from founders who were soldiers in the Israeli army hunting down terrorists – they found hunting frauds easier.
  • Chutzpah
  • Israeli attitude and informality flow also from a cultural tolerance for what some Israelis call "constructive failure" or "intelligent failures." Most local investors believe that without tolerating a large number of failures, it is impossible to achieve true innovation. In the Israeli military, there is a tendency to treat all performance – both successful and unsuccessful – in training and simulations, and sometimes even in battle, as value-neutral. So long as the risk was taken intelligently, and not recklessly, there is something to be learned.
  • Story of how Intel’s chip design vision changed purely because of doggedness of the Israeli Intel office to convince higher-ups and how that eventually saved the company

2. Battlefield Entrepreneurs

  • As usual in the Israeli military, the tactical innovation came from bottom up – from individual tank commanders and their officers. It probably never occurred to these soldiers that they should ask their higher-ups to solve the problem, or that they might not have the authority to act on their own. Nor did they see anything strange in their taking responsibility for inventing, adopting, and disseminating new tactics in real time, on the fly. Yet what these soldiers were doing was strange. If they had been working in a multinational company…
  • Company commander is also the lowest rank that must take responsibility for a territory. As Farhi puts it, "If a terrorist infiltrates that area, there’s a company commander whose name is on it. Tell me how many twenty-three-year-olds elsewhere in the world live with that kind of pressure… How many of their peers in their junior colleges have been tested in such a way? How do you train and mature a twenty-year-old to shoulder such responsibility?
  • In the Israel Defence Forces (IDF), there are even extremely unconventional ways to challenge senior officers. "I was in Israeli army units where we threw out the officers," Oren told us, "where people just got together and voted them out. I witnessed this twice personally. I actually liked the guy, but I was outvoted. They voted out a colonel." When we asked Oren in disbelief how this worked, he explained, "You go and say, ‘We don’t want you. You’re not good.’ I mean, everyone’s ona first-name basis… You go to the person above him and say, ‘That guy’s got to go.’… It’s much more performance-oriented than it is about rank.

3. The People of The Book

  • Almost every Israeli trekker in Bolivia is likely to come through El Lobo (restaurant), but not just to get food that tastes like it’s from home, to speak Hebrew, and to meet other Israelis. They know they will find something else there, something even more valuable: the Book. Though spoken of in singular, the Book is not one book but an amorphous and evolving collection of journals, dispersed throughout some of the most remote locations in the world. Each journal is a handwritten "Bible" of advice from one traveler to another. And while the Book is no longer exclusively Israeli, its authors and readers tend to be from Israel.
  • Israeli wanderlust is not only about seeing the world; its sources are deeper… there is another psychological factor at work – a reaction to the physical and diplomatic isolation. Until recently, Israelis could not travel to a single neighbouring country…
  • For the same reason, it was natural for Israelis to embrace the Internet, software, computer, and telecommunications arenas. In these industries, borders, distances, and shipping costs are practically irrelevant. As Israeli venture capitalist Orna Berry told us, "High-tech telecommunications became a national sport to help us defend against the claustrophobia that is life in a small country surrounded by enemies." … "Today, Israeli companies are firmly integrated into the economies of China, India, and Latin America. Because, as Orna Berry says, telecommunications became an early priority for Israel, every major telephone company in China relies on Israeli telecom equipment and software…
(more…)

Passionate Programmer book review

Tuesday, May 17th, 2011

Every once in a while I get an email like this:

Sir, I am a beginner to python and programming. I started with the C++ and found it hard so one day via google I found your perfect tutorial “A byte of Python”. I read the whole tutorial in one day because it is so interesting and helpful. Sir, I have created the script to backup files from directory as you mentioned. Please see the script once and tell me if I have chances in programming career. Sir I am final B.tech student and I love programming. But I was rejected by every company during campus placement because of my poor communication skills and due to this my confidence level is very low. Sir I have also created a web based application using PHP, MySQL and Kannel on Debian based server for intra-college communication. Sir, I am regular reader of your blog and I respect what you are doing to help freshers like me. Sir I would like to know if you have any advice for me.

And like this:

I want to thank you about this great book ;-) . I am a 20-years-old student in computer science from Bulgaria and i found this book very interesting and helpful. I’ve been programming in python for half a month. I had little experience in C from the university and I wanted to learn a high level language with simple syntax like Python and then learn C++ and start writing useful programs. I send you a solution of the problem in the end of the book that is just a demo version. Can you give me a hint what i got to improve to make the address book program better and give me the source code of your solution? I really want to become a programmer so any advices especially from a man with your knowledge would be highly appreciated! Thanks.

For a long time, I used to scratch my head for every such email because I really didn’t know what advice I have to offer. I did end up writing How Fresh Graduates Can Grow which a lot of students have liked.

In the past couple of years, I have started replying with just one line - I ask them to read The Passionate Programmer: Creating a Remarkable Career in Software Development by Chad Fowler. I happily recommend this book knowing that if they actually do read and apply the principles in this book, they can’t go wrong.

I had read this book in its first edition when it was called My Job Went to India and I read it again when the renamed second edition came out.

The title of the book is self-explanatory but what makes the book special from other regular career books is that it is geared specifically to the art of software programming as well as explaining networking and many soft concepts/human aspects in a for-geeks “53 recipes” style.

Some of my favorite recipes/lessons are:

4. Be the worst

Legendary jazz guitarist Pat Metheny has a stock piece of advice for young musicians, which is “Always be the worst guy in every band you’re in.” Being the worst guy in the band means always playing with people who are better than you.

Being the worst guy/gal on the team has the same effect as being the worst guy in the band. You find that you’re unexplainably smarter. You even speak and write more intelligently. Your code and designs get more elegant, and you find that you’re able to solve hard problems with increasingly creative solutions.

6. Don’t listen to your parents

I remember talking to a friend about potentially moving out of this company, and he said, “Is it your destiny to work at $bigcompany for the rest of your life?”Hell no it wasn’t!_ So, I quickly found another job and left.

This movement marked the clear beginning of a nonlinear jump in my success in the software industry. I saw new domains, I worked on harder problems, and I was rewarded more heavily than ever before. It was scary at times, but when I decided to be less fear-driven and conservative in my career choice, the shape and tone of my career – my life – changed for the better.

15. Practice, practice, practice

When you practice music, it shouldn’t sound good. If you always sound good during practice sessions, it means you’re not stretching your limits. That’s what practice is for. The same is true in sports. Athletes push themselves to the limit during workouts so they can expand those limits for real performances. They let the ugliness happen behind closed doors – not when they’re actually working.

Our industry tends to practice on the job. Can you imagine a professional musician getting onstage and replicating the gibberish from my university’s practice rooms? It wouldn’t be tolerated. Musicians are paid to perform in public – not to practice. As an industry, we need to make time for practice.

Practicing may include learning more about your programming environment (APIs, libraries, methodologies, etc.), sight reading (reading new pieces of open source code to improve your ability to read and understand code), improvisation (introduce new constraints in small projects to improve your thinking abilities) and so on. [paraphrased]

32. Say it, Do it, Show it

You should start communicating your plans to your management. The best time to start communicating the plans is after you have executed at least one cycle of the plan. And – this is an important point – start doing it before they ask you to do it. No manager in his or her right mind would be unhappy to receive a succinct weekly e-mail from an employee stating what was accomplished in the past week and what they plan to do in the next. Receiving this kind of regular message unsolicited is a manager’s dream.

Start by communicating week by week. When you’ve gotten comfortable with this process, start working in your thirty, sixty, and ninety-day plans. On the longer views, stick to high-level, impactful progress you plan to make on projects or systems you maintain. Always state these long-term plans as proposals to your manager, and ask for feedback.

The most critical factor to keep in mind with everything that goes onto a plan is that it should always be accounted for later. Every item must be either visibly completed, delayed, removed, or replaced. No items should go unaccounted for. If items show up on a plan and are never mentioned again, people will stop trusting your plans, and the plans and you will counteract the effectiveness of planning. Even if the outcome is bad, you should communicate it as such. We all make mistakes. The way to differentiate yourself is to address your mistakes or inabilities publicly and ask for help resolving them. Consistently tracing tasks on a plan will create the deserved impression that no important work is getting lost in the mix.

43. Making the Hang

Speaking for myself (and extrapolating from there), the most serious barrier between us mortals and the people we admire is our own fear. Associating with smart, well-connected people who can teach you things or help you find work is possibly the best way to improve yourself, but a lot of us are afraid to try. Being part of a tight-knit professional community is how musicians, artists, and other craftspeople have stayed strong and evolved their respective artforms for years. The gurus are the supernodes in the social and professional network. All it takes to make the connection is a little less humility.

Of course, you don’t want to just randomly start babbling at these people. You’ll obviously want to seek out the ones with which you have something in common. Perhaps you read an article that someone wrote that was influential. You could show them work you’ve done as a result and get their input. Or, maybe you’ve created a software interface to a system that someone created. That’s a great and legitimate way to make the connection with someone.

44. Already Obsolete

You have to start by realizing that even if you’re on the bleeding edge of today’s wave, you’re already probably behind on the next one. Timing being everything, start thinking ahead with your study. What will be possible in two years that isn’t possible now? What if disk space were so cheap it was practically free? What if processors were two times faster? What would we not have to worry about optimizing for? How might these advances change what’s going to hit?

Yes, it’s a bit of a gamble. But, it’s a game that you will definitely lose if you don’t play. The worst case is that you’ve learned something enriching that isn’t directly applicable to your job in two years. So, you’re still better off looking ahead and taking a gamble like this. The best case is that you remain ahead of the curve and can continue to be an expert in leading-edge technologies.

Looking ahead and being explicit about your skill development can mean the difference between being blind or visionary.

P.S. This lesson was the reason why I started admiring DHH even more after seeing he is not afraid to include CoffeeScript and SCSS in Rails 3.1

51. Avoid Waterfall Career Planning

The important thing to realize is that change is not only possible in your career but necessary. As a software developer, you would never want to pour yourself into developing something your client doesn’t want. Agile methodologies help prevent you from doing so. The same is true of your career. Set big goals, but make constant corrections along the way. Learn from the experience, and change the goals as you go. Ultimately, a happy customer is what we all want (especially when, as we plan our careers, we are our own customers) – not a completed requirement.

I probably put more excerpts from the book here than I should, but I wanted to drive home the point on some of the non-obvious-but-critical points that the book raises that every software developer should ponder about.

Go buy the book / ebook now!



Update: Also see Top 5 Developer Skills That Will Get You Hired or Promoted

Book Review : Pomodoro Technique Illustrated

Monday, January 17th, 2011
  1. Have a list of things to do.
  2. Pick one thing to work on. Start clock.
  3. When tired, stop clock. Take a break.

It worked because of two reasons:

  1. Observing yourself led to the Hawthorne Effect
  2. Time spent per day was a quantifiable measure of productivity.

Simple.

It worked quite well for more than six months, but it just fizzled out for me. I couldn’t explain why at that time.

In retrospect, I think it was because of a few problems:

  1. It did not solve procrastination. When I knew it was a big task, I would just delay getting started because I had put pressure on myself to not pause the clock early once it was started.
  2. It did not help me stay focused for long. I would lose enthusiasm every few days because I would feel drained.
  3. It was easy to lose track that I was doing time tracking! For example, I would be focusing on an action item, and when something urgent came up, I would just switch to that and would have forgotten about the running clock.
  4. After a few months, it was not satisfactory enough to just look at a number at the end of the day and say “I’ve been productive today.” It just wasn’t doing the trick any more.
  5. If a task was big and could not get completed that day, I would often feel demotivated and frustrated rather than happy about having put effort on the task.

Many people had commented on that article suggesting that I try out the Pomodoro technique. After six months, I did visit that website, but reading “Work in units of 25 minutes, with 5 minutes break in-between” did not stir up my enthusiasm. Same goes for reading the official book.

Then I happened to notice on the Pragmatic Programmers website that they had a book out on the same topic called “Pomodoro Technique Illustrated” by Staffan Nöteberg.

Pomodoro Technique Illustrated book

I have a high degree of trust in the quality of the PragProg books, so I blindly bought the ebook, downloaded and read it. It turned out to be one of the best books I have ever read.

There are plenty of reasons why I loved the book, and having written a couple of books myself, I wish I could write a book like this one – it has a fabulous approach of one page per topic which forced the author to be concise yet insightful, it is backed by extensive research as indicated by the references to other books in the footnotes, it has an engaging experience via the usage of sketches which presents the topic at hand in a fun spunky manner, and generally speaking, I really liked it’s whole “no fluff, just stuff” approach to topics.

And I have not even mentioned the content of the book itself. The second chapter “Context” alone is worth reading this book for. It explains a lot of the psychology on why the Pomodoro technique is designed the way it is. It was a powerful motivator for me to try out the technique and consequently experience the benefits.

First, let’s explain the name “Pomodoro”, it’s the Italian word for “tomato.” This name was used because Francesco Cirillo, the creator of this technique, used his kitchen timer which was in the shape of a tomato.

Now back to the book… let’s take what’s wrong with the simple ‘time tracking’ approach mentioned at the start of this article and add a few extra steps that the Pomodoro technique has and show how it provides benefits.

The first problem with simple time tracking is fizzling out of energy because of pressure on oneself to work for long uninterrupted hours. Our lizard brain just cannot keep doing that for long, so you split time into units of 25 minutes with breaks:

  1. Have list of things to do (the “Activity Inventory” sheet).
  2. Pick one to work on. Start clock.
  3. Stop after 25 minutes (one pomodoro). Relax your body and mind, for 5 minutes (break).
  4. After 4 pomodori, take a longer break of 15-30 minutes.

As Staffan notes in the book (Page 56):

During your breaks, you’re not allowed to think about the previous Pomodoro or about the next Pomodoro. Don’t make important phone calls or start writing important emails. Your brain needs to absorb the last 25 minutes of challenging thinking.

If your stress system is never neutralized by mental recreation, you’ll notice a number of symptoms. The thinking system in the brain stem is affected, as well as the senses of the limbic system and in the end your biological rhythms. For example, your sleep might be affected.

At chronic stress levels, the capacity of your working memory and your ability to concentrate will fall. The joy of working will be transformed into anxiety – inspiration is altered to irritation.

This rhythm of 25 minute units leads to a sustainable pace (Page 74):

Sustainable Pace

Overview and control are the opposite of flow and deep creative-thinking processes. You can’t see the big picture and focus on details at the same time. Your focus will benefit from a process where you minimize the points where you have to sort and allocate priorities. But you need to do both. And you also need recreation time on a regular basis in order to absorb and recharge. So, you have three mental states to switch between. You alternate between them, but what triggers the mental state change?

I use three hats: the recreation hat, which is a jester’s hat; the working hat, which transforms me into the lion who is 100 percent focused on hunting the antelope; and the strategy hat, which makes me feel like a king when I’m sorting and deciding what to do during the next work iteration.

I come to work wearing the recreation hat. I put on the strategy hat and choose what activity to focus on. Then I put on the work hat, wind up the clock, and begin to focus. The clock rings after 25 minutes, which reminds me to put on the recreation hat. After a short break, I put on the strategy hat, and so on.

This timebox schedule that interleaves to focus, to prioritize, and to rest gives me a sustainable pace.

The second problem is that this a bit too lax in that there is no race to finish something, there is no goals. So let’s start every day with a subset of the todo list and make a commitment to oneself to finish that subset on that day with the caveat that it is okay if we don’t accomplish it:

  1. Have list of things to do (the “Activity Inventory” sheet).
  2. Consult your priorities and make a list on what to work on today (the “To Do Today” sheet)
  3. Pick an activity from the To Do Today sheet to work on. Start clock.
  4. Stop after 25 minutes (one pomodoro). Relax your body and mind for 5 minutes (break).
  5. After 4 pomodori, take a longer break of 15-30 minutes.

As Staffan says in the book (Page 51):

Pomodoro to do today sheet

Distinguishing between the Activity Inventory (a traditional to-do list) and the To Do Today (an extracted commitment) is a compulsory strategy for doing the right thing, getting started now, and putting optimum effort into your work. It gives you clear goals and personal control.

The third problem is that there is frustration when a task is not finished on a given day because the task is so big. So we break down how long the task will take and focus on that as well as finishing the task:

  1. Have list of things to do (the “Activity Inventory” sheet) plus number of pomodori you estimate for each task.
  2. Consult your priorities and make a list on what to work on today (the “To Do Today” sheet)
  3. Pick an activity from the To Do Today sheet to work on. Start clock.
  4. Stop after 25 minutes (one pomodoro). Mark one pomodoro completed for the task on the To Do Today sheet. Relax your body and mind for 5 minutes (break).
  5. After 4 pomodori, take a longer break of 15-30 minutes.

This gives the physical pleasure of marking a X on successful completion of a pomodoro. This also means it can help measure our progress on whether we are on track to finish the task in the estimated number of pomodori.

As Staffan says (Page 95):

Planning based on estimates makes your commitment for the day more realistic, and as a result, your motivation will improve. Recording the number of completed Pomodoro every day gives you a good understanding of your Pomodoro velocity.

So far so good, but how do I know whether I’m improving myself day over day? Now we shall add tracking to the technique:

  1. Have list of things to do (the “Activity Inventory” sheet) plus number of pomodori you estimate for each task.
  2. Consult your priorities and make a list on what to work on today (the “To Do Today” sheet)
  3. Pick an activity from the To Do Today sheet to work on. Start clock. Mark every internal interruption with an apostrophe next to the task name and mark every external interruption with a dash.
  4. Stop after 25 minutes (one pomodoro). Mark one pomodoro completed for the task on the To Do Today sheet. Relax your body and mind for 5 minutes (break).
  5. After 4 pomodori, take a longer break of 15-30 minutes.
  6. At the end of each day, note down statistics that you are interested in w.r.t. your performance for today in the Records sheet.

Of course, this tracking only works if you make sure that each pomodoro is atomic (Page 61):

Never switch activities in the middle of a Pomodoro. If you finish an activity halfway through a Pomodoro, spend the rest of the time over-learning. For example, if I finish early, I review what I have done, I repeat what I have learned, I see whether I can enhance my work, or I note new conclusions on paper—until the kitchen timer rings.

So, you’re not allowed to impulsively switch activities in the middle of a Pomodoro. In fact, just having the option to switch in the middle is a recurring disturbance. You can’t just stop in the middle of a Pomodoro and take a break either. Then you will lose the rhythm. And since the stopped Pomodoro was shorter, it will not be compatible – in terms of tracking – with other Pomodori.

Examples of statistics include basic things like number of pomodori you committed to at the start of day versus the actual number of pomodori spent.

It can go as comprehensive as you wish, for example take interruptions we tracked during each pomodoro – we can track the average number of internal interruptions (your mind wanders) per pomodoro, the average number of external interruptions (somebody at work asks you something or you get a call) per pomodoro, what time of the day you get most interruptions, how long into each pomodoro you get your first distraction, and so on.

Pomodoro interruptions tracking

The point is to keep it simple and measurable. And something that motivates you to be productive each day. You should have a little ceremony but not too much otherwise it becomes self-defeating.

There is a LOT more to this than meets the eye and this is where Staffan’s book makes a difference. I would highly recommend reading this book. I’m making a mental note to myself to make this book one of the most important books that I will make my kids read and practice when they are in school. It is a valuable life survival tool that I feel they must learn at an early age (the next generation is going to be even more competitive!).

The best part is that I can fit GTD and Pomodoro techniques together. I remember reading a comment somewhere which said “GTD helps you answer what to do. Pomodoro helps you answer how to do it.”

Last, but not the least, the important thing to keep in mind is that Pomodoro technique forces you to adopt good habits. In more technical terms, “conditioned reflexes are key.” The act of marking X against an action, the act of crossing an action item when it is done, the act of making your brain instantly focused at the start of a Pomodoro (as well as the ticking sound of the clock, if you’re inclined), etc. they all help you adopt good habits. And I personally believe that good habits are the secret behind most successful people.

As Staffan says in the book (Page 48):

First prioritizing and then focusing on the most important activity will make you feel safe and sound. Otherwise, your focus will constantly be disturbed by questions like “Am I really doing the most important thing now?” At the start of my day, for instance, I first look at the whole backlog and pick the most important activity. Then I stick to it for a short timebox, before I reevaluate whether it’s still the most important one. In my mind I replace “I must finish” with “Where can I start?” and I replace “This project is so big and important” with “I can take one small step.”

Without the Pomodoro technique, figuring out how to start each workday can be hard. You might feel like you have a billion things and you can’t possibly do everything simultaneously. So, you never really start, and suddenly it’s lunch time.

Pomodoro itinerary

On a related note, there are variants to this technique, they can be called Kanban or they can be called GTCD but I hope you get the gist of why this technique works.

If you’re looking for tools, I would suggest these two:

  • For Linux and Windows – Focus Booster app
  • For Mac – The Pomodoro tray item – I like this one because it uses the Mac’s built-in voice feature to make announcements of the start and end of a Pomodoro.

Just in case you were curious, I revised the book this time in 5 pomodori, and wrote this blog post in 5 pomodori :-)

So what are you waiting for, go read the book now! And do write in about how the Pomodoro technique has helped you.


Update : “We believe what we want to believe, so it’s better to get data” — B J Fogg in an interview with Ramit Sethi – I guess this is the most succinct answer to when people ask me why use the Pomodoro technique :-)

Book Review: The Checklist Manifesto

Saturday, August 21st, 2010

I recently read the book The Checklist Manifesto by Atul Gawande – a respected surgeon, noted author, MacArthur fellow, New Yorker staff writer, and a professor at Harvard Medical School.

The premise of the entire book is the author’s dive into the concept of a checklist and how they have dramatically improved the efficiency and reliability of professionals in the medical profession, the aeronautical industry, the architecture industry and even the venture capital industry.

So what is a checklist? It is the minimum set of critical steps for any task to be achieved.

Why are they useful? Because checklists protect against many kinds of dangers. For example:

  1. “Faulty memory and distraction are a particular danger in what engineers call all-or-none processes – if you miss just one key thing, you might as well not have made the effort at all (whether it is buying ingredients for a cake or preparing an airplane for takeoff).”
  2. “People can lull themselves into skipping steps even when they remember them. Especially in busy and stressed workplaces (such as hospitals). In complex processes, certain steps don’t always matter, may be it affects only 1 out of 50 times. But when it does, it can be catastrophic.”

One of my favorite passages in the book is as follows (it’s a longer excerpt than I would have liked, but all the parts were really important, so please read the whole passage to understand what’s going on):

Checklists remind us of the minimum necessary steps and make them explicit. They not only offer the possibility of verification but also instill a kind of discipline of higher performance. Which is precisely what happened with vital signs – thought it was not doctors who deserved the credit.

The routine recording of the four vital signs did not become the norm in Western hospitals until the 1960s, when nurses embraced the idea. They designed their patient charts and forms to include the signs, especially creating a checklist for themselves.

With all the things nurses had to do for their patients over the course of a day or night – dispense their medications, dress their wounds, troubleshoot problems – the “vitals chart” provided a way of ensuring that every six hours, or more often when nurses judged necessary, they didn’t forget to check their patient’s pulse, blood pressure, temperature and respiration and assess exactly how the patient was doing.

In most hospitals, nurses have since added a fifth vital sign: pain, as rated by patients on a scale of one to ten. And nurses have developed yet further such bedside innovations – for example, medication timing charts and brief written care plans for every patient. No one calls these checklists but, really, that’s what they are. They have been welcomed by nursing but haven’t quite carried over into doctoring.

Charts and checlists, that’s nursing stuff — boring stuff. They are nothing that we doctors, withour extra years of training and specialization, would ever need or use.

In 2001, though, a critical care specialist at Johns Hopkins Hospital named Peter Pronovost decided to give a doctor checklist a try. He didn’t attempt to make the checklist encompass everything ICU teams might need to do in a day. He designed it to tackle just one of their hundreds of potential tasks, the one that nearly killed Anthony DeFilippo: central line infections.

On a sheet of plain paper, he plotted out the steps to take in order to avoid infections when putting in a central line. Doctors are supposed to (1) wash their hands with soap, (2) clean the patient’s skin with chlorhexidine antiseptic, (3) put sterile drapes over the entire patient, (4) wear a mask, hat, sterile gown, and gloves, and (5) put a sterile dressing over the insertion site once the line is in. Check, check, check, check, check. These steps are no-brainers; they have been known and taught for years. So it seemed silly to make a checklist for something so obvious. Still, Pronovost asked the nurses in his ICU to observe the doctors for a month as they put lines into patients and record how often they carried out each step. In more than a third of patients, they skipped at least one.

The next month, he and his team persuaded the Johns Hopkins Hospital administration to authorize nurses to stop doctors if they saw them skipping a step on the checklist; nurses were also to ask the doctors each day whether any lines ought to be removed, so as not to leave them in longer than necessary. This was revolutionary. Nurses have always had their ways of nudging a doctor into doing the right thing, ranging from the gentle reminder (“Um, did you forget to put on your mask, doctor?”) to more forceful methods (I’ve had a nurse bodycheck me when she thought I hadn’t put enough drapes on a patient). But many nurses aren’t sure whether this is their place or whether a given measure is worth a confrontation. (Does it really matter whether a patient’s legs are draped for a line going into the chest?”) The new rule made it clear: if doctors didn’t follow every step, the nurses would have backup from the administration to intervene.

For a year afterward, Pronovost and his colleagues monitored what happened. The results were so dramatic that they weren’t sure whether to believe them: the ten-day line-infection rate went from 11 percent to zero. So they followed patients for fifteen more months. Only two line infections occurred during the entire period. They calculated that, in this one hospital, the checklist had prevented forty-three infections and eight deaths and saved two million dollars in costs.

If that, my friends, does not explain the power of a simple checklist, I don’t know what can.

And yet, despite these results, people were reluctant to adopt checklists. In fact, I know you are dismissing the idea right now. Try writing down 5 reasons why checklists are stupid and won’t work for you. Now write 5 reasons why it will work. Think over it. I bet most people find the 5 reasons against checklists, easier to write, but will be convinced about it after writing the 5 reasons for it.

(more…)

isbn.net.in updates

Sunday, April 18th, 2010

A while back, I released a side-project called http://isbn.net.in – a simple tool for comparing book prices in India. I received lots of feedback, suggestions and praise. I have updated it with fixes for the bugs reported and implemented most of the suggestions.

It was interesting to see people writing blog posts and linking to the corresponding book page on isbn.net.in as a “canonical page” about the book. I hadn’t thought of that.

Feedback

Lots of bug reports, suggestions and praise came via email, such as from Onkar:

“Nice idea with simple implementation. I am sure this will make my father happy. Thanks for your work. :-)

And as expected, Twitterers were most vocal about it:

@saurabh says: isbn.net.in is awesome #recommended #ftw #awesomeness

@kranium256 says: isbn.net.in is actually quite bloody awesome!

@kr0y says: For all those who love to order books online, this site can really help you get a good deal http://isbn.net.in/

@abhinittiwari says: Awesome book price comparision engine! http://isbn.net.in/

@vineetmundhra says: A wonderful tool for comparing book prices in India http://isbn.net.in

@l0nwlf says: http://isbn.net.in -> a pretty neat site to compare prices of book

@yarooruvann says: http://isbn.net.in/ very good tool to compare book prices in India

@jasdeep says: isbn.net.in is awesome, thank you @swaroopch

@tan1337 says: Awesome!

And some of the blog comments were heartening to note as well, especially this one:

Chandan V says: I was searching for a book from past 1 week and was unable to find it. Thanks to you, finally I was able get my book at flipkart. It was like, I thought I’ll not get that book any where in Bangalore and I open my google reader to see your link. Bingo, I have placed an order and eagerly looking forward for the delivery. Thanks a ton. You do not know how much it meant for me to have that book.

Note that last sentence. That is the stuff that creators love! :)

Search by title

The biggest feedback was: “Getting ISBN numbers is a little difficult for everyone. Consider taking a book title as your input and searching prices based on that directly.”

I understand the motivation behind this. But unfortunately, this was what I was exactly trying to avoid! I do not want to build a search engine! That is a non-trivial task, as I’m sure you can imagine.

My idea was to piggyback on top of people who are already doing that well. For example, Flipkart and Infibeam are supposed to have the most titles for the Indian market. So my idea was this: Why not use those search engines which are being constantly updated and tweaked by those companies to search for the books, and then use the bookmarklet + isbn.net.in to compare the actual prices. I actually don’t want you to use isbn.net.in as the starting point.

If you still want to search by book title, then head on over to the new Google Product Search for India. The reasons why you would use isbn.net.in over Google Product Search, is that isbn.net.in is comprehensive, accurate, has latest prices (as much as possible), and helps you decide whether to buy the book using the full description and Amazon rating.

Fixes and Updates

Regarding the fixes and updates based on your suggestions, here is the list:

  1. Fixed error on multiple pages such as http://isbn.net.in/8190453025 (via @sudhiru) and http://isbn.net.in/0074637762 (via email from Abhinav Sood)
  2. Fixing fetching of prices from a1books, thanks to bug report from Amit Sharma
  3. Added link to Google Product Search for India, because of many queries to allow search by title.
  4. Added CoralHub.com to the list of online book stores that is searched.
  5. Linked to iglooo.in and bookase.com in the about page under the list of similar projects.
  6. Added a “generic grep” to make the bookmarklet try a little harder for sites that is not known in its default list – IIRC, this was a suggestion by @talonx
  7. Bookmarklet now works with Amazon pages, but for this, you will need to take the bookmarklet again from http://isbn.net.in frontpage
  8. Added Kindle prices.

Favorite New Feature

My favorite new feature is Kindle ebook prices because, sometimes, buying the Kindle edition is cheaper than getting the paper book. That’s what I did with Seth Godin’s new book.

Further suggestions and feedback are welcome.


Duathlon and Murakami

Sunday, June 21st, 2009

Last weekend, I participated in the BSA Hercules Duathlon organized by RFL.

Bangalore Duathlon 2009

I did the 10 km running + 20 km cycling thing.

I was the last-but-one guy to finish and I did take twice the amount of time as the first guy to finish.

But I didn’t care about that. I expected to finish in 3 hours and I completed before that. And I finished strongly, not crawling to the end as I used to. I enjoyed the run, I enjoyed the cycling and I was satisfied.

Photos by Vikram:

It reminded me of the book “What I talk about when I talk about running” by Haruki Murakami that I read recently (borrowed from Varun).

I really liked the book, because Murakami puts into words the things I have felt as a runner but is almost impossible to truly explain it to somebody else.

Just to put things into perspective – Murakami started running in 1982 at the age of 30, running everyday since then for nearly 23 years. He has run at least one marathon every year, i.e., 23 marathons till date [when the book was published], and many more long-distance runs.

Some of my favorite passages from the book are below.

About the rhythm:

As long as I can run a certain distance, that’s all I care about. Sometimes I run fast when I feel like it, but if I increase the pace I shorten the amount of time I run, the point being to let the exhilaration I feel at the end of each run carry over to the next day. This is the same sort of tack I find necessary when writing a novel. I stop every day right at the ponit where I feel I can write more. Do that, and the next day’s work goes surprisingly smoothly. I think Ernest Hemingway did something like that. To keep on going, you have to keep up the rhythm. This is the important thing for long-term projects. Once you set the pace, the rest will follow. The problem is getting the flywheel to spin at a set speed – and to get to that point takes as much concentration and effort as you can manage.

About why we run:

Most ordinary runners are motivated by an individual goal, more than anything: namely, a time they want to beat. As long as he can beat that time, a runner will feel he’s accomplished what he set out to do, and if he can’t, then he’ll feel he hasn’t. Even if he doesn’t break the time he’d hoped for, as long as he has the sense of satisfaction at having done his very best – and, possibly, having made some significant discovery about himself in the process – then that in itself is an accomplishment, a positive feeling he can carry over to the next race.

… Marathon runners will understand what I mean. We don’t really care whether we beat any other particular runner. World-class runners, of course, want to outdo their closest rivals, but for your average, everyday runner, individual rivalry isn’t a major issue. I’m sure there are garden-variety runners whose desire to beat a particular rival spurs them on to train harder. But what happens if their rival, for whatever reason, drops out of the competition? Their motivation for running would disappear or at least diminish, and it’d be hard for them to remain runners for long.

For me, running is both exercise and a metaphor. Running day after day, piling up the races, bit by bit I raise the bar, and by clearing each level I elevate myself. At least that’s why I’ve put in the effort day after day: to raise my own level. I’m no great runner, by any means. I’m at an ordinary – or perhaps more like mediocre – level. But that’s not the point. The point is whether or not I improved over yesterday. In long-distance running the only opponent you have to beat is yourself, the way you used to be.

(more…)

Ideas are Cheap : IMDB of Music, Books?

Sunday, May 17th, 2009

What is it that I like about IMDB?

  • Shows me what are the movies that are popular in theatres right now
  • Shows what new movies are releasing this week
  • The first item on every movie page is the average user rating
  • It links to every individual artiste involved (actor, director, etc.) so that if I like to follow a particular actor like Russell Crowe, then I just have to visit his page and I have all the details right there in a compact list.
  • Trivia and Quotes from the movie – the amusing/fun aspect.
  • The information is not cluttered with random reviews, that is on a separate page if you are so inclined.

But IMDB is for movies only.

What about an IMDB for music?

Yes, there is last.fm but it concentrates on the actual playing of the existing music content that they have (which it is very good at), but not about the people who make the music or their discographies. For example, I don’t think they list albums/songs that are upcoming or are not part of their playlists.

What about an IMDB for books?

Yes, there is Amazon and there is WeRead.com but I notice the same problems as last.fm.

What I’m looking for is something like the burrp of music and books: showcasing (1) the latest, (2) the best and (3) the right kind of information, nothing else.

Also, are there similar sites for India? For example, I’d love to see the list of the top rated movie soundtracks in 2009 by “Shankar, Ehsaan & Loy” or the top songs ever by Pentagram (I just love “Bad Man”), and so on. Are there such lists and information already out there?

I think IMDB-equivalents for music and for books can be successful online businesses and communities.

Update : “Good Reads” seems to be a good option for books.

Update 2 : Looks like “MovieDB.in” wants to be the IMDB of Indian movies.



Note: This blog post is part of the “Ideas are Cheap. Execution is Everything.” series where I pen down thoughts on what I see is a need in the market or what could be a successful idea/business.

Idli, Orchid and Will Power

Wednesday, April 8th, 2009

I just finished reading “Idli, Orchid and Will Power”, the autobiography of Vithal Venkatesh Kamat.

Just a few days back, a friend was telling me that the famous Utility building Kamat restaurant in Bangalore no longer has quality food and hence no longer a popular place. I read this book and it gave the background to this situation – it is no longer being run by the Kamats for whom hospitality is everything, it is now being run by the Kamat that usurped the properties. At least, that’s what the book says.

But that’s not what the book is about. The book is about the entrepreneur’s journey. What I liked about the book was that it was written in plain and simple English, and Vithal writes about his life and the hard work he put in, the mistakes made and the lessons learned from it. It sounds familiar like any other entrepreneur’s autobiography, but what made it special for me was that this was an Indian and almost everyone has heard about the famous Kamat restaurants! It was good to read the story of the restaurants and the people who make the place what it is.

Vithal Venkatesh Kamat Idli, Orchid and Will Power!

During the story, some good traits of entrepreneurs were demonstrated:

  • Having knowledge, great ideas and executing them. For example, when Vithal was a kid, his uncle’s son was getting married and in that event, the soft drinks were not cooled and there was just 15-20 min before the guests started arriving. Young Vithal then used his knowledge of how kulfis are made, took fistfuls of salt and threw it on the ice which made it drastically go down in temperature and hence all the soft drinks were chilled in 15 min. The same goes for many of his tactics such as putting free buses to and fro the airport to his hotel, the Kamat Plaza, to make waiting less stressful for travellers and that became an instant hit. He said that brought in more customers than any amount of advertising could have done. Eventually, the airways people would suggest travellers to rest at Kamat so as to make them less annoyed about delayed flights, etc. A win-win-win situation indeed.
  • Doing a lot of networking. Vithal proves time and again how his networking and at the same time being known for their hospitality and credibility helped him in many a situation.
  • The importance of preparation. This is everything in the hotel business, he says. For example, that’s how you get your food so quickly when you order (instead of the hours that it would take if you cooked at home yourself).
  • Having a great dream, a great passion. Vithal has lost a lot while trying to make his dream ‘The Orchid’ come true, especially after all the property was usurped by his younger brother, and he had taken many high-interest loans so that he could build his dream hotel while his father was alive (who was dying of cancer). And yet, all the goodwill that he had generated and his will power slowly helped him eke out of the pit and the dream came true. This part of the story was heart-wrenching and inspiring at the same time. These are the kinds of stories that we see in movies but this is a real true story.

The only downside to the book is that you have to read the parts about the perfect character/attitude with a pinch of salt, because it sounds preachy at times and frankly, sounds too good to be true.

If you ever wanted to know what entrepreneurship is about, don’t read MBA sites, just read this book, if you can find it*. And then decide whether you are prepared for it. At the same time, you’ll finish the book feeling inspired.


* It is such a tragedy that this book is not available in any online Indian book store that I know of.

Outliers : What leads to Success

Friday, January 16th, 2009

I read Outliers, The STORY of SUCCESS by Malcolm Gladwell last week and found it fascinating.

Here’s an excerpt:

Cultural legacies *matter*, and once we’ve seen the surprising effects of such things as power distance and numbers that can be said in a quarter as opposed to a third of a second, it’s hard not to wonder how many other cultural legacies have an impact on our twenty-first-century intellectual tasks. What redeemed the life of a rice farmer, however, was the nature of the work. It was a lot like the garment work done by the Jewish immigrants to New York. It was *meaningful*. First of all, there is a clear relationship in rice farming between effort and reward. The harder you work a rice field, the more it yields. Second, it’s complex work. The rice farmer isn’t simply planting in the spring and harvesting in the fall. He or she effectively runs a small business, juggling a family workforce, hedging uncertainty through seed selection, building and managing a sophisticated irrigation system, and coordinating the complicated process of harvesting the first crop while simultaneously preparing the second crop. And, most of all, it’s autonomous. The peasants of Europe worked essentially as low-paid slaves of an aristocratic landlord, with little control over their own destinies. But China and Japan never developed that kind of oppressive feudal system, because feudalism simply can’t work in a rice economy. Growing rice is too complicated and intricate for a system that requires farmers to be coerced and bullied into going out into the fields each morning. By the fourteenth and fifteenth centuries, landlords in central and Southern China had an almost completely hands-off relationship with their tenants: they would collect a fixed rent and let farmers go about their business.

Here’s a second excerpt:

Every four years, an international group of educators administers a comprehensive mathematics and science test to elementary and junior high students around the world called TIMMS. The point is to compare the educational achievement of one country with another’s. When students sit down to take the TIMSS exam, they also have to fill out a questionnaire. It asks them all kinds of things, such as what their parents’ level of education is, and what their views about math are, and what their friendss are like. It’s not a trivial exercise. It’s about 120 questions long. In fact, it is so tedious and demanding that many students leave as many as ten or twenty questions blank. Now, here’s the interesting part. As it turns out, the average number of items answered on that questionnaire varies from country to country. It is possible, in fact, to rank all the participating countries according to how many items their students answer on the questionnaire. Now, what do you think happens if you compare the questionnaire rankings with the math rankings on the TIMSS? **They are exactly the same.** In other words, countries whose students are willing to concentrate and sit still long enough and focus on answering every question in an endless questionnaire are the same countries whose students do the best job of solving math problems. Think about this another way. Imagine that every year, there was a Math Olympics in some fabulous city in the world. And every country in the world sent its own team of one thousand eighth graders. Boe’s point is that we could predict precisely the order in which every country would finish in the Math Olympics *without asking a single math question*. All we would have to do is give them some task measuring how hard they are willing to work. In fact, we wouldn’t even have to give them a task. We should be able to predict which countries are best at math simply by looking at which national cultures place the highest emphasis on effort and hard work. So, which places are at the top of both lists? The answer shouldn’t surprise you: Singapore, South Korea, China (Taiwan), Hong Kong, and Japan. What those five have in common, of course, is that they are all cultures shaped by the tradition of wet-rice agriculture and meaningful work. They are the kinds of places where, for hundreds of years, penniless peasants, slaving away in the rice paddies three thousand hours a year, said things to one another like “No one who can rise before dawn three hundred sixty days a year fails to make his family rich.”

See how the two excerpts are related? :) This explains how your cultural legacies matter (and don’t worry, maths is not the criterion for success, this is just one example in the book). Another example is how cultural legacies are related to plane crashes of the respective national airlines.

There’s a lot more in the book like the Matthew Effect, the 10,000-Hour Rule, why “practical intelligence” matters, why “concerted cultivation” matters, about the KIPP schools, and so on.

The book is a must-read IMHO, just for the thought-provocativeness, even if not how to learn to be “successful.”