At Iteration One we keep a close watch on the programming world and the languages it churns out. Every once in a while, a language will rise or fall in popularity. This is just a reflection of the needs of innovators. Like the other cultural fads, programming language ranking captures the zeitgeist of the tech world and its denizens.

In this article, we evaluate programming languages and their uses. In particular, we are looking to answer the question every CXO has: what is a good programming language to adopt as general purpose standard?

Our methodology

We use the Tiobe Index to keep a close eye on Developer mindshare for various programming languages. That, combined with years of experience gives us the needed toolkit to evaluate programming languages.

Programming Languages

Dot Net Family of Languages

First in our list is the Dot Net Family of Languages (C#, C, C++, Visual Basic). Microsoft is pretty committed to these languages, but they do break compatibility pretty often (WebForms to MVC, MVC to Core) say every 8 years or so. But again, 8 years is a pretty long time in this space.

That said, Microsoft does offer a great set of tools, often free and quite robust. For entry level enterprise applications to more complex ones, Dot Net does offer a good set of features, ease of maintenance, deployment options (especially with CORE) and a very wide resource availability in the market.

Also, Almost all low-level systems such as operating systems, file systems, etc are written in C/C++. For system-level programmer, C/C++ is the language of business. C++ is also widely used by competitive programmers owing to the fact that it is extremely fast and stable. 

For first time programming language learners, your bets should be more on the rest of the list, especially Python and Php.

Java

Next up on the Tiobe scale is Java, which is a popular choice in large organizations for decades for building enterprise scale applications. Java maintains almost obsessive backward compatibility which is great. Your skills are likely to be in demand for a long time, but you must focus on new features, which are plenty.

For programmers in large enterprises that design and build business applications, Java is the way to go. It offers very stable and reliable toolset, plethora of packages to drop in features, great development toolset, unparalleled deployment options even for very large load and a great availability of resources in the market.

In addition Java is widely used in Android App Development. Every business worth it’s salt needs an App these days. This cross function makes for hiring and retaining great talent, easier.

For first time programmers, Java is quite a good place to start, though Python and PHP might offer a slightly gentler ride.

Python

In number 3 slot is Python. While Python is a easy-to-use and deploy programming language that is quite generic in it’s application, the current rise in its popularity is most likely because of it’s unprecedented adoption in the Data Sciences world.

That said, it’s incredibly easy-to-learn and maintain. It’s such a fun language, you’d start to wonder if you are doing something wrong. Yet, many startups have adopted it for custom built applications.

Yet, for non Data Sciences applications, our bets are with PHP. Python just hasn’t received the same love from general open source as it has from data sciences. Most popular Python projects are Tensor Flow, SciKit and Django. Django is a nice and generic though. So, don’t ignore Python just yet.

For first time programmers, Python is a pleasure to learn. There are plenty of jobs as well.

JavaScript / Node

Our next one on the list is a relatively new entrant at least to the halls of serious programming languages. It was, for a long time relegated to front end tweaks. With the introduction of Node, JavaScript is being used by many organizations, traditional and startups, to run server-side microservices. Developers can use a single programming language for server-side and client-side scripts.

The need for responsive and fast front end applications has given rise to frameworks such as ReactJS and Angular and a horde of developers to go with it. Adopting isomorphic programming language to code both the front and the back, eliminates the need to maintain two sets of developers. The same resource can do both the activities, though developers tend to specialize in one or the other. This means easy maintenance and access to a large developer community.

Node offers a wide variety of packages, via NPM, to make development much faster. Deployment choices are plenty.

For the first time developers, if you are looking for that cool tech job at your favorite startup, you should seriously consider learning JavaScript.

PHP

Last, but not the least, in our list is PHP. Born in the dot com days as a simple mail handler for personal home pages, PHP has grown to become a dominant player in the web space, especially open source. PHP boasts Word Press, Magento, Oro, Symfony and Doctrine as adopters.

PHP offers a stable, well organized set of backend developers. The community is large and is growing.

For first time developers, PHP offers a easy, intuitive development environment and quick results.

Others

We are really not going to evaluate the rest. They are not general purpose (like SQL, R, Matlab) or have too less of a mindshare (like Swift, Go and Ruby)

Hope you enjoyed our view of the programming language space. For more details, contact the author.

Categories:

Tags:

One response

Leave a Reply

Your email address will not be published. Required fields are marked *