Archive for the ‘Technology’ Category
Mobile Monday in Delhi on August 5th

Delhi is going to witness its first mobile unconference on August 5th.Called Mobile Monday (its happening on Saturday – dont ask me!), the idea is “bring together mobile enthusiasts, developers, technologists, business folks, entrepreneurs, VCs under a common forum. The chapter would channelize efforts to develop an active mobile community that can network and share information.” It is really encouraging to see that technology community in Delhi is starting to actually look like a “community”. We still have a long way to go but BarCamp and now MoMo Delhi we have made a good start!
Find out more at MoMo Delhi wiki.
Are you using the software that you are building?
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!
“Do no evil” they said
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?
Advice for freshers – how to choose your first job
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.
The delivery manager’s dilemma
Developing software and actually shipping software are two radically different things – often at conflict with each other. Those who develop software – engineers, testers, usability experts – never want to ship software (not that they will confess to it). They want to keep developing software. Add more features, improve the architecture, fix all the bugs, make it scalable, make it more usable, make it pretty etc etc. And those who actually pay for that software – clients and customers – can’t wait for the software to ship. Ask any client by when they need to get their software developed, 9 out of 10 times, the answer is “yesterday”.
Don’t get me wrong. Those of us building the software do not seek any sadistic pleasure in endlessly iterating over it forever. But software always has scope for improvement. Always! You can never say that a piece of software is perfect. Developers will always feel they could do a better job with the code. Testers will always feel that the devs didn’t fix all the bugs. The interaction designers will always want to try more ways to make their sofware usable. Project managers will always want to sneak in a few extra features. We are all perfectionists I guess!
So shipping software is hard. When does a delivery manager know that her software is “ship-ready”? There is no one answer to this question. But I think there are two key criteria in determining if we are ready to push it out of the door:
1. Is the software solving most of the key problems it was developed to solve in the first place?
If you are developing tax software, then is it capable enough to do taxes for most people? Will 90% of the people be able to do their taxes using your software? What are the situations that your software doesn’t handle yet? If it can’t handle incomes over $1 billion, then does it even matter? Is a billionaire really going to use your $20 off the shelf software for doing taxes?
2. Is adding new functionality justified by the cost?
Software development follows the law of diminishing returns. Initial phases of software cycle are incredibly productive. New functionality is cranked out on a daily basis. Bugs get found and fixed rapidly. The user interface stops being an eye sore fast enough. But at some point, the productivity curve starts flattening out. Adding new features or changing existing ones takes longer and requires more rigorous testing. If a project has reached this stage (and its easy enough to tell) and it meets the first criteria above (this is the hard part!), then it might the time to ship it!
Shipping software is an art. It requires courage to ship software. It is like an artist unveiling his creation. He doesn’t want to show it to the world till it is perfect. Same with software. You don’t want to ship until it is perfect. And yet you know that perfection is a myth. And that is the delivery manager’s dilemma!
And now BarCamp Hyderabad
It turns out that BarCamp Hyderabad is scheduled for the same day as BarCamp Chennai. It is heartening to see the BarCamp movement spreading across the country!
OnYoMo – cool new startup brewing in IIT
I stumbled upon OnYoMo today. They have created a very cool AJAXian Google maps like interface for Delhi. Check it out here. I think they are using data from Eicher maps and are building a mapquest/citysearch type of business. Very impressive!
Looking at their careers site, it looks like the startup is based out of IIT-D which makes me feel proud of my alma mater. No names on their “about us” page so I dont know who all are actually involved. But I have to congratulate them on a job well done. Their application has one the best user interface and functionality I have come across in any Indian web site. Congrats and all the very best!
Geek dinner on Monday
Rakesh has organized a geek dinner in Gurgaon on the coming Monday. Some of us from Tekriti are going to be there plus a bunch of other interesting folks as well. So do come over if you happen to be in the vicinity on Monday!
Rakesh is CEO of Snapstream – the company which develops a popular PVR software in the US. It will be interesting to hear his views on why PVRs have failed to take off in the Indian market.
BarCamp Chennai is happening!
Wow! It didn’t take long for the next Indian BarCamp to get announced. Kiruba and other folks in Chennai are organizing a BarCamp on April 8th and 9th. Chennai has a thriving tech. community so my guess is that this is going to be a really interesting event!
I had heard rumblings about BarCamps in Pune and Hyderabad as well but nothing official as yet. I gotta shout out to my mates in Bangalore – dudes you are getting left out!
Announcing Barcamp Delhi!
Marc and others have been lately blogging about how technology conferences are often expensive paid affairs. I would love to attend conferences but I am just too poor (right now…) to be able to afford such luxuries. So what can be the next best thing? How about organising one yourself? Well, its not a conference. Actually its an “un-conference” and its called Barcamp. Like the wiki says, BarCamp is an ad-hoc un-conference born from the desire for people to share and learn in an open environment. It is an intense event with discussions, demos, and interaction from attendees. Barcamps have become pretty popular lately and many have taken place in North America and Europe. But this one is going to be the first barcamp in whole of Asia!
The Idea
I think Barcamp is a great idea and a big thanks to Jon for taking the initiative in organising one here in Delhi. The main differentiation between a conference and an un-conference is that in the latter every attendee is also an active contributor to the event and not a mere spectator. So one could contribute by presenting on a interesting topic, or by taking notes and posting on the wiki, or by pitching in for food or by playing emcee during the day. Its a democratic process where all talks and presentations are treated equal. There is no keynote, for example. The setting is informal and most speakers are not seasoned presenters.
The Theme
The theme for Barcamp Delhi is “Next Generation Internet: Web 2.0, mobile computing, and other cool stuff“. Yes, thats a whole lot of buzzwords but I think consumer internet space in India is at an inflexion point. The mobile revolution is already well under way. There are a whole lot of new technologies that are defining this new broadband enabled always connected world. User generated content and citizen journalism have created an information channel parallel to mainstream media. How will all this come together and shape the future? What technologies will be instrumental in creating this new Internet? Which companies will matter? What new businesses will emerge? We hope we can get some insight and interesting discussions around these questions (Dude, you can’t actually answer any of these in a day!)
And also note the “other cool stuff” in the end. That is for those of you who have some really cool stuff to show off but doesn’t squarely fit in the web2.0 category. Doesn’t matter. I mean, it is a democracy after all. And then India is the biggest of ‘em all
What’s in it for me?
Well, the materialistic answer is “Free food and maybe a Free tshirt!”. But the karmic answer is that this an experiment in open learning and sharing. Anyone with something to contribute or with the desire to learn is welcome and invited to join. It’s a forum for bouncing off your ideas or showcasing what you are doing. Obviously it also helps people connect and network. And hey, you get to boast that you presented at the first ever barcamp, not just in Delhi, not just in India but whole of Asia! How cool is that?
When, where, what time, how do I participate?
Barcamp Delhi is scheduled for Saturday March 4th. More details on the Wiki.
Please feel free to contact me (gaurav at tekritisoftware dot com) or Amit (amit at uzanto dot com) if you have any questions. And do add your name to the Wiki if you plan to attend. Happy barcamping!
