My core product building philosophy is as follows:
Functional -> Fast -> Pretty
I first heard about this from Mark Heynen, who was my co founder at Photo Lab.
Once I was able to digest this concept, it seemed completely natural to me. Basically, this means you should work on functional aspects of your products first. Functional aspects are the soul of your product. Ideally this is what should be sufficient to determine if your product is valuable to its users or customers. In most cases, a functionally ready product takes the least amount of time to build. However the biggest challenge is discovering what is the functional soul of your product.
I recommend launching your product as soon as it is functionally ready. We will go on this topic in more detail later in this section.
Once you are done with the functional aspects, you can start focussing on making things faster. There might be things which take your users 4 or 5 steps. Can you instead help the users do them in one or two steps? This leads to a better overall product experience. Usually this takes about 4-5 times as much effort as building a functional product. However, in most cases you know what you have to do to be successful at this step. So once you are there, it boils down to what is the option you choose to achieve the objective.
Once your product is Functional and Fast, you can start working on making your product pretty. This involves making the mobile app interface look better, building a pretty website, and packaging of your product. This steps tends to be very subjective. It might take as much as 5-10 times as much effort as building a functional product to get this step done. In many cases the value of this step is not obvious.
Ideally your users should be sold on your product at the functional stage. So, you should have a strong reason to invest a lot of effort at this stage, aside from vanity.
Let me start with some examples on how Functional -> Fast -> Pretty can be in play in software product development.
Instagram
In the early days, when the Instagram team was working on building the product, they were trying to prioritize what to work on. As most people would agree, the most important value that Instagram provided was build a single player mode application which can allow people to create beautiful photos and share that with their friends.
The above line is the core functional aspect of the product. This is why people used the product, versus many other photo filter applications in the market.
Let’s talk about a few options on the Fast front that the app could have. Let’s look at contact picker. If you want to share a post with people, you can select people through a few ways:
A list of people where you have scroll. In this case you will need to scroll a lot before finding your friend, selecting them and then doing it again and again for other people.
A list of people with a scrubber on the side so that you could quickly go to names starting with that character
Type-ahead based selection.
Building the option 3 might take as much as 5x the time as the option 1. If people really love your product, they will undergo the extra steps to use it. However by investing on the Fast dimension, you might just delay you product launch a lot.
Often, Entrepreneurs have misguided reasons for adding “speed” to their products. People don’t always want or need less steps to achieve a goal. An example of this was with Instagram when they launched live filters. Using live filters you could see the scene with multiple filters in real time and snap a photo using the chosen filter. They felt that people didn’t want to take an extra step after capturing the image to apply the filter. It was a significant technological challenge for them to build it in a way that it can work on the slow devices in 2013.
However, they found that very few people were using this feature. The reason for that is that people usually want to capture a scene in the moment and once they have captured the scene, they want to apply whatever filter they want to. While capturing the image, they do not want to lose the moment while trying to get the filter right. They removed this feature from their product soon afterwards. This is an example where it just didn’t use up their valuable development cycles, it ended up being worse for the users.
Moving onto the “attractiveness” of your product, any work you do in your app on animation or beautification counts towards that. You should build the fastest possible product, as long as it looks consistent, and not waste time building unnecessary animations or pixel perfection. It takes too much time to get it right.
When you historically look at the most popular products – be it Google, Facebook, Twitter, Pinterest, LinkedIn and many others – they were all pretty ugly when they were launched. However, they were very functional and clear on what value proposition they provided to their users. Overtime, as they got more valuable resources, they worked on beautifying their product. If they had focused on building pretty websites early on, they might have taken too long to launch, been too slow to improve and might not have succeeded.
In fact, statistically, it’s possible that more attractive a product is, the less likely it will be to succeed.
Cars
Another example of proving this philosophy is looking at the evolution of cars over the past century. Cars where a revolutionary product in a time when everyone else was used to by horse and carriage. The first cars that came about were very functional. They didn’t look great, everything was manual, steering was hard and in the earlier models you had to go to the front of the car and twist a lever to start it. Yet, it was a great and functional product which fulfilled user needs. Over time, operating the car became easier, manufacturers added comforts to the car and the design started to look better.
Long story short, do not waste a lot of time trying to perfect your product. Prove its value to your audience as soon as you can. Focus on this and you will be closer to success.
Importance of Metrics
When people are working on iterating fast on their product, it’s good to a strong idea of the core goal you’re striving for. This will help you focus on improving that with your iterations and rolling back soon if it becomes worse.
I am a big fan of having one key metric. I have read about this term quite a lot and am not sure who initially came up with it. If you reach out to me, I would love to give credit to you.
Many products might have multiple metrics of interest e.g. daily visits, installs, posts etc… However, in some cases, following multiple metrics might be misleading. For example, your installs might be going up, but you might be losing older customers. So it is important to have one key metric that you really follow well for positive trends and monitor other metrics for negative trends.
For instance, one key metric for Instagram could be number of users who like at least one image per week. Liking an image sends a strong feedback signal to the image poster. If someone liked a photo it means that they are not just opening the app, they are going through images and also liking images. This trend needs to be on an upward trajectory and every change should try to drive this number up. If this number goes down, the creators should stop everything and investigate what is going on.