Do "basics" well

High performing teams are about interperson chemistry that is built on a foundation of the “basics”.

Take sports for example.

Learning to play a sport require you to learn the rules and develop basic skills to play. For soccer, it would be passing, tackling, lobbing and shooting.

When you join a team, there’s drills, runs and short set plays. These are repeated over and over during practice. During a full game, these disconnected pieces mix together to form fluid play. Play together with your team for long enough and magic starts to happen — team members anticipate each others moves to outplay opposition.

Drills, runs and set plays allow you to improve and build on the basic skills: passing, tackling, lobbing and shooting. They improve player fitness and execution during gameplay.

The act of continually working on the basics seem to lead to continued advancement. This is an interesting idea as it would be easy to assume the opposite — to advance further, one has to work on increasingly complex drills. I think it comes down to the fact that most complex things are built up from very basic elements. The more confident and efficient we are with basics, the more opportunity we have to put them together to do complex things.

Therefore, I believe, basics and chemistry form important attributes for any team.

Chemistry can be a complex thing to establish, with time, environment and the individuals themselves. It’s a whole other discussion.

It is easy to establish basics when talking about soccer. What are the basics outside the context of sports? I’ve been trying to figure out what forms the basics for a software engineering team. Is it design patterns or code reviews? Is it practicing readiness to production issues? Or perhaps, it is our ability to document and capture tasks in Trello? These seem to be the essential building blocks in a life of an engineer; solving problems by applying technical concepts into code, that outputs a product to deliver value.

Software is more than just code. At the heart of it, it is empathy and collaboration. It is a bunch of people, observing and acknowledging pain felt by themselves or others, deciding to take upon themselves to resolve that pain. Solutions doesn’t just come from one individual. It is the work of many, fusing their minds, disciplines and skills together to make something truly valuable. For me, the basics for a team are contained in these core values.

Basics has to be more around the idea of problem solving. That is all we do as a team, every day. Even our individual disciplines themselves are various ways dimensions of problem solving — research, design, engineering, analysis etc.

This idea became clearer when I recently read the book “The Culture Code” by Daniel Coyle. The book investigates the elements of highly successful groups. There is a great case study around Danny Meyer’s wildly successful restaurants. In a restaurant, how should one go about preparing staff for both conveying the right feel to customers and be able to react to new and complex issues that come up? It is impossible to cover all the bases and situations.

Danny uses the idea of “heuristics”. He captures the behaviours and his ideology in short, catchy phrases that are used in high frequency. Staff learn to apply these heuristics in every day complex situations, leading to very delightful customer experiences. Applying these heuristics seem to be the basics Danny get his staff to focus on.

These “heuristics” aren’t the same as rules. They are shortcuts for understanding and applying “guiding principles”. They convey a behaviour that is core to situations that arise in a restaurant environment. They allow staff to be thoughtful and creative, while being aligned towards providing customers with a unique, delightful experience.

Heuristics based in problem solving… these can be our basics.

Here are some ideas for heuristics I’ve been collecting with the help of others:

  • Just start.
  • Try and try again.
  • Optimise for fast recovery.
  • Act like it is your company.
  • Coaching over management.
  • Challenge assumptions.
  • Understanding the problem is half the solution.
  • Ask why.

“Just start” — we can apply this heuristic over and over in many occasions, whether people are stuck on a decision or unsure of estimates. It embraces the culture of a “maker” in having a bias for action.

Whenever someone asks me why we allowed a bug to go to production, I like to say: “Making mistakes is part of the job. We’d be better off if our system was optimised for fast recovery instead.”

We do workshops to help everyone understand how to write a good problem statement. Because “understanding the problem is half the solution.”

I believe that practicing these basics of problem solving can lead to powerful teams. They can provide the fundamentals that enable magic to take place.

Keep practising. Keep doing basics well.

Time for a reset

I have been writing my Squarespace blog for about two years now. Yet, I can never achieve a consistent writing routine. Months go by without any posts. Over the Christmas break, I thought about why this was the case.

While the blog represents my thoughts, they do not belong to a topic or theme. I don’t have a strong goal set to break droughts, or to police pieces that are quickly becoming novels. I have many abandoned posts in my iA Writer folder that have simply grown too large.

I’m getting organised this year. I “started with why”, like Simon Sinek prescribes.

So why does this exist? 

I believe there is a practical and meaningful way to live a good, healthy, balanced life in this technology dominated world.

Given that I am working in the industry, I have a unique insight to this crazy tech world. I want to explore and tell people about products and ideas that help me achieve a balanced life. I want to talk about how technology influences what I do.

Therefore, I am renaming my blog. It is no longer “Android with an Apple shaped heart”. It is a little more agile, little more relevant and a whole lot simpler. It is going to set the theme for the posts from now on:

