I'm at the BIF-3 Collaborative Innovation Summit in Providence, Rhode Island this morning. The BIF-3 event reminds me of the TED conference, in that it brings together great minds from across a multitude of disciplines to tell stories and have a converation about innovation. In fact, TED founder Richard Saul Wurman is here and will be speaking later today.
The BIF-3 is structured so that in between blocks of short presentations by "storytellers," conference goers can get up and mingle and have a conversation about what they just heard. The first of the day's four sessions concluded with an interesting chat between 37Signals founder and CEO Jason Fried and Wall Street Journal technology columnist and blogger Walt Mossberg.
Mossberg began by saying they weren't going to be talking about technology, but it quickly became clear that he meant they weren't going to talk about technology from a technical standpoint. Instead, Mossberg focused on what Fried knows best: what makes technology good. Anyone who has read anything from 37Signals can guess Fried's answer: simplicity.
Fried introduced 37Signals as a company that makes software for small businesses, but quickly corrected himself, "We don't really think of it as software," he said, "we think of it as tools to get things done." 37Signals focuses on the simplest way to solve a problem and then "gets out of the way," said Fried. The problem with traditional software is that it often gets in the way. It gets complicated, bloated, and hard to use.
The reason, argued Jason, is that the software industry is structured to build crap (borrowing the term Mossberg used to describe Outlook). Software is designed to make money on new versions shipped every year or so, and in order to convince users to keep upgrading developers feel pressure to add new features. 37Signals, on the other hand, offers its software over the web as a service. When people are paying a monthly fee, the company can release updates on a continuous basis and focus on making things work as simply as possible, rather than adding more features.
Always the skeptic, Mossberg didn't buy it. How do you balance your mantra of simplicity with demands of self selected vocal customers who want more, he asked. How do you avoid feature creep?
Echoing a post he made on his company's blog this morning, Fried said that good software needs editors. The same way a museum needs a curator or a writer needs an editor, software development too demands a leader with a clear voice who is willing to say, "no." "You have to be a hard ass," said Fried. 37Signals is what Fried calls an "opinionated company." They believe in their way of doing things, and users who agree with those ideas will have a great time using their software. Another company built in this mold is Apple.
"But Steve Jobs is a dictator," said Mossberg of the comparison to Apple. "And I love that," said Fried. "I think it's unbelievably fantastic."
In their book Getting Real, 37Signals talks about making software for a core group of customers. "The customer is not always right," they write. "The truth is you have to sort out who's right and who's wrong for your app." The number one person who is right for you app is you, the developer. If you're not making software that you would use, and is built with your vision in mind, then the software will suffer because as a result. As Fried told the crowd here, "Fundamentally, people need to say no more."
Comments
Subscribe to comments for this post OR Subscribe to comments for all ReadWriteWeb posts
What Jason states is absolutely right. Many geeks have a hard time saying NO (to a client, to the boss...), when several times they should.
This theory of client/service relationships, summed up by Fried in his quote, "Fundamentally, people need to say no more," is kind of self serving. I quess that's the point. If you're not into developing for yourself first, then what are you in it for, right?
Umm...other PEOPLE. A developer doesn't need to design for themself as the intended end user, in order to make a successful product. They do need a minimum of empathy and user-related experience, to be able to put themselves in the client's shoes.
More to the point, the allusion to Steve Jobs' management style and business model highlights a recurring trend in consumer products and services; that may be on the rise again. Fire your customers! They may not be right for you and they certainly shouldn't tell you how to build your products. Exhibit A: the iphone.
Yes, there are innovative companies lead by a charismatic individual who can bring all the elements together and who knows when to say no and who to say no to. However, these leaders all have something in common, they conciously or unconciously tapped into the public conciousness and uncovered the need and demand for some new product or new way of doing things.
And what about open source development? Some of my favorites include Apache web server, linux (pick your own flavor) and Wordpress, but there are thousands and almost all of them suffer from feature creap. In these cases, the developers almost always follow Fried's advice and get involved because they use the product and want to make it better (for themselves). This leads to competing agendas on which features to add and which bugs to fix.
Then we're back to feature creap again. Is this really such a bad thing? Afterall, features live and die by their usability.
My follow-up for Fried is "When is it a good idea not to listen to your customers?" It seems to me that client feedback is integral in every stage of development. Customers may be "wrong" individually quite often. But they are seldom wrong in the aggregate sense.
Finally, good software needs editors. However, don't assume this means a top down decision made individually. Utlimately, the clients have just as much authority to veto a particular feature. Why build it, if no one's going to use it?
I agree. Too often we feel forced to do things we don't want to do as developers, and it's time we said NO to feature creep!
I agree in the point that in the case of webapp I don't forced to add new features constantly to keep up the cashflow. I already have customers. All I need is to keep them happy and to attract new customers, but attracting new customers is not about adding new useless features. It's about marketing, it's about creating a new apps, it's about branding. Definitely.