The 2016 Top Programming Languages

admin

Administrator
Staff member
Found an interesting article which survey the popularity of coding languages and seem C has overtaken Java recently.

[img=636x369]http://spectrum.ieee.org/image/Mjc5MjI0Ng.png[/img]
After two years in second place, C has finally edged out Java for the top spot. Staying in the top five, Python has swapped places with C++ to take the No. 3 position, and C# has fallen out of the top five to be replaced with R. R is following its momentum from previous years, as part of a positive trend in general for modern big-data languages that Diakopoulos analyses in more detail here.

An interesting read, here is the link: http://spectrum.ieee.org/computing/software/the-2016-top-programming-languages
 
I am amazed that C is still being used. I was told years ago that C was not popular and not many people used it. I guess they were wrong about that. Java is only popular due to mobile devices now. I can see why C++ gaining popularity due to the fact that you can port it over to PHP. Facebook devs are using C++ and converts it over to PHP. Not sure of the program they use to do that.
 

Genesis

Administrator
Staff member
I don't know much that goes on with the actual coding, but what I do know is that FireFox doesn't like Java, and it's very difficult for me to update Java. So wonder what the role of browser security played in bringing Java down in the ranking?
 

Yozora

Moderator
Interesting! I don't know much about Java, but it seems like every piece of Java-based software I use is slow as well as hogs a lot of memory for some reason. Maybe that's partially it why went down in the ranking.
 

rrroberts

New member
Yozora said:
Interesting! I don't know much about Java, but it seems like every piece of Java-based software I use is slow as well as hogs a lot of memory for some reason. Maybe that's partially it why went down in the ranking.
import java.applet.Applet
before any other imports (if I remember right, can import user-written Java proper classes)

Also the web-based Applet starts with
public class <class-name> extends java.applet.Applet implements <interface list>

If I remember right, both Java proper and Java Applets are built from the Java SDK.

ANY JAVA PROGRAMMERS ON BOARD - please correct any errors I made here.
 

Barnum4000

Moderator
I learn't C last year in college and I really enjoyed and I like how useful it was. we made a simple command line program in C for an assignment. This year we are learning C# which I am looking forward to. Personally I really enjoyed C and its good that I have leant a bit of it because of how popular it is at the moment which could make it easier for me to find a job.
 

dtx0

New member
There was a time when C and C++ vied for first place for years, whilst Java settled for third. Now, however, Python has become a major player. This reality is largely the result of two significant factors: (1) colleges and universities are pushing OO languages, and (2) the number of libraries for said languages are ever-increasing at a substantial rate. The unfortunate and certainly unintended consequence of this is that programmers leaving higher institutions of learning have little to no concept of debugging or the idea of cleaning up (e.g., freeing pointers).

