It's interesting to me that Paul lists humility as an (the?) important factor leading to successful product design. It seems like there would be a natural tension between the courage it takes to found a startup and the humility it takes to be successful.
I also wonder if honesty might be another word for the skill in question - i.e., being honest with yourself about what works, what doesn't, and what's truly necessary.
I can see what he's saying: to make a great product, basically consider market forces your local gradient, then follow the steepest descent. Surely, though, that suffers from the same problem as the classic version of the gradient descent algorithm: it's easy to get stuck in a local optimum. So I do think your starting point matters.
His example, gmail, suffers from this too. There were many webmail and offline email clients before gmail, the key to its success was its integration with an excellent search algorithm. Without that starting point, it would have most likely been pulled towards some local optimum which had already been discovered. Okay, so Google is full of search experts, so maybe internal market forces would have been different than those of the worldwide market. Most startups don't have that kind of micro-market which takes them to some kind of new optimium though.
Taking the algorithmic analogy further, in practice you would probably not want to do pure gradient descent if it feels like you're heading for a known local optimum, and instead stochastically/heuristically "go against the flow" and experiment with idiosyncratic features.
I don't think getting stuck in a local optimum is as important as the speed with which you get there.
Techniques for finding a global optimum of a numerical function are expensive, time-consuming, and often find worse solutions before they find the best one. Do this in a startup, and your local-optimum-seeking competition will crush you.
Seems to me that thinking there is a better solution that your users don't know about (which led you to the local optimum) is exactly the lack of humility that Paul was warning against.
Sorry, I didn't actually mean you should try to go straight for the global optimum (I'd argue there's probably no such thing) - I'm just wondering about known local optima. Solutions that already exist. I don't necessarily know about startups, but in open source software, it seems that a lot of the time, there's some slick and cool new take on a problem. As it becomes popular, it eventually just grows in the direction of all the other solutions that are out there, becoming yet another bloated clone. It seems to me that if you find yourself going down that road, you should steer against that trend. Or should you?
I guess I'm a little bit different than many here.
I am TOTALLY guided by my customers. I wasn't always this way. I used to think that something would be so cool, so I would build it, and often, the project went nowhere. I was fortunate to have a co-founder at one time who insisted that we sell it first, then develop it. I never completely came around to his way of thinking, but now I understand where he was coming from.
My customers have never steered me wrong. They don't waste my time. They only spend energy describing things that they really need, and invariably, others need the same things.
The downside is that I never spend time working on my own pet projects. I KNOW I can build a better bridge game, fitness program, or home inventory program. I'd also love to blog. But all those things fall into the category of "No one else asked for it", so I simply don't spend time on them. Maybe some other time.
That's a great quote. It's important to understand that _listening_ to your customers isn't the same as having them design the product (which would be a mistake). In this case, the message that you should get from the customer is that "my horse is too slow".
That's probably a valid consideration, but whether you should take it into serious account depends upon your aims: Are you trying to shift the paradigm, and introduce something entirely new? Or are you simply trying to produce the best refinement of an existing process or technology.
Not every change is revolutionary, nor does it need to be. Constantly reinvent things, and you'll wear your market out. But customer-sensitive refinements are frequently welcomed by consumers (depending on what they cost), or at least accepted without complaint.
You can't simply blow your audience off, no matter how visionary Henry Ford might have been. Development of anything...a process, a product, an image, a brand, whatever...is a never-ending set of nested feedback loops from the target audience, or else it's eventually a failure.
Listening to your customers' needs is a great thing. But you should take this advice with a grain of salt in the early stages. If you only have a few customers and focus too much on building something they want, you risk becoming a consulting company instead of a product company. Get all the feedback you can, but use your judgment to decide whether to act on it.
I'm not saying that you should ignore this data or not release early. I have though, have seen customers be very wrong. I'd say they tend to see only short term goals, not long term. At worst, your product will become a design by committee disaster.
My first startup made that mistake. We built the entire product before getting any customers. Since then, I've always started new projects as pseudo-consulting gigs. That way, the product is designed around a real need.
This doesn't work for web startups, but for people selling real products I think the best thing to do is apply the baggie test. That is, when Richard Garriott made his first computer game he put the diskettes in clear plastic baggies and gave them to the local computer store to sell. Similarly, O'Reilly started his publishing empire by selling stapled xerox copies of a unix FAQ he wrote at a trade show.
The idea being that if people would buy your product if they saw it in a baggie, you probably have a good product/market.
I respect the time PB has taken to write this post, but think this advice is aimed at beginners. In my opinion, the most important thing about new startups is to do it in an area with others your age trying to accomplish similar feats, many of whom are slowly succeeding, and where tech savvy investors and employees are. Smart people who can accurately assess your abilities as well as help each other with honest feedback.
I've seen many variations of the same insightful opinions like that one, but something very important that actually requires more than just product or language choice is getting up off your ass and moving to Silicon Valley. For that reason, that should be the most covered topic--at least in my experience.
Quote: "MySpace is a great example of this. I'm pretty sure that their custom profile page layouts were an accident. They didn't know enough to properly escape the text that people put on their profiles, and that allowed their users to start including arbitrary html and css in their pages."
I sometimes wonder how it's possible for something like this to happen on such a wide or popular scale -- does Microsoft seriously control or influence that much of the W3 standards for compliance?
(edit -- sorry. I've obviously been writing far too much HTML lately.)
I also wonder if honesty might be another word for the skill in question - i.e., being honest with yourself about what works, what doesn't, and what's truly necessary.