24 comments

[ 3.2 ms ] story [ 28.3 ms ] thread
It also won Best Scripting Language.
Large companies still seem to prefer Perl. I know both Perl and Python but for larger programs I tend to prefer Python. I had a tough time convincing the management that it we should use Python for a project (I expect it to be 20-30KLOC in Python). Perl is the default scripting language in my organization. Default not as in policy but its what programmers reach out for as thats what they know. I think this might be the case in most large companies. Most programmers just know that Python exists but not much more.

Even where Perl is concerned, I don't think most developers in my organization care about writing good code. I spent a lot of time dealing with a large code base last week that uses a hash with hundreds of keys as a means of passing data between functions. No one even bothers with cpan much.

You need a big stick for your devs. They aren't doing any any favors by programming crappy.
If a programmer writes code that is that bad in Perl, they will write code that is that bad in Python. They will write code that is that bad in C or in Ruby or in Haskell. No language will make programmers who don't care about good code to write good code.
Way to editorialize. The article includes tens of other categories, not just programming languages. For example, Android won the most coveted "Product of the Year" award.
In what way can a programming language be objectively better than another language? I thought they were tools for accomplishing specific goals? It's not like we hold competitions declaring hammers being better hammers than screwdrivers.
Which is better: a butter knife or a machete?

If you're cutting butter, than using a machete would be over-kill.

If you're cutting a large branch or stick, a butter knife might work but will take a lot longer.

It speaks about many other things, like best media player, best browser, and such...

And I am glad we won the media player category.

It gets a little convoluted when they are giving awards for 'Best Packaging System' and the nominees are: apt, aptitude and synaptic.
I have a hard time taking this too seriously because CVS ranked as the third best revision control system above bazaar and mercurial.
That was definitely a "WTF" moment when I saw that.

Are we in the Bizarro world? I know that Git vs. Mercurial is a bit like Vim vs. Emacs, but I can't see how any rational person could rank them on opposite sides of Subversion. If someone likes centralized over distributed, Subversion should beat both Git and Mercurial. If one likes distributed, both Git and Mercurial should beat Subversion.

This is the result of counting a bunch of votes, not a persons opinion, and as such I imagine it has more to do with overall popularity than anything more objective. See the results as number of content users each program has and it makes far more sense.
> If someone likes centralized over distributed, Subversion should beat both Git and Mercurial.

Personally I think you can do centralized better with Git and Mercurial then you can with Subversion. You just have to add some hooks to enforce it.

There are some unusual results here and it is because the results are swayed by topics and technologies that LinuxJournal cover, especially what they cover favorably.

ie. The results inevidably reflect the editorial opinion of LinuxJournal, since most of those who answer the survey are likely to source their information from the magazine.

As an example, take revision-control. The winner was git, but unusually CVS and subversion finished above bazaar and mercurial (and other more modern systems).

Google results:

CVS or subversion, number of articles in LJ, the past 12 months:

http://www.google.com/search?q=cvs+OR+subversion+site:linuxj...

9 results

Mercurial or Bazaar:

http://www.google.com/search?q=bazaar+OR+mercurial+site:linu...

0 results

Git had 18 articles.

Same with Python (143 results) and Ruby (32 results). Further the coverage of Python is extremely positive, with a number of feature articles - while for Ruby (no rating at all) there are no featured articles.

The results of this survey shouldn't be seen as a study of the best, or even the most popular technologies - since for all the categories that I checked, the results and order of results matched the number of times that product or technology had been covered in LinuxJournal.

Do you think the large gap between Python and Ruby on this is due to the Mac (I.e non-FOSS) bent that is in the Ruby community? It seems like Python guys are more OS neutral IMO.
Uncertain, I would love to find out. A good way to do it would be to use data from GitHub/BitKeeper/Google Code to find user platform and dev language (rather than using a survey).

I have had this in the back of my mind for a while now, initially I was going to survey these repos for some numbers on which open source licenses are being used the most - because I have a feeling that more and more code is being released under more liberal BSD/MIT/Apache style licenses over GPL.

Could also collect other interesting stats and publish the results. It would be awesome if GitHub or one of the others had an OKCupid style blog showing trends/stats. Even if they anonymize the data and hand it to somebody else to do (and get it from the others as well)

Actually if anybody wants to work on a weekend project to grep all these repos for some interesting stats, let me know.

There are some truth in your statement. But as for Ruby (and Rails), for those who bought the magazine would be greeted by a person's column (sorry I forgot his name, but he has a PhD I think) who always covered what the Ruby crowds are into (i.e. Ruby, Rails, plugins, jQuery, MongoDB, etc).
There is a strange feedback occurring. Magazines cover topics their readers are interested in while simultaneously affecting their readers' interests and preferences.
I'm more of a Ruby guy but it really feels to me lately that Python programmers have a much broader range of jobs to choose from. The Ruby web ecosystem seems healthier to me but just about everybody seems to equate Ruby with Rails. You can certainly do webdev in Python but also so much more.
I thought about this, too, but I see alot of these jobs with Python requirements being a one-way street, so to speak. A physicist or aerospace engineer might have more chances to work with Python in their jobs, but a good Python developer would have a hard time trying to get a job where the primary skillset requires a degree in Aerospace Engineering.

In general, most of the jobs in Python are side-effects of the field they're used in and not based on being a good Python developer.

I'm sure there are exceptions, but in my localized job searches, Python isn't seen as the primary skillset, merely a 'nice to have' one.

I've seen a lot of postings like this but I've also seen several lately where Python is the primary requirement. For example, I've seen several openings recently for people in the financial industry with no hard requirements beyond Python experience.
This is the real difference between Ruby and Python, in my experience too. You're more likely to find Ruby used by people who self-identify as programmers and more likely to find Python used by people who self-identify as some other job - but the amount of code each group writes is probably about the same.
"Your votes came down nearly exactly the same as last year, with C++ in second place" Well, that certainly makes the winner feel less honored... :-)
Some unusual results:

- 3rd best scripting language: Bash (who uses Bash for anything serious?)

- Best Linux-Friendly Web Hosting Company: GoDaddy.com (isn't GoDaddy's core business domain names?)

- 3rd best VCS: cvs (in front of Mercurial and Bazaar?)