This post originated from an RSS feed registered with Python Buzz
by Jarno Virtanen.
Original Post: Theory of programming language popularity
Feed Title: Python owns us
Feed URL: http://sedoparking.com/search/registrar.php?domain=®istrar=sedopark
Feed Description: A weblog about Python from the view point of Jarno Virtanen.
I have an over-simplified and a somewhat ill-adviced theory of
programming language popularity, not without some humoric value, I
hope. It's called the it's-just-so-damned-easy-to theory of
programming language popularity. It is based on the idea that language
choices are not based on sound financial and technical evaluations,
but, rather, on the implementer's impression of the language. And
because us normal humans try to avoid difficulty as much as we can, we
choose the tool that just hopefully makes it damn easy to get the dang
thing done. Moreover, I argue also that the thing that a given
language makes it so damned easy to do is generally easier in that
language than it is in any other language.
That is why some languages never got popular. Take for example
Eiffel. Its design by contract is a neat and sound idea, but what
design by contract 'makes it just so damned easy' is nothing concrete,
only an abstract value of knowing that you're doing more to ensure
that the program is actually correct. And, again, it is a wonderful
idea, but most of us programmers don't, believe it or not, give a damn
about correctness. Well, we may give a slight damn, but we are not
doing everything to make it so.
Or Haskell. What a pure and elegant language. But if getting a
frigging 'hello world' out of it is such a pain, it is never going to
attract masses. (Maybe that's for the better, by the way.)
So, here is my list of (some) programming languages'
it's-just-so-damned-easy-tos (in no particular order):
With PHP, it's just so damned easy to hack up a dynamic database
backed website.
With Java, it's just so damned easy to get your manager's approval for
using it on a software project.
With Perl, it's just so damned easy to say it all in three lines of
code or less. (In reality, it's not, but that's beoynd the scope of my
theory.)
With C, it's just so damned easy to make the algorithm go
fast. (Hardly easy per se, but easy compared to many other languages,
at least.)
With C++, it's just so damned easy to do some hellishly complex and
complicated code.
With Visual Basic, it's just so damned easy to make a Windows
application. (Well, at least the interface.)
With Python, it's just so damned easy to make clean looking, beautiful
code (that also works, but that is also beoynd the scope of my
theory).
I'll leave you now to chew on this and, perhaps, expanding on the
idea.