Raju has an excellent post about People Aggregator on his blog. The upcoming release of People Aggregator is what keeps me awake at nights these days! The team is working very hard and it is THE biggest and most complex project most of the dev team has ever worked on. Besides, we are a truly global team with us in Gurgaon, India, Phil in New Zeland, Martin in Germany, and Marc , MarcS and rest of the BBM gang in California. One day I will write in great detail the challenges and advantages of doing such extreme distributed development. But first we gotta ship some code! :)
May 2006 Archives
This is a message for kids in school and college worrying too much about their grades - worrying so much that they can even consider ending their lives. It is really shocking and disturbing that every day we hear of kids ending their lives because they failed in a course or scored badly in their exams. We seriously need to give our education system a relook if it can drive students to suicide.
But while changing the education system is beyond the reach of most of us, let me just point out that education, for the most part, is over hyped. I mean education is important, but success in career or life is unlikely to depend on how much you scored in Economics in Class 12th. And its also not going to depend on if you did have to spend an extra year in college. The thing is that when you are in school, one extra year or one failing grade seems like the end of the world. But if you really think about it, a typical career is roughly 35-40 years long. So in that context, can a couple of bad grades way back in college really make a difference? Do you think your dad or uncle or aunt would have had a more fulfilling career if they had scored more in Math or cleared Algebra in first attempt? I agree this is easier said than done but surely it is nothing so serious to contemplate killing oneself.
The other factor is of course parental pressure and expectations. I was fortunate during school and college that my parents never exerted any pressure on me and never expressed their expectations to me. But unfortunately all parents are not like that. I really wish there was some law to prohibit parents from exerting too much influence on their kid's choices. Their intentions are alright but the consequences are horrible. I think the educational system also needs to preach more independent thinking. Kids in the West are much more independent in making their choices and hence study what they are really interested in. In contrast, we continue to give too much importance to a handful of career choices like medicine and engineering. Until this mindset changes, students will remain under unreasonable pressure to perform.
Well, I will just say it again in case anybody is really reading - don't kill yourself kids! The education system is screwed up so if you don't do well in it, it means nothing! If you parents are unreasonable with you, ignore them. They will feel bad but they will feel a lot worse if you kill yourself!
I have been reading the excellent book "Built to Last" lately. The book analyzes why some companies last while others just peak out and even disappear with time. According to the book, one of the key factors that is common amongst most long lasting companies is a well defined reason for existence. From my reading of the book, I can see two key reasons why many companies don't last the test of time:
1. Company was created to exploit a particular short lived oppurtunity. An example would be scores of body-shopping companies that mushroomed at the time of Y2K. There was a very specific problem that needed to be solved and obviously, money to be made in the short term. Founders of many of those companies would have realized even when they started that this was a small window of oppurtunity. So they perhaps didn't mind cashing out and closing shop once the oppurtunity went away. Note that I am not saying it is wrong to start a business on the basis of a lucrative immediate oppurtunity. But that can only be the starting point. Companies like Infosys and Wipro used the same Y2K opportunity to propel themselves to the next level. They had long term vision and perspective. They did not cash out but instead reinvested and diversified with the money they made at that time. Which is why these companies are still around and flourishing.
2. Company revolved around its co-founders/CEO. It is natural that a company's direction and growth depend on the abilities of its co-founders. But this dependence must reduce with time. The company must become bigger than its founders. It is surprising how many very big companies have thrived solely on the charisma, leadership or business intellect of its founder. The problem with "larger than life CEOs" is that they can't last forever. They will leave one day. And if the company was too dependent on the top guy, it runs the risk of losing direction and focus. The book gives several such examples of large companies that went downhill after a change of guard at the top.
There are several other interesting cases presented in the book. I am not even half through it yet but I will highly recommend it to anybody involved with running a company.
Remote blogging is yet another geek proprogated term which makes little sense to most humans. It simply means that if you have multiple blogs (say one on blogspot, another on wordpress.com etc) then you can write a post once and send it to all your blogs with in a single click.
Remote blogging is not for everybody. But many bloggers routinely maintain multiple blogs and want to be able to "cross post" across blogs. So for those folks People Aggregator should come as a welcome relief!
So what's new?
One of the big reasons why software is so often pretty much unusable is because nobody cares to use it while it is getting developed. Developers don't use it, testers don't use it (testing is not using it), project managers don't use it and worst of all, even the clients don't use it. Yes, early stage software is buggy, crashes and is hard to use, but there is absolutely no excuse for not "dogfooding" (as we used to say in Microsoft) your own software. If you can't use it how can you expect somebody else to use it? Many times, even clients are loathe to test out alpha builds. They will give it a quick spin but then forget about it until the next update is provided to them. Bad idea. Marc is an exception to this rule. He loves pounding on alpha code. This makes developing People Aggregator (you can sign up for an invite now btw) all the more fun. Right now we are in a weekly update mode where we put out a new build every Tuesday. Then all of us spend the rest of the week really playing with it. A lot of bugs are found only with "real world" use.
So here is my message to all of you out there who are in any way involved in developing software: Use your software folks! Don't think you are building it for somebody else so you don't need to use it! If you can't use it, nobody else can!
I have never been a Google fan boy (or a fan boy for any other company for that matter) but I might have actually developed a little contempt for GOOG last weekend. Just a couple of weeks after I introduced adsense on my blog with much fan-fare, I got the dreaded "letter" from the big G.
Hello Gaurav Bhatnagar,
It has come to our attention that invalid clicks have been generated on the Google ads on your site(s). We have therefore disabled your Google AdSense account. Please understand that this step was taken in an effort to protect the interest of the AdWords advertisers.
A publisher's site may not have invalid clicks on any ad(s), including but not limited to clicks generated by:
- a publisher on his own web pages
- a publisher encouraging others to click on his ads
- automated clicking programs or any other deceptive software
- a publisher altering any portion of the ad code or changing the layout, behavior, targeting, or delivery of ads for any reason
Practices such as these are in violation of the Google AdSense Terms and Conditions and program polices, which can be viewed at:
https://www.google.com/adsense/localized-terms?hl=en_US
https://www.google.com/adsense/policies?hl=en_US
Publishers disabled for invalid click activity are not allowed further participation in AdSense and do not receive any further payment. The earnings on your account will be properly returned to the affected advertisers.
Sincerely,
The Google AdSense Team
I was quite surprised that I was summarily booted out. For one thing, I wasn't making much money at all from adsense. So I didn't exactly get a feeling of loss on losing out the moolah. But all the same, I felt it was extremely unfair that I was accused by Google of a crime I obviously did not commit. So I sent them an email and also filled out the online form and assumed I will hear back in a day or so. However, 4 days have passed since then I have not heard a word back.
I had heard stories of Google's arrogance but I experienced it for the first time just now. To summarize
1. Google accused me of click fraud but provided absolutely no evidence.
2. Then they terminated my account without giving me a warning.
3. Worse, they simply kept all the money that had been accrued in my account
4. And then they gave me no chance for appeal.
Wow, that doesn't sound like a company that shows much love for its customers or partners. But I would have still taken all of that lying down. After all, its a big company with all its slow moving machinery and they can be forgiven for trampling on some folks here and there.
BUT BUT BUT then I came across this: http://www.readablog.com/feed15942.aspx
Now here is a website that is COPYING EVERY WORD OFF MY BLOG verbatim AND DISPLAYING GOOGLE ADS and making money off MY CONTENT! And that is legitimate according to Google but my displaying ads on my own website with my own original was not cool! I call BS on that.
So here is my message for the folks at Google (not that anybody is listening but whatever) - I love your search engine and it really does make my life easy. But what is with this heavy handed arrogance? I am not sure if there are many companies that lasted long by treating their customers like this. I (ironically) googled this and founds dozens of other people grumbling about how they have been treated unfairly in the adsense program. Many of them were making their living from it. There is a whole website dedicated to ripping on Google. And wasn't your motto "Do no evil"?
Oh well, I guess my dreams of a Nokia 9300 will have to be realized through more honorable means. Meanwhile I have this empty space on the right column of my blog to fill up. Any suggestions what might go in there?
Remote blogging from People Aggregator.
(via Emergic) Paul Graham has a really really really good article on hardest lessons for startups to learn. Anybody associated with a startup must read that article. And read it twice at least!
Here are my favorite quotes from the article with a little bit of my own commentary
competitors are not the biggest threat. Way more startups hose themselves than get crushed by competitors. There are a lot of ways to do it, but the three main ones are internal disputes, inertia, and ignoring users. Each is, by itself, enough to kill you. But if I had to pick the worst, it would be ignoring users. If you want a recipe for a startup that's going to die, here it is: a couple of founders who have some great idea they know everyone is going to love, and that's what they're going to build, no matter what.
This is a hard lesson to learn not just for startups, but for engineers in general. Somehow engineers make the mistake of considering themselves as "normal" users and their usage patterns as "normal usage patterns". So inspite of their (our) best intentions, usability often gets ignored. Usability, interface design and information architecture are things that we have started emphasising on very heavily at Tekriti. Catering to users goes beyond just interface usability but that is the first step. If your product is not usable, you are not going to get far enough to worry about other things!
Everyone who deals with startups knows how important commitment is, so if they sense you're ambivalent, they won't give you much attention. If you lack commitment, you'll just find that for some mysterious reason good things happen to your competitors but not to you. If you lack commitment, it will seem to you that you're unlucky.
Commitment is a culture thing. Committed founders are not worth much if rest of the team is not committed. Founders can set the trend but ultimately committment has to be part of the DNA of a company. Committment towards clients, customers, peers, emoployees, community is something that has to be second nature to each and every person associated with the company. I think this becomes more challenging as a company becomes bigger.
The way to succeed in a startup is to focus on the goal of getting lots of users, and keep walking swiftly toward it while investors and acquirers scurry alongside trying to wave money in your face.
I have never bought into the whole "build to flip" theory. Being a bootstrapped company so far has also allowed us to not worry too much about "exit strategies". The most obvious way to build a profitable business is to create a product or service of value to somebody and get paid in return. That is how all businesses work since the beginning of time - be it a grocery stroe or an insurance company or a car rental service. No body built a automobile company hoping that GM might buy it off one day. So why should it be any different for technology companies? Emphasis has to be on creating something of value to others. Everything should (hopefully!) fall in to place by itself.
And I will say it again - go read the original article!
Having interviewed 100s of candidates over the last one year, I can say that the experience you gain in your first job out of college plays a huge role in shaping your career. Habits - good or bad - developed in your first job tend to stick with you for a long time. Your first job is more like a finishing school - almost a continuation of your college education. So it is very important to choose your first job wisely. There are two things that a fresher should especially keep in mind while choosing where to work fresh out of college.
Firstly, work in an organization where your role revolves around the core business of the company. If you are a lawyer then it might make more sense to work in a law firm as against working in the legal division of a software company. Similary, as a software engineering graduate, it is better to work in a software company as opposed to working in the IT division of a large bank or an insurance company. A software company lives and breathes software. Since software is at its core, chances are that a lot of effort is devoted to creating good development practices. Besides, the breadth of work that happens in a software company will be much wider than what the IT division of another company might be able to offer. Now the catch is that since IT departments typically find it harder to attract top talent, they might offer higher salaries. And that, in my humble opinion, is a trap which should not allure a young fresher. You can always go to work for the IT deparment of a bank after working in a software company but the reverse is usually not possible.
A corollary to the above is that it makes little sense to take up a job in a completely unrelated field immediately after graduation. Why I mention something so obvious is because I remember that in IIT banks and management consulting companies used to hire computer science graduates. In fact it was (and I learnt it still is) quite fashionable to join a McKinsey or a Morgan Stanley after spending 4 years studying computer science. It is rather illogical even if it does pay more. So unless you absolutely hated whatever subject you majored in, please don't waste your degree and follow your heart, not the money.
Secondly, don't be hung up on working for a "big company" or working for a "startup". Depending on whether you listen to your parents or your friends, you will inherently have a bias towards one of the two options. Big companies have reputation while startups are cool. But more than the size of the company, what really matters is whom you will be working with on a day to day basis - your immediate work group. So when you interview with a company, try to find out more about the people with whom you wll be working. Are they smart people? Can you learn something from them? Do they appear to be passionate about sharing their learnings? It doesn't matter whether its a big dull company or a hot new startup that you work for as long as you are working with top notch quality people who can teach you something. My former manager used to say (rather modestly) that he always tries to make sure that he is the dumbest guy in a team so he can learn from others. I think that is a good thumb rule for freshers. Your first job is about learning from others and not the other way around.
I was prompted to write this post because I see college kids make incorrect choices all the time. Peer pressure plays such a big influence that almost everybody simply flows with the crowd. So one year networking jobs are hot and next year investment banking jobs are in demand. Remember no matter how many jobs you do in your life, you can do only one first job! So make a choice that makes sense to you without worrying about what your parents or friends say.
Update: Make sure to check out the comments to this post. There is more useful advice there.

