Sunday, November 26, 2006

Half century and a little piece of advice!

Woo-hoo! I managed to hit a half century finally. I never thought I would make it - 50 posts to this blog. It was fun, though. I enjoyed it, except for those rare occasions when it occurs to me I've perhaps the most pathetic readership among all the pages, anywhere on the net. But then, I continued. Here is why...

More than 2 months back I listened to this great piece of audio recorded by Robin Sharma, one of the world's leading gurus on leadership and personal success (I don't remember where I listened to this one, and couldn't find it anywhere in the net). This is what it essentially says - "Who cares to play when nobody is watching you?".

This is his version of the story. Apparently, when he was coming out of one of the hotels he stayed in, to get into a cab, he saw this advertisement by a shoe company. He watched this one for sometime and began developing a whole new idea on this. This line is no doubt quite catchy, and it might've meant (I am not too sure) that nobody, except a block-head, plays when there is nobody to watch. This is indeed what most of us do. Most of us don't feel like doing some thing, unless we get recognized for what we did. Some people call it motivation. I will tell you what happens to me. I am so proud of what I do, that I give my 100% the first time, then wait and watch on the response of the people. Only if things are favorable to me, I will continue the same way; else, I will reduce my 'motivation' level (sometimes, even forcefully) to a lesser value. I bet, this is what most people do. I also, most times, believe that nobody else could've done it to the same perfection, so fast as me...Now, when I see that somebody does it better than me, I get overwhelmed with sorrow, anger (to myself) and a bit of jealousy!

Ok, you might be thinking, what is all this got to do with this blog? Here is what. I just confessed about one of the major 'illnesses' I suffer from. I am aware of this, but often unable to control my emotions during such occasions. Few months back, I really started wondering what direction am I taking in life? Not long afterwards, I listened to this piece of audio, and immediately recognized it to be very similar to what the GITA - one of the greatest Hindu philosophical texts - preached. For those of you who may not know, it says

Karmanyeva Adhikaaraste Ma Phaleshu Kadaachana,
Ma Karmaphala Heturbhurma Te Sangostva Karamani"

Here is the English translation of these Sanskrit verses...

"Seek to perform your duty. But LAY NOT CLAIM to its fruits. Be you NOT the producer of the FRUITS of KARMA; Neither shall you LEAN towards INACTION."

Once upon a time, I used to be extremely proud of our ancient history and philosophical thoughts that preached to the world such great wisdom. But, now I realized that I never practiced what it preached, but just got carried along. Arguably, it is impossible to practice all that the GITA talks about, but I decided to take this particular advice seriously. I adopted this advice and decided to 'live' it through my blog. If the whole thing sounds funny to you, believe me, it doesn't to me, a bit...Of course, I like to write and my style of writing would've exaggerated it a bit, but I mean most of what I told here...

Essentially, this is what. I know that nobody is reading what I post here. I know nobody ever will, except for those those who incidentally happen to be in these pages, by way of Google search. But, I don't care. I will continue my posts, and I will spend the same amount of energy and dedication, as if the whole world is up and keenly watching my every move on this blog...

Wednesday, November 22, 2006

Anticipatory bail plea...

I know, I know, I haven't posted anything in the blog during the past few days. Of course, I wanted to, but didn't get the time. I have been more or less regularly posting for the past 3-4 months, and now I feel I don't have a little time to spare? It is actually a bit hard for me to believe too. One of the main reasons is that at the company I work for, we've a project runnning and almost at the verge of completion. Though, it was on for the past few months, I've never been involved in it beyond 2-3 hours/day. If you are working for a software company, you will definitely be thinking, "Wow, this company is great". If you have resumes ready, you may send it across to me at ananddotiyer@gmail.com. I will dutifully forward to the HR. One caution, however. I don't have control over which team you will end up working for here. There are teams in my own company who work like all hells broke loose, pretty much all through the year. Why, even some smaller teams within ours, are not very different. So, where you will end up, depends a lot on your luck.

