Competency Development

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.

5 Responses to “Competency Development”


  1. 1 Antony M Souza

    Very helpfull thought on competency development.
    Thank You

  2. 2 Prasant

    “Competency Development” a very true in this fast changing scenario of today. In fact, Updation is the key to sustain in today’s environment. Really a very encouraging article to start with.

  3. 3 Sumit Raut

    Competency Development is an inevitable aspect in all domains today. For me, its rather a process of learning, unlearning and re-learning to remain updated with technological advancements.

    Thank you very much sir for bringing this vital aspect before us.

  4. 4 Swati Srivastava

    competency development its really good going through it.
    its providing us the real knowledge of this real time world’s
    technologies and their nxt versions.

  5. 5 Gourav Jain

    Thanx..but can u elaborate this point bit more as competency development should b
    – domain oriented (you r used to work in)
    – else achieving competency by entering n learning about new domains.

Leave a Reply

Quote selected text