I agree with ilhamzar that PHP is a good language. It used to be that Perl and PHP were heavily used on server-side functions. This, however, is no longer necessary the case. JavaScript, for instance, has a growing presence for numerous reasons. Firstly, JavaScript is effectively system agnostic (i.e., it'll run on IE, Chrome, or any modern web-browser / browser "component") and makes portability issues less of a pain. This, however, is a front-end aspect as to why it's growing. Now, if we look at the back-end, one would normally not consider JavaScript to see play here. Much to the contrary, NodeJS exploits JavaScript's powerful features to implement asynchronous server-side functions. So, why use PHP when you can use JavaScript instead? The answer: Working with less languages makes cross-language hiccups less likely to occur, and if everyone works with the same language, then, everyone should theoretically be on the same page.
 
dtx0 said:
There was a time when C and C++ vied for first place for years, whilst Java settled for third. Now, however, Python has become a major player. This reality is largely the result of two significant factors: (1) colleges and universities are pushing OO languages, and (2) the number of libraries for said languages are ever-increasing at a substantial rate. The unfortunate and certainly unintended consequence of this is that programmers leaving higher institutions of learning have little to no concept of debugging or the idea of cleaning up (e.g., freeing pointers).

I agree with ilhamzar that PHP is a good language. It used to be that Perl and PHP were heavily used on server-side functions. This, however, is no longer necessary the case. JavaScript, for instance, has a growing presence for numerous reasons. Firstly, JavaScript is effectively system agnostic (i.e., it'll run on IE, Chrome, or any modern web-browser / browser "component") and makes portability issues less of a pain. This, however, is a front-end aspect as to why it's growing. Now, if we look at the back-end, one would normally not consider JavaScript to see play here. Much to the contrary, NodeJS exploits JavaScript's powerful features to implement asynchronous server-side functions. So, why use PHP when you can use JavaScript instead? The answer: Working with less languages makes cross-language hiccups less likely to occur, and if everyone works with the same language, then, everyone should theoretically be on the same page.
Because Javascript is heavy on the resources. It can't replace PHP. Also, Javascript makes no sense and doesn't follow the normals of other languages. You also have to load libraries to do 1 function only. So now it takes up space on the server for now reason.
Now, C, C++ can be ported over to PHP and this alone with help PHP move up and keep C, C++ alive. Eventually Java and Javescript with be on a downward swing
 

rrroberts

New member
strokerace said:
dtx0 said:
The unfortunate and certainly unintended consequence of this is that programmers leaving higher institutions of learning have little to no concept of debugging or the idea of cleaning up (e.g., freeing pointers).
Because Javascript is heavy on the resources. It can't replace PHP. Also, Javascript makes no sense and doesn't follow the normals of other languages. You also have to load libraries to do 1 function only. So now it takes up space on the server for now reason.
Now, C, C++ can be ported over to PHP and this alone with help PHP move up and keep C, C++ alive. Eventually Java and Javescript with be on a downward swing
strokeraceD
 

dtx0

New member
The merits of a programming language do not necessarily reflect its prevalent use. Yes, JavaScript is resource intense, and the same can be said about other languages, like, Ruby, Python, and VB. Be that as it may be, these languages are on the upswing because of their "ease of use." They are not the most efficient when it comes to the CPU and RAM, nor are they typically considered scalable for large infrastructures. Instead, one trades "footprint efficiency" for "time required to code something" (assuming debugging is not an issue). Another factor is that companies now care less about footprint efficiency because computers nowadays are much more powerful than they were, say, 20 years ago (e.g., compressed b-tree algorithms which used to have to be coded in C can now be done in Python, despite being much-much slower).

I consider Java to be a semi-inefficient language because a primitive type, like, byte can use 4 bytes of space (technically, it depends on the JVM); yet, ceteris paribus, an array of bytes[4], for instance, will also take up 4 bytes (as opposed to 16 bytes; i.e., 4 buckets * 4 bytes per bucket).
 

fouadChk

Member
From my perspective, the giving ranking seems predictable. All the major programming languages are featured there with the exception of 'R'. I'm a bit amazed to see it @position #5 and goes to show the increased popularity of statistical analysis nowadays.

I personally never liked 'Java'; too much bloat and rigidity resulting in zero expressiveness. But the hype with which it was marketed at mid-90s attracted a majority of business people into using it for their codebase... so, it's here to stay for a generation or 2 of programmers. But what I'm seeing in Academia for a while now is it's steady replacement with Python in their Computer science (CS) Curricula. This trend is showing in that graph where Python is in par with Java.

C and C++ are indispensable languages. Both are deeply rooted in CS curricula and any large project can't escape the use of one of them. C++ is the way to go when the modularity of the project is needed (in the case of very large projects involving a large team of programmers) while C is an option when the project needs to be as close to the hardware as possible.

C# is only an option when developing Windows applications. So, it's there for as long as Windows is popular with the masses.

The rest of the list languages are Web-related and the ranking seems fair for as much as I'm aware of.
Genesis said:
I don't know much that goes on with the actual coding, but what I do know is that FireFox doesn't like Java, and it's very difficult for me to update Java. So wonder what the role of browser security played in bringing Java down in the ranking?
None!

Java was meant to be the language of the Web in the mid-90s but was an utter failure in that regard right at the start. That's why JavaScript was designed and used as an alternative.

Java needs to run inside an NPAPI-based plugin when called by a web page. NPAPI plugins have always a security nightmare for browser-makers thus it has been deprecated then removed a year or two ago.

The impact of this initiative is minimal as Java hasn't been that popular inside browsers as early as mid-2000s and certainly starting with the 2010s when browsers native capabilities are as such as to render any reliance on Java OBSOLETE.
rrroberts said:
Have not kept up with Java, but here is what I remember (try not to laugh if I mix something up :wink: ) . . .

Java/JavaScript (for want of a better term) is a hybrid of compiled/interpretted language. A program ending in .com or .exe is a compiled program. Java is "compiled" into bytecodes which is executed by a Java interpretter (who remembers Dartmouth Basic interpretters?). This is the speed/memory bottleneck. However the bytecode can be moved from machine to machine w/o need for recompile.

Java proper is a programming language and can produce stand alone programs. JavaScript is a scripting language used in web pages for SIMPLE stuff.
Java and JavaScript are 2 VERY different languages. Granted, the first is a compiled while the second is an interpreted language but they really don't have much in common (except the old C heritage common to almost all language and one or two primitive implementations) the naming similarity is a historical anecdote dating back to mid-90s when Java was perceived as the holy grail in programing which pushed Sun Microsystem to require Netscape (owned by Sun at time) to change the name of the newly designed language from 'LiveScript' to 'JavaScript' and it stuck. BUT, the really correct name is the 'European Computer Manufacturers Association (ECMA) : ECMA-262 in short, which the standardize version and the still evolving version of it.

For lack of time, I will just refer you to 2 threads I wrote elsewhere about it one concerning its Core features and the other is concerned about its one of its server-side implementations (Node.js):
> 'About JavaScript Core Language'
> Server-Side JavaScript, the Node.js Way

That was long!
 

Artisan

New member
DJB said:
After two years in second place, C has finally edged out Java for the top spot.

There should be the Assembly language at the top,
because most "C" compilers compile the "C" code into the
Assembly language, and then into the machine code.

This process is usually hidden, but the compilers
usually have the options, which make it explicit.

For example, the -S switch for the GCC compiler.

Then the serious programmer may improve the
important places directly within the Assembly code.

And, in addition, the Assembly
language is used on its own.

Thus, it is used more,
than the "C" language.
 

quarky

New member
Artisan said:
There should be the Assembly language at the top,
because most "C" compilers compile the "C" code into the
Assembly language, and then into the machine code.

[...]

Thus, it is used more,
than the "C" language.

The list and article on Spectrum rank popularity, which may be slightly different from prevalence or existence.

Assembly code exists (is used) on all processors.

C compilers exist (are used) on almost unpopular
 

ghasemeng

New member
Please DONT DISTURB YOURSELF with rating for the programming languages!
All languages are good and have special applications.
you must choose them depends on your work.
for example you can use :
C language to write firmware for hardware and microprocessors that is very very good!
java language to write different OS software.
android (based on java) programming to write applications for android mobile phones.
objective c to write applications for ios mobile phones.
php to write server side codes.
jsp (that is a java framework) to write server side java codes.
.NET framework to write programs for microsoft Inc.
python for raspberry platform.
and etc
so we can see that all programming languages are good and each one have special purpose that you have to choose depends on your work!