Software guys are notorious to be 'busy' all the time. Though, most of that is a myth, there is some element of truth in this. This led to me write an article on this and post it in the same blog, here. It has never happened to me before that I didn't get even 'time to breathe', as most people say about software people (and many times some of us so 'proudly' state about themselves). In fact, it has been the contrary most of the time* But, yes, some rare occassions had been that I was so tied up for a long time (sometimes, for several months together), I almost hated that I work in IT. Now, I start smelling one of those rare occassions round the corner, but probably not as devastating as some of the previous ones. I hope so!

So, for the next few weeks or perhaps even a few months, you will see lesser of me here. But, I will try to make it regular, at least once a week. So, don't go away, please...


* Sometime in the future, I will share with you an interesting incident about what happened to me, when I 'complained' to my manager about this recently...

Thursday, November 16, 2006

The 2 Great Revolutions of IT - Part II

After listening to the Google Story by David.A.Vise and Mark Malseed from audible.com, I was convinced that nobody could've ever imagined the power of internet, as much as Larry and Sergei, the young founders of the company. Starting with a small idea of helping the university campus with a way to wade through hundreds of research papers and the like, Google grew powerful enough to search billions of web pages within no time and it was no small achievement. Not only is the search done for keywords, but an intelligent search is employed that fundamentally** looks for references to the resultant page from other web pages. The search is primarily made possible by the very large hardware resources at the Google labs. But, Google didn't stop at this. It continued to create excellent solutions for many diverse problems. The very high calibre of work done at the Google, caused a brain-drain from the likes of Microsoft. So, the very people who created the revolution at Microsoft, begain to contribute to the revolution led by Google.

What exactly is this revolution? To understand this, we will take a peek at the products and technologies developed at the Google. The right mix of innovation and strategy is the reason for the enormous growth of Google. It actively encourages its employees to spend 20% of their work time on their pet projects. These 'pet projects' of its employees are evaluated and once found suitable, the launch is made onto the Google lab pages. This is based on my assumption about the way Google works, but I am sure it won't be too different from the reality. The reason for my assumption is that there are too many products, so diverse in nature at the Google labs. I haven't seen any other company as powerful and popular as Google, adopting the same strategy for product development. Google is very innovative in its approach, not only in its solutions for problems, but in the identification of the problems as well (perhaps to a higher degree). They work with an end in mind, but they do a thorough job of that. This, I believe, is the single-most reason why Google is where it is today. It recognizes the importance of people to build up the reputation, the business of it as many other companies claim to do on their own, but fail to live fully up to it. Google's strategy is unique and three-pronged as I see it. Firstly, it promotes innovativeness within the company and keeps up with top-notch technology. This continues to attract the brightest minds of the industry into the Google. This strategy has a ripple effect and the growth is spiral. Secondly, this strategy, which gives freedom to experiment and innovate to the 'Googlians', causes its own business to flourish and profits (which come primarily through advertising) to grow leaps and bounds. Thirdly, and most importantly, Google encourages 'public' participation by way of open-source technologies. For those who may not know, Firefox (see my post on this open-source browser a few months back) is liberally supported by Google. It is possible that Google had a hidden agenda to beat Microsoft with this strategy. But, it shouldn't matter to the world, as long as things are for good, which is really what I see now! I believe, all this are positive indicators of a revolution under way, which I call the 'Internet revolution - the Google way'...

**
The real algorithm used by the google search engine is quite complex and discussions about this can be found in sources elsewhere in the net; and don't make a mistake - search using google!

Monday, November 13, 2006

The 2 Great Revolutions of IT - Part I

Here in this post, I will talk about my most simplistic interpretation and analysis how IT industry went through revolution about 20 years back, and how it is going through another one now! While the first of these revolutions was a sea change and re-scripted the paradigms for most of us, the second one, that we are witnessing now, is much more, because the world is literally exploding with information. After this explosion, world will be a very small place to live in.

The first of these revolutions was led was Microsoft. For long, Microsoft had remained the singleton and ultimate authority of the IT industry. The company changed the way the world works, when it introduced the PC. Year after year, it invented newer technologies, all of which touched our lives in ways beyond what most of us imagined. Microsoft started it all with the most simplistic DOS operating system for computers. The next contribution from the company was its enormously popular Windows system, several versions of which power many millions of computers worldwide today. Even if I argue that Windows is single-handedly responsible for the revolution, it won't be too much of an exaggeration. There are so many other aspects to the revolution, which are all not being discussed here.

