Develop as little of software as you can

Why, because it is hard.

Software is difficult to design, difficult to build, and even more difficult to get people using. Don’t get me wrong, I’m not saying people shouldn’t solve difficult and or complex problems using software. I’m simply suggesting we should produce less software when doing so.

No matter how cool your interface is, it would be better if there were less of it. — Alan Cooper.

The meaning of FREE

As developers, we expect our users to put in interaction or “work” to get a reward out of our FREE products. Think about that for a second. When was the last time you worked for something brand new that was FREE? The most valuable currency right now is time and software interaction eats away at it. Users are not interested if the reward isn’t transparent. This is especially true with social products as their value isn’t present until you have the “aha” moment.

If simply adding features would solve anything, The Valley would be shipping hits all day, everyday.

Maybe, it isn’t about what could be in your product but rather than what’s absent that makes the difference? The idea of a better feature or better design is a drug fix even the greatest creators can’t shake. In practice we all know a product should be simple. Unfortunately, it is in our nature as humans to believe that more leads to better. I believe constraints will become a part of the product design process and the products with strong feature constraints will win big in the coming years.

Here are some examples I have been working on…

No user sign up

Let’s face it, signing up for FREE stuff is stupid. Not a single person likes to give information unless they perceive the reward of exchange is greater than the request. If you do manage to get users to enter their information (about 50%) they will most likely speed through giving bogus data until they perceive value. Consumers are smart enough to know that your FREE product doesn’t require anything to start using it.

No user profile

Having a profile is a pretty old concept. As mobile dominates this is quickly becoming work for the user. Mobile is real-time and a user profile generally captures history, not real-time engagement. Having a user profile with all my content simply doesn’t provide enough reward to justify the work involved to construct and maintain it. In addition, users fear that something could be in their history that could come back to haunt them. This adds to even more resistance.

No contact list access

This one is tricky. We all know each device has a contact list full of potential new users. Surely the phone’s graph has helped products like LINE, KaKao, and WhatsApp grow very quickly. The problem with this is the approach only works once there is a mass of users already on the product. When LINE shows you that your contacts are already there you instantly interact with products core feature, solving the product’s core problem. Contact list access should be used only for matching not invite mechanics or growth. I also believe different parts of the world are less sensitive with their mobile number privacy. For instance with WhatsApp, knowing you could talk to your family overseas gives users in the US enough reward to connect and sync their contacts.

Saying no is OK

At this point you might think of me as a feature Nazi, that’s ok. I firmly believe saying no to features is just as important as saying yes. There is truly no shortage of ideas. There is however a shortage of people saying no to features that do not relate directly to their products core goal.