Why so few software products from India?
People often question why there are so few software product companies in India. The answer is obvious if they analyze how software industry began here. There is a stark difference between how computer software started in US and how it started in India. In its home ground United States it all started with few university grads trying to tinker with huge computing machines. After passing out from college or even dropping out, they brought these electronic gadgets in their garage and tried to work with them. It began with want to experiment with these new found toys and building something useful out of them. Some of them succeeded others failed. But they ended up giving their society a culture where software was something with which you can play, you can be creative and you can create something useful that can take you to the top. Their journey started from university labs to garage startups and reached corporate offices.
In India, software industry started quite late as compared to US. It started with a need to fill gap of software developers, which arose with ever increasing demand of software. By the time India realized what software is, this industry had already become dominated by IBM and Microsoft. We hardly got a chance to touch punch cards, assembly language and Unix. In India it all began with BASIC, DOS and Windows. We started by working on software products rather than developing them. Operating system and programming language were never a concern us, they were already developed by US. We got tied with the corporate branch of US software industry. Windows was always installed and we just had to master commands of programming languages and write applications or maintain them. We never even got a chance of thinking a software application, because being in service industry that too was decided by our clients.
The first generation of Indian students (to which I belong) began their computer journey after 5th standard with DOS and BASIC. If this was not bad enough, worse was to follow. Next generation has now begun with Google, Yahoo, Wikipedia, Orkut, Facebook though of course much earlier. Internet is the first thing students today get introduced to. They come to know utility of internet much before they come to know the utility of computer itself. So, how can we expect them to be creative enough to develop a technology product when they start with something which is already a highly refined web product? Of course, same is true for kids of other countries including US too. But they do have two generations of strong hacker culture to back them, which is missing in India.
To build something innovative in technology it is mandatory that one gets introduced to at least something raw, which needs further refinement. If I always take milk in form of cheese, I will never know that I can make ice-cream with the same milk. Same is true for software. If you always get compiled and packaged code in form of web-page or operating system, you will never know that you can build your computer game from a code. No wonder we are unable to come up with software products which require spirit of experimentation and creativity. So, why not give children some spice of terminal commands and scripting languages? Why not make them play with the computer code rather than allowing them to while away time writing on Facebook walls? If parents and teachers of India can just think little out of box, we will have a whole new world of computers in the country. Its time we realize that good programs need not be written in glass buildings, they can be written in home, backyards, garages, schools and colleges.
