• Home
  • About
  • Sitemap
  • Search
Complete Coding
Subscribe to Complete Coding
Subscribe to Complete Coding

    How should I decide on the programming language to learn next?

    22nd February 2011

    The TIOBE Programming Community Index for February 2011 is out and many blogs have posted their thoughts on the most popular programming languages. Some have also considered the TIOBE Index to decide on what will be the next programming language that they would consider learning.

    It’s been around 7 years that I have worked with software projects that use the C programming language. I’ve been contemplating learning a new programming language for some time now.  So what should be the language of choice for me or rather for a developer with a background in C programming?

    Should I go for the C++ language that has it’s roots in C and will be much easier for me to learn? Or according to the TIOBE index should I consider it not worth learning and switch to the ever popular Java language? Or maybe I should give a try to the Python, the supposedly most popular programming language being used by Google, Yahoo and the likes?

    Let’s see if I can try to choose based on the factors that developers consider in choosing a programming language. The competitors for my choice are C++, Java, Python and C#.

    1. Simplicity

    By simplicity, I gauge how simple it is to know about the programming language. How easy it is to just read a few tutorials and get a basic understanding of the language. What are the features of the language and how many times do I have to read through them to understand about them.

    I have read a bit of Python and it surely seems to top the list in terms of simplicity. And this seems like the view of many developers. Java seems to be the next in the list in terms of simplicity. I am not quite sure about C# but I suppose it will be much simpler than trying to learn C++. So for me C# ranks above C++ in terms of simplicity if you are a fresh programmer trying to learn a programming language. But since I have a background in C, C++ may not cause me that steep of a learning curve.

     

    2. Availability of an easy to use Integrated Development Environment

    Integrated Development Environments (IDE) seem to be the first choice of developers in selecting a programming language. Vim and emacs fans may disagree on this but like many developers I consider that my time should be spend on creating cool stuff rather than trying to figure out the key combination for opening multiple windows in emacs.

    All the contenders i.e C++, Java, Python and C# seem to have some good IDE available. C++ can use Visual Studio or Eclipse, Java and Python can use Eclipse as well, C# can use Visual Studio. Both Visual Studio and Eclipse are excellent and proven IDEs.

    3. Good documentation and support

    Documentation includes the documentation provided by the programming language creators, the amount of easily accessible tutorials on the Internet and the number of books that have been published related to the subject. Support is how good the creators are in releasing new versions with critical bug fixes and feature enhancements. In short, how actively the development of the programming language is being maintained.

    All the programming languages i.e C++, Java, Python and C# seem to have some pretty good documentation and lots of tutorials on the Internet. There is also no dearth of the amount of books that have been published for these programming languages. Maybe there are more books for C++, Java and C# than for Python but I may be wrong and maybe it’s because Python has not yet caught up the mainstream application development at least in India.

    4. Popularity

    By popularity, I intend to probe the popularity among the developers as well as the popularity in the job market.

    Java has to be the one of the most popular programming languages among the developers. While I do not have any statistics for this claim, I feel that this is true considering the amount of developers who work with Java not just in the organization that I work for but also many others. Next in popularity seems to be C# since Microsoft does a good job in promoting their software development tools among the developer community. C++ seems to be hanging there in the TIOBE Index but I have mixed reactions about it’s popularity among developers. Python right now is not quite popular among Indian developers and maybe it is related to the second point about the job market.

    There are a plethora of jobs available which require Java and C# skills. There are also jobs available that require C++ skills. But not many jobs in India require Python programming skills.

     

    Conclusion

    So after this personal analysis of the currently popular programming languages, which language is it that I have decided to learn? Actually I settled on more than one language. I found that it is relatively easy for me to start some object oriented programming with C++ considering my C background. Once I have some level of understanding, I will move on to learn Java because it seems to be somewhat similar to C++.

    Related Posts:

    • No Related Posts
    Author : kevin | My Website

    Leave a Comment
    Click here to cancel reply.

    Click to cancel reply

    « Previous Article Next Article »

    Recent Posts

    • Did We Pass On The Joel Test?
    • Programming Is About Doing The Job Right
    • How should I decide on the programming language to learn next?
    • How To Handle Errors In Google Go
    • How To Achieve Concurrency In Google Go
    Complete Coding Categories
    • development
    • general
    • programming
    • programs
    • today's read
    © 2010-2011 Kevin Rodrigues.