18 January 2009

Touch and Transform Lives - Build India

Anyone who uses Internet will understand its benefits and I agree with me if I say that Internet has wealth of Information. Not only we use Internet to connect with our closed ones, many educational institutions are started to change their learning methodologies. Internet has become a platform to deliver online classes and training. The advancements of video over Internet and video over mobile is going to take us much closer to our dream of classroom on the move. Your location is going to be immaterial, the classes will be delivered to you with Internet and mobile. This is looking from technological perspective and what is feasible with technology. Most of the things will apply to developed countries where these technologies are affordable or more rightly, the people have buying potential as their per capita income is high. The technological advancements will bring the next revolution in developed countries.

However, in countries like India where the majority of people do not have buying capacity, these technologies will take time to penetrate into Indian markets. Again these technological advancement, if not properly employed, is going to divide Indian society - the people who have access to these technologies and the people who do not have access. The main advantage of India is having people in working age compared to Europe, China and so many other countries where people are in retiring age. But, according to researchers, this is not going to be easier job for India as the policies are focussed on quantity but not quality. Certain reports question the quality of the graduates and claim that most of them are not immediately employable. Their claim is proven valid as we see a trend of increasing colleges and increasing rate in unemployment. Many corporates started to feel that heat and we will see a lot of churn post global economic downturn (In India, after economic recovery, I feel the training industry is going to boom. We will see many training companies that focus on imparting experiential knowledge). The corporates are breathing easy as demand matches with supply. However, after recovery, the demand will be more and the supply will be less. 

There is a heavy irony. Many of IT services company work on these technologies and take part in the Information revolution. But yet, we have so many Indians who have deprived of not these advanced technologies but even basic Information to get a job.

Many corporates fail to notice that they need to get people from the pool of available graduates. They have a blurred vision on elevating the average knowledge of college graduates/students. While corporates are focusing on profit margin, innovation and market positioning, they fail to see the important issue - "basic supply - human resources". Why the companies in India does not ask their employees to go back to some colleges and impart some useful training to students. Won't it help the students and corporates in a long run? Don't these companies have money to deliver classes to villages with the help of technological advancements.

One can look at this as CSR (Corporate Social Responsibility). At the same time, this is not purely a charity work, it is pure business. It is bread and butter for them as they heavily depend on the local workforce and its quality. If they fail to act now, they should be prepared to hire people and train them during the job which is very risky. So, either you have CSR or not, act right now.

Your CSR rating is not in the number of MoU you sign the colleges. It is directly proportional to the number of lives you touch and transform.

We strongly believe and want to bank on bright Indian brains. We have rolled out an initiative OpenGyan targeting colleges. We welcome you to join on the board. If you can't, at least spread a word to your friends and closed ones.

Linux Programming Tutortial Series

Having worked in Linux in my leisure time for the past four years, I would like write series of articles on programming in Linux. Though, there is no difference between Linux and any compliant systems as Linux is also POSIX compliant, it is worthwhile effort to learn Linux programming. POSIX is specification and by using POSIX interfaces one can write portable applications that work in any POSIX compliant systems. POSIX does not specify how a particular API (Application Programming Interface) has to be implemented. It is freedom given to operating systems. In this series of articles, we will be discussing, slowly but steadily, various POSIX standards, library functions, systems calls, sample programs and discuss how POSIX can be used. At the end of this long journey, we will understand most of the POSIX APIs and if we have will power, we will also learn the internal implementation.

As a usual disclaimer, I am not a subject matter expert but I do have four years of experience in writing Linux applications using POSIX. At the end of this journey, I strongly believe that my knowledge and understanding about Linux will be improved. I am planning to cover the following topics in coming months.

1. Process
2. Memory Management
3. Threads
4. Interprocess Communication
5. File I/O

Since this initiative is at a earlier stage, I am not sure about how often I will write but I am sure that I can write one post per week. I have also created a widget "Tutorials" and added "Linux Programming" make it easier for the readers to navigate directly to the tutorial.

Like me, if you are also serious about learning Linux, I would suggest the following
1. Get a PC with Linux installed. You need to work out at least 30 minutes to 1 hour, try solving exercises and examples. Trust, it is worth doing.
2. Get a book on C programming (you can find a lot of resources in Internet. Just google)
3. If you do not have a PC, at least I request you to think about exercise and write the programs in piece of paper and do the hand calculation. A Programmer does not need a computer to program :-)

Happy Learning