That is how it feels to be doing a startup: it's like building a castle on foundations which move at a hundred miles per hour. I have been working really hard at getting a first version of RecordBox out of the door in early September. The release will be made to a few musician friends who are known to me. It is quite a aggressive target, and it has really taken the best of me to meet it. Here's why:
In my hobby projects, I had no care for revenue and no care for users. There were essentially no constraints and no feedback on my performance.
In my professional projects for a large company I was insulated from everything but the technical aspects of product development. All I had to do was produce quality technical work, and someone else took care of the rest.
By contrast, in this startup, I have to care about who the users are, what their problem is, and how much they are willing to pay to solve it. And I have to figure out how to balance that equation in a way that makes financial sense for me.
The equation has far more variables than doing hobby projects (which had no expectation of users or revenue), or professional projects (where one focuses only on the product development). That makes it orders of magnitude more complex.
So life has been really interesting. I would like to share my experiences in getting a first version of RecordBox into the hands of actual users. It will be fun for me to read this account some time later when the dust has settled.
I am the solo founder of RecordBox. This means that I have to make all the business, product, design, and engineering decisions.
While I am a programmer, I have always worked on backend systems. So web-development is new to me and presents a learning curve of its own. And I have no prior experience with business, product or design either. (I use design in the sense of user experience and interface design.)
So to get myself up to speed I studied a scores of resources on each subject:
- Business: The Four Steps to the Epiphany, various blogs on lean startups, Thinking like an Entrepreneur, and Seth Godin's work on product marketing, Rework, and Getting Real.
- Design / Product: Designing the Obvious, Don't Make me Think, Smashing Magazine, A List Apart, amongst several other online resources.
- Engineering: Agile Web Development with Rails, jQUery in Action, High Performance mySQL.
That is a whole lot of new concepts to digest in a very short span of time. And to get RecordBox going I had to act on them before they were fully assimilated.
Once I set a date for an early September release, I had to figure out what minimum product I needed to produce. I had to define the feature set, design the UX supporting that feature set, and then start implementing it.
Through all this there was a lot of back and forth because I simply did not know how much effort and time it would take to build the paper designs supporting my chosen feature set. I had no prior experience in this domain.
So I found myself designing a few screens, refining them on the whiteboard, and then trying to build them. As I built them, I found some of my assumptions about the development effort were incorrect. Then I had to make a decision about whether to alter the design, or drop some features, or push back the date.
I think the most important thing when making these kinds of decisions is to do it with a calm and clear mind. This state of mind enables you to be open about revisiting previous decisions, and it opens you up to inspiring solutions. By contrast, a frenzied, tired mind is prone to making hasty decisions. It is prone to hackery, laziness, and oversight. And this leads to shoddy work and a bunch of regrets.
I find that when I am calm and relaxed and thinking about a problem, I can hear my own inner voice very clearly. In this state, many solutions simply emerge, mutate, merge, and separate. Eventually one solution begins to stand out as the 'obvious' one in my head. And then I pick that up and start running with it.
There is no rational explanation for this. I guess it is just the human process. All one can do is create the right conditions for the process to occur, and then trust the results that it yields.
When one works in this clear state of mind it is not possible to write code one does not understand (which often happens in frustrated hacking sessions in the wee hours of the morning). In this state of mind, it is not possible to leave design elements like extraneous buttons, extraneous interaction flows, unnecessary preference options, etc. Your inner voice simply won't allow it.
What I am most happy about in this RecordBox experience is that I have been able to create this state of mind in all my working hours, and have learnt to step away when my mind and body stops cooperating.
Trusting myself in this way and being disciplined about creating the right conditions for relaxed and flowing work to occur has been crucial in making all the decisions that have gone into RecordBox. I feel more energetic than ever and have no nerves about anything. And this is the most rewarding feeling of all!