Here’s a seemingly paradoxical piece of advice for you: Listen to your customers, but don’t let them tell you what to do. Let me explain. Consider a feature request such as “GitHub should let me FTP up a documentation site for my project.” What this customer is really trying to say is “I want a simple way to publish content related to my project,” but they’re used to what’s already out there, and so they pose the request in terms that are familiar to them. We could have implemented some horrible FTP based solution as requested, but we looked deeper into the underlying question and now we allow you to publish content by simply pushing a Git repository to your account. This meets requirements of both functionality and elegance.
Customers want a solution to their problem. To save time they will formulate what they think is a solution and give it to you, in the hope that it will speed up proceedings.
Think like a doctor. When the patient turns up, he or she may have a diagnosis in mind. But it is up to you to study the symptoms and deduce the condition independently of what the patient thinks.
Remember: a potted request from a client is a symptom of some deeper problem they wish to solve.
This is one of the best startup articles I have read in a while. Some real gems in there. The metaphor by Martin Fowler that the article mentions is particularly noteworthy.
Imagine you’re tasked with building a computer controlled gun that can accurately hit a target about 50 meters distant. That is the only requirement. One way to do this is to build a complex machine that measures every possible variable (wind, elevation, temperature, etc.) before the shot and then takes aim and shoots. Another approach is to build a simple machine that fires rapidly and can detect where each shot hits. It then uses this information to adjust the aim of the next shot, quickly homing in on the target a little at a time.
The difference between these two approaches is to realize that bullets are cheap. By the time the former group has perfected their wind detection instrument, you’ll have finished your simple weapon and already hit the target.
Sounds very similar to the section of The Pragmatic Programmer on "Tracer Bullets". There's an interview with the authors that has more discussion here -> http://www.artima.com/intv/tracer.html
Wow, that's a great article. Perhaps even more interesting because of Github's growth in the three years since it was written.
I wonder if he didn't publish it because he started with the idea of publishing ten lessons. Might have been better to assign the number after the article was written.
"Pay attention to Twitter". I was wondering if a service is doing exactly that? Watching twitter, "understanding" the post, and giving you a real-time update of your service/product? If not, that might be useful!
he brings up about givign people what they want and not what you ask for. that is so hard to do. how many times have you built what you envisioned and then went, "This is what i asked for, but it doesn't feel right." The key is conversation, the more back and forth you have with customers, the more you will get a feel for what they really want.
From the 1st paragraph (it might be an updated section)
"In the time since I wrote this we’ve grown from four people to twenty-six, settled into an office, installed a kegerator, and still never taken outside funding"
[+] [-] DavidChouinard|15 years ago|reply
Here’s a seemingly paradoxical piece of advice for you: Listen to your customers, but don’t let them tell you what to do. Let me explain. Consider a feature request such as “GitHub should let me FTP up a documentation site for my project.” What this customer is really trying to say is “I want a simple way to publish content related to my project,” but they’re used to what’s already out there, and so they pose the request in terms that are familiar to them. We could have implemented some horrible FTP based solution as requested, but we looked deeper into the underlying question and now we allow you to publish content by simply pushing a Git repository to your account. This meets requirements of both functionality and elegance.
[+] [-] jacques_chester|15 years ago|reply
Think like a doctor. When the patient turns up, he or she may have a diagnosis in mind. But it is up to you to study the symptoms and deduce the condition independently of what the patient thinks.
Remember: a potted request from a client is a symptom of some deeper problem they wish to solve.
[+] [-] 6ren|15 years ago|reply
[+] [-] hanifvirani|15 years ago|reply
Imagine you’re tasked with building a computer controlled gun that can accurately hit a target about 50 meters distant. That is the only requirement. One way to do this is to build a complex machine that measures every possible variable (wind, elevation, temperature, etc.) before the shot and then takes aim and shoots. Another approach is to build a simple machine that fires rapidly and can detect where each shot hits. It then uses this information to adjust the aim of the next shot, quickly homing in on the target a little at a time.
The difference between these two approaches is to realize that bullets are cheap. By the time the former group has perfected their wind detection instrument, you’ll have finished your simple weapon and already hit the target.
[+] [-] funksta|15 years ago|reply
[+] [-] jrockway|15 years ago|reply
[+] [-] pjhyett|15 years ago|reply
[+] [-] imajes|15 years ago|reply
OT: I think convore will go the same way, unless the crew can seriously address the SvN problem.
[+] [-] mryall|15 years ago|reply
I wonder if he didn't publish it because he started with the idea of publishing ten lessons. Might have been better to assign the number after the article was written.
[+] [-] d0m|15 years ago|reply
[+] [-] random42|15 years ago|reply
[+] [-] brown9-2|15 years ago|reply
[+] [-] KedarMhaswade|15 years ago|reply
[+] [-] deckardt|15 years ago|reply
[+] [-] kragen|15 years ago|reply
[+] [-] regomodo|15 years ago|reply
"In the time since I wrote this we’ve grown from four people to twenty-six, settled into an office, installed a kegerator, and still never taken outside funding"
[+] [-] nagnatron|15 years ago|reply