So, all this and more contributed to Microsoft retained as the unquestionable for almost a decade - most part of the 80s and the first few years of the 90s. But, the 90's brought along with it, the internet revolution. The internet was looked upon as just a medium of communication in the beginning. It was not entirely untrue, because the internet was born because of the need to reduce the many hassles of communication. That it was the starter for the second IT revolution was not understood by many, including Microsoft. But, some did. Without going to too much of the inside stories, let me straight come to the point. However, some of these are quite important pieces of the great jigsaw, that created (it still does) the second IT revolution, that can't be skipped. The most important among these were the open source community. When the leaders and and those amazing visionary advocates of this community initially started off with the idea, nobody could've ever imagined that it actually are baby-steps to a revolution. While the actual revolution is brought about by the likes of Google and so on, the ever-expanding community of open source is the framework, the very thread of it. There are several, who contributed to the growth of internet and millions reaped benefits from it. The most striking example of the contributions by the open source community is Linux, the free operating system born off the spark ignited by a young researcher during the mid 90's and supported by hundreds of those like-minded developers. Microsoft was literally shaken by this development, but of course a giant like Microsoft was too much for Linux to conquer by itself. It didn't have to wait for long, before another spark was born at the Stanford University out of the minds of two youngsters doing their PhD's.

I will cover the rest of this article in my next post...

Wednesday, November 08, 2006

Some ideas to solve the online train ticket reservation issues...

Here are some ideas to get over the issue we discussed during the last post, about all train tickets getting booked during the first few minutes after its opening....

- Disallow i-Ticketing. e-Ticketing may be allowed.

- Booking through internet opens only a few days after it opens at the counter and closes sooner than at the counter. As a further refinement to this, booking at the internet opens at least 2 hours after the counters open, and closes at least 2 hours before the counters close, everyday.

- Establish a quota of tickets that may be issued for a particular journey through internet. No more than this quota will ever be available through internet, unless cancellations (of those tickets, that are booked online) happen in between. This may be further broken-down to limit the number of bookings/day through internet – on the basis of time (per hour/day), or place (from each zone, district etc) or from an IP.

- Fees (say, Rs.100/-) for registering account with IRCTC. Fees payable only through banks (as done during the final stage of booking)

- Similar to the 4 bookings per month restriction, there should be a restriction on the payment too, and that put in place with the help of the banks. Bank shouldn’t accept more than a fixed number of debits/month from a certain account towards booking charges and registration fees.

- To restrict un-manned computers from automating the booking process, insist on manual entries like ‘Enter the following characters as you see on screen’.

- Insist on details like DL, passport, ration card, electoral identification, PAN card or similar, while the online booking is processed. Optionally, have a process to validate these or at least have simple validations like number of digits and characters in passport number etc. Don’t allow multiple accounts with same details.

- Insist that the same documents (quoted during the time of booking) be produced while boarding the train or during cancellation of the booking. Disallow any such black-marked accounts (or even the individuals concerned) from booking tickets online again.

- Have a middle man/agency to process the data and perform verification of data provided during account creation and booking, apart from the automatic verification under each of the above bullet items.

- Automatic logout from session after 10 minutes.

There could be many more, but if all or some of the above are implemented rightly, I'm pretty sure, the rest of the solution will find its own way...

Sunday, November 05, 2006

PPP (Private-public partnership) - Some ideas

Recently, I needed to book my train tickets to go from Bangalore to Trivandrum, my native place, by the daily Kanyakumari Express (Island Express) of the Southern-Indian Railways. The date of travel was 22nd of December, and since I didn't want to get caught in the RAC/waitlist categories, I approached the counter as soon as the ticket issue opened for the journey - exactly 60 days earlier to my date of travel. But, to my surprise, I found that, by the time I could reach the counter (which was around 1.00 in the afternoon), all tickets was sold out and I was waitlisted at 170. I couldn't believe this, since such a thing never happened to me earlier.

