The Evolution of Programming Language
Development languages change over time, this blog looks at some of these changes, how they affect us today and how they could affect us in the future.
Past and Present
The below table shows the changes in popularity in software development languages used over the last 25 years (courtesy of www.tiobe.com)
As you can see apart from Objective C, which apple uses in its software for its IOS and OS X products, there has not been a dramatic shift in the use of software for a very long time. There could be several reasons for this, the first is that large companies have legacy systems which use older programming languages and are reluctant to change these systems for fear of errors (banks are a good example of this type of group), this results in new languages and methods never getting used on a large scale and people learning and programming in older technologies. Another reason is there is more support and help out for more established technologies, while newer languages have less people with a knowledge of the language and therefore a less active support group for any issues you might have. This is making some newer languages difficult to learn and the knowledge of using them correctly can become bottlenecked, with only a small group of specific people being able to use the language correctly.
The most popular languages in the list are Object Oriented Programming (OOP) languages such as Java, C and C#. A breakdown of what OOP is and why it is so popular can be found here. One of the key reasons for the popularity and continued use of OOP is the flexibility of what type of software you can create with it, you can make mobile and web applications to simple or complex software with a user interface for only that machine. This flexibility, especially in relation to mobile and web development which is a major factor in most modern software creation means that the top 4 popular languages are unlikely to change.
At Bridgeall we use C# as our main development language, the main reason for this is we have a very experienced team in developing .net solutions. We find C# is able to meet the requirements of our clients and with using Visual Studio as an IDE (Integrated Development Environment) we find it is very flexible by allowing various packages and extensions to be installed above the basic functionality of the language.
The status quo in how software is developed is likely to stay the same for the foreseeable future, with Object Oriented Programming being by far the most used language currently. I see no reason this will change given the various uses of the languages. The only change that is a possibility is that Apple has announced it will be replacing Objective C with a new language called Swift for developing software on IOS and Mac products. So it is a distinct possibility that this language could quickly drop in the amount is used in the future. Apart from this the future is likely to remain similar to how it is used now, with updates and patches being released to constantly fix and update languages there is unlikely to be a massive change the way we develop software.