Competency Development
I again thank you all for the good encouraging comments for the last post. It’s good to see this much amount of interest on Open Source. Especially guys like Praveer and Raghul, who have been able to talk a good amount of detail on the examples they’ve pointed out.
Specifically what Raghul talked about, got my thought process going. He was talking about using open source at colleges for learning purposes. The statement he made is of great magnitude and importance. If you really see, it’s a two-sided phenomenon. Using
OSS for learning and competency development is one aspect, but the reverse aspect is of much more importance. It’s not easy to contribute to the community unless we are good developers. Competency is a must for contributing to open source. For e.g, if you see the profile of the developers of some of the most popular open source software like Linux, Apache, MySQL, Gnome etc, you would see how experienced they are. This is not by accident or coincidence and some of these guys would be the first to jump out and say that they are still learning!!!
So I thought I’ll spend some time on how important competency development is and how learning never stops.
The foundation/starting point for this in our industry is being a good programmer in at least one programming language. This is not easy, but to think of it all you’ve got to do is just keep programming!!!!! And this can be fun too. In fact some of the first C programs we ask our freshers to do, is to pick up their favorite game and implement it. This also interests you as you’re able to relate to it. This is why you see only a million sudoku solvers available on the web.
Whichever way you approach it, do not forget the end goal. Ensure that you understand all the important aspects of the language. It is also a bit context sensitive, as some of the finer aspects depend on the domain in which you are programming. For e.g somebody who programs on the embedded/systems software domain in C, will always code to the limitations they are working with. They need to take care of things like Endian-ness, structure padding for cache-line optimizations, double pointer manipulations etc… These are the things that come with practice, but once the foundation is right these are relatively easy challenges J
So, invest your time in competency development which would make it easy to scale up to your goals.

Conversations
Ganesh Sidharth
Ganesh Sidharth, Kasi Raj kumar, Satyaki Roy, Donald duck, Bharat, shriti, vikas
Patresia Ancel, Sanat, dharmaraj, Sanat, Shweta Varma, Sanat, Sanat, thripuranath, vkt, Sanat [...]
Amrita Sachdev, vikas, ChandraPrabha Dewangan, Ganesh Sidharth, Sumit Raut
Satyaki Roy, madhan, Narayan Shrawagi, Ganesh Sidharth
sai krishna suryadevara, Sharmila bali, khyati chawla, Ramya, kousar, Kovsar, Kovsar, Sameer Chaudhary, devas, aruna [...]