
Top 10 popular programming languages and their history - amerf1
http://visual.ly/history-programming-languages
======
examancer
"How will java's recent security vulnerabilities affect its popularity?"

This is the one question the infographic takes the time to ask. It's a poor
question, but one many people seem to ask after the recent java plugin
vulnerabilities.

Java hasn't been popular for in-browser development for many years now, and
even at its height it was never _that_ popular. These security vulnerabilities
only affect Java use cases where untrusted java code is expected to be
restricted to limited system access. This is not the environment mainstream
java software will ever run in, so the mainstream use cases for java are
entirely unaffected by these security issues.

The majority of Java software falls into two classes: desktop/native software
and enterprise/server software.

Desktop/native software, like Minecraft or Android apps is either intended to
have full system access (Minecraft) or is already restricted to making system
calls through a rigid API that requires user permission to have access to
(Android apps). In addition, Android uses its own Dalvik VM, so issues with
Oracle's JVM are immaterial. Security of browser applets is a non-factor in
both cases (android phones can't even run them).

Enterprise/server software are Java web applications, Java services, and other
enterprise/web/server architecture pieces. These don't run on end user
machines and are trusted applications, so JVM sandboxing is not really a
concern.

There is absolutely nothing insecure about Java as a language. Occassionaly,
there are issues with certain implementations of Java. These latest security
flaws were in an implementation of Java that very few people use. Yes,
everyone should remove Java from their browser, but if they were even using
Java it almost certainly wasn't in the browser to begin with. The plugin has
stuck around far long than it was useful, so good riddance.

Removing Java from a system altogether, as I have seen many people recommend,
is in general too far and may break desktop apps users depend on that are not
a security threat.

Sorry for the rant... I'm actually an ex-Java developer who has fallen for
Ruby. There are plenty of legit problems with Java, but security generally
isn't one of them.

------
jroseattle
The problem I have with _any_ of these types of rankings is always the basis,
which is so nebulous that it never holds up under scrutiny.

In this case, popularity is measured in terms of the number of programmers
using a language, the number of training courses, and the number of third-
party vendors.

I use about 5 different languages on this list, and another 3-4 that aren't.
Which group am I counted in?

Training courses = popularity? Hmm, maybe. That also represents a sales angle,
so it's skewed. As pointed out elsewhere, Javascript is incredibly popular but
I don't find a lot of training courses available for it. It must not be
popular!

Third-party vendors? Guess it depends on what you're selling (again, sales
skews the line.) Some languages don't formulate well to products being sold
(think dynamic languages that can't be compiled/obscured).

And lastly, what purpose does a popularity list _not driven by job
descriptions_ serve?

~~~
dragonwriter
> And lastly, what purpose does a popularity list not driven by job
> descriptions serve?

The only purpose a popularity list driven by job descriptions serves is in
determining the employability consequences of getting the language on your
resume; every other conceivable purpose of a popularity list is best served by
one not based on job descriptions.

------
epenn
_Ada Lovelace credited with first computer programming language; wrote an
algorithm for the Analytical Engine (early mechanical computer)_

This is often credited as the first computer program ever written and by
extension she is often credited as the first computer programmer. Those are
great things and accurate as far as I know, but I think saying that she
created the first programming language is a bit disingenuous.

~~~
kibwen
Here's the algorithm she described:

<http://www.fourmilab.ch/babbage/sketch.html#NoteG>

Seems to resemble a mathematical proof more than anything, but perhaps this
just means that mathematics was the first programming language. :)

EDIT: Actually, in Note E she appears to introduce a custom notation for the
machine. Perhaps this is what the article was referencing.

------
mseepgood
The Terminator ran COBOL? The screenshot clearly shows 6502 assembly language:
<http://www.pagetable.com/docs/terminator/01-23-27.jpg>

~~~
Lambdanaut
It seems you're right. That's pretty bothersome. "The Terminator is written in
COBOL" is practically an urban myth at this point. There are a plethora of
articles about it.

[http://landofthefreeish.com/code/the-terminator-was-
written-...](http://landofthefreeish.com/code/the-terminator-was-written-in-
cobol/)

------
bcaulf
This document is a mess. The title "The History of Programming Languages" does
not correspond at all to the content.

No mention of machine language or assembly; no mention of functional or
declarative style languages like Prolog, SQL, SetL; no mention of major
languages like PL/1, Basic, Ada, Algol; no mention of a compiler or
interpreter; one line on Lisp, banishing it to 1959; no mention of any
theoretical underpinnings like Turing machines, Lambda calculus,
computability.

I couldn't understand why anyone would put so much effort into making it look
pretty and so little into making it communicate until I got to the end and
learned it is just an advertisement for a security auditing program. They are
really only concerned with current popular programming languages because that
is what their prospective customers are using.

------
venomsnake
Hmm ... those are not all the most popular. They are just the most widely
used.

The real test for popularity will be which languages the polyglot programmers
will choose if unburdened by legacy code . I think that we will see
C/Python/Perl/Javascript there but i have yet to hear a good word for Java or
the dark corners of C++.

~~~
mseepgood
> The real test for popularity will be which languages the polyglot
> programmers will choose if unburdened by legacy code

See the GitHub top languages: <https://github.com/languages>

~~~
yoklov
While you could do much worse for a measure of popularity, some languages are
popular, but dont have a huge open source community. For example, Objective-C
and C# are both probably higher in reality.

~~~
mseepgood
Because it's not popular. People use Objective C because iOS is popular, not
the language.

~~~
WayneDB
There's no evidence that the GitHub list is comprised only of entries where
the developer chose the language because they truly enjoyed or liked it.

The only reason that Javascript is at the top is because of the Web's
popularity in my opinion. Personally I've seen many, many more people say they
enjoy C# and think it's a well-engineered language than I have seen for
Javascript.

Then of course we have people who choose languages based on their ideology.

------
roadnottaken
A primary use of Perl is graphics programming??

~~~
kbenson
And Python was created to support a variety of programming styles.

While not strictly untrue, depending on what you consider a "style", it did
cause a double-take.

~~~
TillE
Style as in functional, object-oriented, etc. Not tedious bikeshedding about
whitespace and brackets.

~~~
kbenson
I know, that's why I said it's not strictly untrue. Depending on your current
state of mind, "style" may mean something different to you. I didn't mean to
imply it was untrue, just that it did make me pause for a second and think.

The truth is, since I'm programming in Perl most of the time and I'm not
restricted much in style (in the paradigm sense), I'm often changing between
functional, imperative and OO "styles", so I don't think of "style" as
referring to that very much. To be clear, I don't think this is inherently a
benefit of Perl, but of the class of languages to which it belongs.

------
outside1234
Errr, where's JavaScript?

~~~
examancer
The infographic describes a little about JavaScript's history, but it is a
little surprising to see it not listed in the top 10.

------
oddshocks
They just forget about Python and Ruby half way down...

