What I learned from my failed web 2.0 projectsee some cached pages), an attempt to
- build an new approach to online surveys
- explore AJAX coding
- Start a company
- try out new interaction models
I surveyed some friends, who thought this was a good idea, then I started designing.
I followed some interesting current ideas, including separating content from style & behavior. I learned about the power of CSS and was much impressed.
I decided to make an AJAXy interface with each survey being stored in one HTML document.
Some things I learned:
It was a lot of fun and very fulfilling. Having your own company is great. YOU did it. Plus coding something that then works is a great feeling.
It's hard to do it alone! Having someone who
- understands what you are working on
Other people's attention is INVALUABLE! and surprisingly hard to capture. Your best friends do not want to spend their time talking about your project. Just because it is exciting to you does not make it so for them. You become in a sense, crazy; focused on something other people don't care about (yet). Yet if you don't talk about it, you lose heart. It is hard to find out how unimportant it is to other people: that 5 minutes of time you were asking for to look at it never happens.
You have to be disciplined. I think I did OK on this. We have no TV and I canceled Netflix. I worked on it 2 hours a day and stayed up late on weekends. I stopped reading books. But it is a marathon, not a sprint.
Starting a company has to work at this time in your life. We had a baby during this time, and in the end, the lack of sleep and desire to play with our new little guy won over the project. Also, I got a great new opportunity and changed jobs. Both wonderful changes, but doom for the project. I imagine that just-post-college kids have an edge here. Every decision to work on the project is a decision to NOT do something else. For those of us who have a life: family they enjoy, a house that needs repair, cooking, washing dishes,etc , life is the real competition. A single person eating take out in an apartment is a better situation.
I had thought, after a year of hard development, I can iterate more slowly and have a life. I didn't get there.
Test it on real people. this keeps you honest. Spend time every day watching someone use the tool. Buy them coffee in a Internet cafe or something.
You have to make each annoying development step as easy as possible, otherwise you won't do it as often as possible. Make browser shortcuts, write scripts, whatever. This is a marathon. Make your office / workspace comfortable.
Iterate in public. I fell into the trap of not rolling things out often enough. I kept adding features and delaying promoting it. "Once it has [rich text editing, whatever] people will really like it." This gave me cover to avoid facing the real word.
Build the application around the "help" content. Don't explain the how something works, focus on what it should do and write the text first, then design the way it works. I would reserve a column for it in the interface and make an initial animation highlighting it.
Comment everything ad nauseum. You, or at least me, will forget everything in a few weeks. You are not writing it for others, but for your future self. Imagine you have memory loss like the movie MEMENTO. Don't just explain what is happening, explain WHY you are doing it. "This is because of an IE6 bug"
There are some ideas I was happy about in the project.
I cut through a lot of the user blocking interfaces. Disk space is cheap. Signup took 2 fields: email and password. If you clicked "try editing a survey" you got an account, all you needed to do was change the email address. If there were a lot of garbage abandoned accounts, I'd clean them out later.
I only got to do part of what I had initially envisioned regarding graphing (one of the main reasons I started the project in the first place). but the little I did, I think was clean and clear.
In the end, I think it was a good design, but I didn't have the time to really bring it to market. The effort of publishing and promoting was a lot more than I expected. A partner with knowledge might have changed this.
I'd like to do it again. (Once the kids are grown up a bit.)