About a week ago I was attending the Web 2.0 Expo Europe in Berlin, a conference discussing the current and the future web from four major perspectives: “Development”, “design and user experience”, “strategy and business” and “marketing and community”. Being a freelance web developer and co-founder of a web start-up, I found myself taking seat in all tracks but “marketing and community” quite balanced, trying to get interdisciplinary recommendations and the lessons from successful players. Cross-posting in Hannes’ start.up blog, here’s what I found was the essence for his target audience, me:
First off, recapitulate if your idea is innovative and not a clone of sth. already existing. Check your competition. If yours is close to a competitor’s idea, make sure you’re able to explain what makes the difference. If there’s no difference, don’t waste you’re time. Or don’t waste your life, some of the speakers tended to speak more emotional. Think about your team. Are you a team? “Business plans and conditions change, people don’t change that fast”, to quote an investor. Be able to take feedback and listen. “Why does anybody care? Why will real people use it, not only your coder friends?”, Reshma Sohoni (Seedcamp). Be focussed. Be enthusiastic and passioned, and be able to share it. Be globally visible. Think about other markets than North America and other languages than english. In terms of internet users, Asia almost doubles North America, followed by Europe. Build network effects.
Make sure your data can be distributed. Expose data using RESTful Web Service. Offer different content representations, at least JSON or XML. Offer syndication formats like RSS or ATOM whereever you can. “The most successful apps are fundamentally powered by data.”, Dion Hinchcliffe. He mentioned later on, that distributing data doesn’t need to be a freebie - You can meter API usage and charge for usage. Or add ads to the API results. With a good API you might be able to care about the data only and crowdsource the user interfaces. Yes, interfaces. Plural. Mobile web is emerging! User experience matters. Let the experience be excellent. Think about the ease of sharing experience in the social web, both the good and the bad. And favorize simplicity. As Albert Einstein, who was unfortunately not attending the expo, said: “Make everything as simple as possible, but not simpler.”.
Use open standards. OpenID for user authentication, OAuth for API authorization. Microformats describe your content semantically. Use OpenSocial if you’re running a social network site. Apache Shindig helps you here.
Technology: Be agile. Use what works well for you. But I still think you really have to know the tools out there, I’m not a big fan of the “It’s a problem when it’s a problem”-approach. Beside relational databases, the document based expando databases emerge with Apache’s CouchDB, Amazon’s SimpleDB and Google’s BigTable, build to scale. You have to at least think of scaling and fundamental design decisions early. Build you’re architecture message driven and use servers like Amazon EC2 instances to react on altering needs and to stay cost-effective. Pay as you go. Have a look at Google’s App Engine, which cuts off system administration and lets you deploy in the google cloud. And have a look at its restrictions.
Have fun!