Monday, February 14, 2011

TheIceBreak Tech Overview


A few people asked me what we use at TheIceBreak, so here it goes:
  • Linux / Apache / MySQL / Python
  • Pylons Framework (SQLAlchemy ORM, Mako Templating Engine)
  • Lucene for Search
  • JQuery for website
  • Appcelerator Titanium for mobile app.
  • Redis for caching
  • GIT for source control, hosted on github
  • nginx as load balancer
  • Linode VPS for hosting webservers / database
  • Amazon S3 for images
 Besides this, it consists of:
  • 3 main servers: Web, Search, Database
  • 1 dev server, which also contains a database replica (in case the main server crashes)
  • The dev server also hosts a 'stage2', which is as similar in structure to the live site as it can. Everything that is pushed live goes through stage2 to make sure that nothing breaks.
Using this setup, I have been able to keep the latency of most (dynamic) pages to under 150 ms. 

Thursday, February 10, 2011

On Leadership

I recently watched an excellent episode of Fareed Zakaria GPS on the topic 'What makes a good leader' that was sitting on my DVR since months. He had some of the biggest leaders in business and politics (Lou Gerstner, Tony Blair, Admiral Mike Mullen and others) talk about their take on Leadership.

I thought I would summarize what were the biggest tasks that a Leader should accomplish:
  1. Set up a clear long-term vision and guidelines for the company.
  2. Make sure that the execution follows this long term vision / guidelines. People are free to do whatever they want as long as it helps the company reach its vision. 
  3. Be a good listener, you will need all the data you can gather to come up with a good vision
  4. True leaders will show their strength during a downturn, its easy for anyone to do well when the company has a strong momentum for growth.
Even though these points can easily be found in any leadership/101 class, its amazing how many companies and products fail at the basic task of having a clear vision and eventually loose their significance.

I have had first hand experience with all the above points, and can't agree more with all of them. The last point was particularly interesting that you can identify a true leader only during a downturn. If you hire someone when your company has a lot of momentum and is growing well, you don't need a lot of leadership skills to run it (too much leadership might actually disrupt the growth). True leaders can really be identified clearly during a downturn.

Finally, a great quote by Eisenhower: "Leadership is the art of getting someone else to do something you want done because he wants to do it".

Saturday, February 05, 2011

Crowdsourcing private data

There have been numerous startups and trends that use crowdsourcing to generate their desired results. Most of them rely on people to publicly share the (public) information, whether they are tweets, status updates, checkins or shared links and then aggregate this information to generate interesting results. This model works great for public content, but completely breaks for anything that is private and personal. There have been a very small number of products that exploit this facet of crowdsourcing properly.

Basically, the idea is simple: Get private data from users and present it to others in an aggregate, anonymous way so that it benefits them (users).

The company that has done this quite well recently is Mint.com. They hold tremendous amount of private, transactional data from their users which is not directly shared with anyone. Then, they mine this data to generate interesting stats that give users a new insight on their usage. Utility companies have started to use this to show comparisons to their users, like I recently got a letter from our city that we are using more power than our neighbors.



We use a similar model in my current startup TheIceBreak, where we provide insights that help users improve their personal relationships.

With any service of this kind, it is absolutely important to maintain the trust of users. Failing to maintain the privacy or trying to move beyond the comfort zone of what people consider private will work against the utility of the service.

The results from such a service can be quite fascinating, giving users an insight which they might never have had before. I am curious what other services will emerge in the future that follow a similar model.