Why Indian Internet Startups need to get off their asses and learn to program
I have been resisting writing this post for a long time as I felt that it may be too cocky or arrogant, but we at Infinitely Beta have been getting so many emails off late from startup founders and funded startups asking us to build their products for them that I felt it was appropriate to write this post now. It really shocks me and my team when we get such emails. It clearly shows that the folks that are sending us these emails obviously feel that the core DNA we have worked so hard to build over that last 12 months can easily be bought for few $$ – Not! Second, it also shows that these folks have no tech capability whatsoever and feel that technology is trivial and can be outsourced. Instead of taking the time to go and learn programming and building a deep tech culture they are just being lazy and hoping that they can find a technology team / outsourcing firm to help them with their problems. It also makes me wonder why VCs fund tech companies that lack deep tech capability.
To build a highly successful Internet Service, you need the following ingredients:
1. A solution (product) to a real problem that lots of people are facing
2. The product needs to be simple for people to use
3. The user experience of the product should be world class. The Internet Population in India are primarily using world class products like facebook, google *services a lot and these are the gold standard of well designed and engineered products. If you build a product that is not as well designed/engineered then you are going to have a hard time convincing someone to use your product everyday. As a result, you are going to spend a lot of money on pushing ads to attract users and when they land on your site and are not impressed will bounce away increasing your Cost of Customer Acquisition (CAC). There is enough evidence that the best designed products grow virally and don’t need a huge marketing budget to acquire customers. Most startups in India don’t spend enough time perfecting the user experience.
Perfecting the User Experience requires the developers of the product to optimize the following:
1. the user interaction design - this is a key aspect of design where the designers need to build detailed mockups of the product and map how a user will interact with the product. The optimization phase of this process is to see how to make a user achieve his objectives with the least number of interactions with the product. Humans are inherently lazy and if your product is not easy to interact with then they will just stop using it. We fortunately live in an era where we are spoiled with choices. For every idea, there are multiple startups trying to deliver solutions. In this type of a competitive era, it would be foolish to start an Internet company without this core DNA fragment. If you have not developed this skill in your startup, go find a co-founder who has very deep product design background.
2. the visual design - people like eye candy. this is a very important aspect of product design where the visual elements, the color schemes, the typography, the symmetry really differentiate your product and make it attractive. Humans love things that are attractive and shiny – we are simply built that way (think about the time you checked out that pretty girl/boy or that awesome sports car with shiny alloy wheels). If your site looks like crap don’t expect your visitors to be attracted to it. Again, if you have not built this core DNA fragment, go and find an awesome co-founder who gets it!
3. the perceived speed of the product - humans are lazy and impatient. the slower your site, the more users that bounce off or churn away. Marissa Mayer of Google did a nice talk on this very critical aspect. Watch the video if you have not seen this talk. It will open your eyes.
We spend an incredible amount of time at Infinitely Beta thinking through this right at the design phase of any product we build. We then pick the right technology stack to deliver this experience and we either learn new technologies if we need to or do everything that is needed to deliver this experience. Our first product Paisa.com was developed with the nginx/memcache/python/clojure/mongodb/redis stack and I remember every decision/brainstorming session we had during the design process that led us to this stack. The result was awesome. The speed of the product is something we get complemented on every day by our users. Our production servers are in Singapore and all our pages are dynamically built. The backend is constantly updating market data for 3000+ companies and yet things never slow down. I hear from a lot of startups who have not taken the time to build a deeply technical team struggle with performance and scale issues even with 1000 visitors a day on their sites. I know that it is incredibly hard to build a company and you are always worried about the monetization aspects or the next round of financing. But, please take the time to find a deeply technical co-founder who has worked on awesome products before and understands or is willing to learn all the aspects of how to engineer awesome product and create a culture that is so deeply technical that people who interview with you should feel like they faced the hardest interview of their life and hire the best. At Infinitely Beta even our designers (people who traditionally use photoshop, dreamweaver etc – visual tools) use Emacs to hand craft all the HTML and CSS. We spend the time to teach people skills that they need to be very productive.
4. the reliability of the product - this is something many startups struggle with as traffic on the site grows. server crashes, late night debugging is a part of startup life. Not! At Infinitely Beta we have zero administrators. We have automated the crap out of everything. With the push of a button we can provision servers on the amazon cloud and build a server with all dependent code and light it up in a few minutes. We sleep well at night and I can’t remember a single night since the last 4 months of Paisa.com going live where we have had to baby sit our servers. We had one outage for a few hours once which was a due to a bug in our mongoDB client. There is so much tech out there that can be applied to solve all these problems today. We are not in 90′s when web technology was being built. Again, do your homework. Stay on top of hacker news to see what awesome new technology is being released that could solve /automate away problems that your facing.
In a nutshell, get off your asses and go learn!
Disclaimer: This post is relevant to technology/Internet startups in India and may not be applicable to startups that are not delivering a technology led/driven service. This is my personal blog and reflects my own views and opinions and in no way my companies views or opinions.