Monday, November 2, 2015

Reflecting on the last few months

In the week gone by, I finally published a version of the Tweet Smart Chrome extension which is visible to the general public. On hitting this milestone, though a bit late, I ended up reflecting on what was the progress in the past few months and whether I could have saved time by doing things differently. The fact that there doesn't seem to be many people enthused by the extension made me question my own judgement and made me wonder whether I had built something that people did not want. I keep professing The Lean Startup principles to everybody, but here I was with a tool that not many people seemed to be enthused about and I spent a considerable time developing it. Couldn't I have just learned that without all that coding?

I have a terrible habit of questioning everything, including my own judgement. It is a trait which became a habit when I first started out on my own. Life is inherently uncertain, but living in a relatively secure and certain society, one's instinct to question the way things are weakens and gives way to an instinct of assuming. This works well when one is on a relatively well trodden path. But the moment you plunge into the sea of unknown - with the knowledge of the destination you want to reach but without any idea of how to get there - this instinct of assumption gives way to an instinct of questioning and inquiry. Because as time passes and you try and measure your progress, you invariably find that you have no idea whether you are heading for your destination or just drifting along. The metrics and principles to measure progress in the environment of uncertainty are different.

Back in 2009, as I quit and started on my own and as time passed, I started to realize the many assumptions that I had about how startup life would be. I have previously blogged about some of my epiphanies such as here. Even before The Lean Startup became the movement that it is, I came across the idea and latched onto it as it provided a very good template of how to think, understand and evaluate in conditions of uncertainty.

Anyway, as I questioned myself about my endeavors for the last few months I came to the following conclusions:

1. The idea to build tweet smart came as I saw that a lot of people number tweets in their tweetstorms as 1/n,2/n etc without knowing in the beginning what that n would be. When I released the chrome extension to the general public, I did that by tweeting about it, sharing with a few friends on email as well as posting on the notcrud.com community. The feedback from friends who used it was positive. But given that there are only six users till now made me feel that I had built something that people did not need. However, still doing a search of tweets containing "1/n" I found that there were a few people who still tweet that way. So the need seems to be there, but perhaps I have reached out to the wrong set of users. Or maybe its too early to say that what I build is not needed. I need to reach out to more people in a targeted way.

2. I suspect many people would be accessing twitter on their mobiles so perhaps it makes sense to finish the android app and then reach out to people. I tweeted out to 3 people who had numbered their tweet storms as 1/n but did not get a response from them. It could be because I told them that I had built a chrome extension which is not very useful if you are using an android app. Of course it makes me question whether switching to the android app just to number your tweet storm would be an acceptable proposition for people.

3. The central goal behind building this was to learn new technologies. I had never built a chrome extension before. Neither an android app. And had never built an end to end product while using linux. While this certainly is not an end to end product, I can say that I am now much more comfortable using ubuntu than I ever was and can approach a team working on these technologies with a certain confidence, which was lacking a few months ago due to the years of working on .NET and Windows.

4. I chose React to build out the extension as it's the new rage. And rightly so. I loved it. But as my aim was to build an extension and an android app, perhaps there was no need for me to build the feature to run on a website as well. To do that I wasted time to get it to work by building remote api's using Express. However, as the code of the extension calls the twitter api directly, there was no need for me to build the remote api I built. At Babajob, I would have questioned and stopped something like this if my team was taking this approach. However, working alone, I got did not critically analyze my decision and just went with flow, which was a mistake. It was waste in Lean Startup terms.

Anyway, the extension is published in the Chrome Web Store. I have set myself a target of 1000 installs by mid January. One of the toughest things to do when you build something is to take it from Zero users to a certain number of active users. That means you really built something useful. My hypothesis is that I can do that with TweetSmart as I feel it solves a pain point.

In my first startup, CATNINJA, I got around 450+ people to install the facebook app that we had built in a span of two months. We were largely able to do that because of people sharing to their wall from within the app and we got people to use the app by using FB ads. That was back in 2009. At Babajob, when I joined in 2011, the company already had a decent traction and people using it.

Thus, I have had this feeling that I have not yet experienced how to grow from zero to 1000 users (I chose 1000 as a threshold because by that time, I expect there should be enough people giving feedback on how to improve your product.) So I look forward to go from zero to 1000 and experience first hand the pains when doing so!