When I tried to book return tickets for my wife for the 30th December, again on the opening day, I found myself in a similar situation. I couldn't help wondering how this could happen. The last time I booked tickets on this train was during the same time last year and I had no such problem, even when I booked the tickets a good 10 days after the issue opened. What could've gone wrong between the last year and this year? The answer was 'Railway Online Reservation System'. Indian railways started giving away tickets through the internet sometime during the last year. I'm not exactly sure on the timeframe, maybe this system started before that, but it became popular only during the last year or so. So, during vacation times (which are aplenty in India), all tickets get booked just minutes after the ticket issue opens. Given the technological capabilities of the current internet scenario and the related technologies like online payments and such, I knew after all this was not really impossible to happen. Just for the sake of calculations, let us say there are 1500 (22 compartments * 70 seats) tickets available for a day's journey , and even if two tickets were issued to each district (there are more 600 of them) in India, you will be left with just 300 tickets. Carrying the same argument forward, the whole thing will be shot down by 2.5 tickets per district! The biggest culprits here is however, the travel agents, who can book tickets in bulk. Unfortunately, the reservation system makes it very easy for misusing it too, because there is no restriction in the number of accounts a single individual can create. Each account allows to book a maximum of 4 tickets. Simple calculation will tell you, that for 1500 tickets to go in a flash, you just need 375 acccounts, which may belong to just a handful of people...For all you know, all these 375 accounts could even belong to just one single guy! Things are so simple with the system...to misuse it!

But, the fact that the number of people exposed to the internet or even computers in India is way too less (maybe around 5% of the total population - this is a wild guess), makes the likelihood of somebody living in such circumstances (especially the villages) reserving a ticket online, miniscule. I don't think it is really exaggerating to say that the average Indian still is left behind of the technological advances that happen around him, unable to benefit anything reasonable out of such efforts by the government. Given such a scenario, what is the average Indian supposed to do? Is he supposed to be denied a ticket on the, till recently, very accessible mode of travel for an average Indian - the Indian railways - because of a "better standard of living"?

Don't mistake me for a social worker, who works for the up-lifting of the Indian public, or even voice their concerns, but I am just one of those many people who gets irritated by the carefree and negligent attitude of the concerned authorities over such happenings. Infact, one gets more irritated (even to the extent of 'blood boiling', so to say) when you learn that the authorities themselves promote such wrong doings, in many cases. So, it is upon us to figure out a way to fight these. Let us think about the possibilities, in this particular case, to distribute the benefits of technology to the general public and avoid miscreants getting away with all the benefits...am just asking you to wait till my next post...

Wednesday, November 01, 2006

Best practices!

There are often fun situations at work. Here, I will write about one (don’t expect to laugh loudly here, the situation is very subtle here) such that happened just two days back. I received a mail from one of the top guys in my organization two days back, who also takes care of the CMMI implementation at our company, enquiring with me about one of the software applications I developed to help smoothen the workflow in my team. I created this tool couple years back, but I digged up a bit and sent an immediate response to him. He too replied back immediately thanking me for my fast response, and assuring me that he will get in touch with me about this, soon. Additionally, he asked me something, which sounded quite funny to me…

He asked me, “Do you know of any best practices in your team in the last 6 months or so?”. My initial thoughts were guided by this article from James Bach. I believe, James’s thinking is right, but his thoughts are very radical. He totally defies the existence of any such thing as a ‘best practice’ in the software industry. I am not that rigid, but couldn’t nevertheless understand the definition of this term fully. The usage of this term is grossly relative and people often associate a sense of stylishness or being ‘state of the art’ with the software industry jargon. I don’t associate any more importance to this.

So, with all these thoughts in mind, I couldn’t help wondering what the sender of the mail meant by this term. To me, everything we do in the team seems good enough and can be called up to the mark of quality (again, quality is a relative term – but we won’t enter into another set of discussions on this now). So, can I term all of what we do in our team as a best practice? Essentially, my question is what is my benchmark for a best practice? Who defines it? As far there are no point answers to these questions, nobody can deny anything we do at work as being claimed as a best practice. Do you agree?