Hasen

Contrarian Perspectives provide an advantage

Peter Thiel talks about "Contrarian Truths" as "Secrets". Things that you believe but almost no one agrees with you on.

Such "truths" can be at the core of great companies.

Calling it a "truth" or a "secret" might be an exaggeration.

I'd rather call it a "contrarian perspective".

Here's the claim I will make:

Design that is based on a contrarian perspective is almost impossible to imitate.

Many people can imitate the "look" of a Macbook laptop. They all suck, because they don't understand what actually matters. They only imitate surface level and sometimes irrelevant details.

Steve Job's perspectives on design are not really "secrets". I think he talks about them a lot publicly. It's just, the people who try to copy him don't fundamentally understand his vision.

A vision is not just a set of opinions that you can agree or disagree with. They come from a perspective: a way of seeing things that is different from most other people.

The closest example I can think of is that of Religion: someone brought up under some religion has a way of seeing the world that people who were not brought up the same way just don't have. Having some philosophical arguments between people of such wildly differing perspective is usually futile.

Almost every "opinion" that stems from the contrarian perspective will meet a lot of resistance from "conventional wisdom". Mostly it will be in the form "but that's just how things are".

For example, in my post about tractability I said that you should not have to fetch code from many different repositories before you can start building. That the compilation process should not take a long time. That you should not have to configure the project in a weird way for it to work. That setup should generally take very few steps: just download the code, install the compiler, and run the build command.

Most people would think this is naive, or will find reasons why it can't be achieved, or why it's not even desirable.

If this perspective somehow proved its success by making a product that enjoys some success, some people might try to imitate it, but chances are they won't really get it. They will probably not attribute the success to this perspective, but to something else that they can understand, and they will try to imitate that instead.

If on the other hand, you understand the underlying perspective, you can generate other opinions in the same class.

For example:

This immediately implies that most "web server" software is not well designed from a tractability perspective.

There should be a single program that can be used to manage the web server visually (be it a GUI or even a TUI). Important statistics should be immediately visible. Logs should be very easy to discover via the UI. Any "options" that can control the server should be presented via the UI.

Let's say I make such a product: a website whose server can be controlled via a GUI program that the user can run from their personal machine so that they have visibility and control over what's going on: see logs, tweak options, make backups, etc.

Someone might look at this as just a set of features that he too can create and put into his "competing" product.

But, these are not just a set of features that you can "add" to a product. I mean, you can have all these features if you want, but if also on top of them you have a lot more options that are not visible in the GUI but instead are defined in config files spread all over the place, then you did not really get it.

This is the thing about contrarian perspectives: if you don't share the same perspective, you can't really compete.

If you do understand the perspective, you probably would not want to compete with an existing product, instead you would use it to create a different product that no one is making yet.

#product-values