Incrementally Better

Yes, it is a reset. If Star Wars, along with so many other Hollywood franchises, can do reboots, so can my blog. It’s gonna be awesome!

2 things your app can focus on to be successful

Apps that do really well on the App Store focus on PASSIONS & PRODUCTIVITY. The higher you rank in the scale on these two categories, the better chances you have of making a kick-arse app concept that resonate with its users.


People are passionate about all kinds of crazy things. What's important is that passions makes us very emotional. And everybody knows emotional hooks are the best way to sell something to a consumer. Your job becomes exponentially easier if you don't have to convince them why something will be of value.

The effectiveness of the 'passion-hook' increases as the reach and the prestige of the passion gets higher. For example, fitness is a great category to be in. Everyone's emotionally invested in it, so your market size is large. More importantly, people are willing to pay to get fit.


Productivity is why IT exist in the world. Instead of figuring out what 28912 x 92891 is in your head or on paper, you have a calculator. If you can save time, make life easier, and return the human back its lazy couch potato stage as quickly as possible from real work, you are doing a great service. This service can worth a lot of money.

People pay to make things go away all the time. So if you are designing an app to help people be more productive, you have a great chance to make it. The bigger the problem you are solving, the higher you can charge for it. If it targets companies instead of individuals, then there is even bigger bucks to be made.


Then there are really good apps that combine the two. Food apps like Posse or Urban Spoon are great examples. People are very passionate about what they eat, and what says about them to the people around them. They take pride in finding little gems around the city and recommending to friends. At the same time, they are extremely productive. It saves me from having to Google for places to get lunch from when I'm hungry and irrational.


Of course there are other angles to succeed by making an app. You can look at improving communications and social interaction. But these are markets that may not follow the general pay for a download model that well. They are also very hard to succeed in.

If you want to keep it simple, make something that target passions and productivity. Analyse where you stand in the two scales when you are at the concept stage. Bring features in to add value in both categories as you go on. Find your own little edge in these scales that make your idea better.

As long as you are helping lazy humans be extra lazy, and help enjoying what they rather be doing, there's a chance of success.

Why make an iOS app first?

This is a regular discussion that happens under every article on The Verge about some new iOS app. So far they are all flames thrown at each camp. This poster had a really good answer with good supporting facts. I thought it was worth sharing:


It’s not “gibberish” – it’s fact:

1. Android users spend less time with apps.
2. Android users are less likely to pay for apps:
3. Android users don’t buy stuff with their mobile devices as much:

There is a meaningful difference, and if you’re trying to make money in the mobile world, you start with iOS.

Taken from the

The only thing I'll add to this is the ease of building and maintaining apps due to a more consistent group of devices with users who upgrade to new versions of the OS regularly.

Don't mistake this for developers not succeeding on Android. That is not true -- plenty of developers make a good living out of Android.

Getting The Story Right

Products are only as good as the story they tell. Whether it is an app or an electric toothbrush, the creators have to think about how it is going to be a captivating story. If the product cannot form a relationship with another person at an emotional level, then they have no reason to buy it. If no one can find anything interesting to say about what you’ve made, chances are, word will never get around...

Read More

Wisdom on Pricing Software

Recently I came across this excellent blog post, "Million Dollar Art", by Nate Otto on the Signal vs Noise blog. I started thinking, how relevant is it for software? Can you simply put a million, or even 30 grand price tag on software?

We first discussed it at work and there was the rational opinion that IT products help save time and effort. If a single person's job can entirely by done by a piece of software, then it should worth that person's salary. This makes valuing software quite easy!

Why think when you can Google. I came across this wonderful article at Smashing Magazine: You're pricing it wrong: software pricing demystified. It talks about the rational price vs. the perceived value of a product. Seems like branding, good marketing, superior design, support, average price for competing products and a number of other factors can increase or decrease the perceived value of a software. Read the whole article and some of the related links to get a better idea. Highly recommended!

When it comes to apps, the perceived value always seems to be much smaller than the app is really worth. 99 cents is very popular on the App Store. However, I think it will be wise not to go with the flow and really think about your audience and what they'll be willing to pay. Better yet, try to bend your ideas to fit to an audience which has more money to spend (Business Store for example...). Most importantly, be flexible. Start with a slightly higher price and be wiling to experiment with the price. You can never know for sure. Don't give away anything for free.

There's one caveat: iTunes rankings! Giving an app away for free might mean that you get more downloads on launch day, provided you run a great marketing campaign. Then, things become real tricky moving forward.

We're about to do some testing with pricing with the launch of tvQ 2.0. Will write my findings post launch.