Slashdot Mirror


Survey Says C Dominated New '08 Open-Source Projects

svonkie writes "C overwhelmingly proved to be the most popular programming language for thousands of new open-source projects in 2008, reports The Register (UK). According to license tracker Black Duck Software, which monitors 180,000 projects on nearly 4,000 sites, almost half — 47 per cent — of new projects last year used C. 17,000 new open-source projects were created in total. Next in popularity after C came Java, with 28 per cent. In scripting, JavaScript came out on top with 20 per cent, followed by Perl with 18 per cent. PHP attracted just 11 per cent, and Ruby six per cent. The numbers are a surprise, as open-source PHP has proved popular as a web-site development language, while Ruby's been a hot topic for many."

30 of 378 comments (clear)

  1. c-derived languages? by Drantin · · Score: 4, Insightful

    Seeing as one of the projects mentioned with the most releases was in C#, is it lumping C,C++,C#, etc all under one label?

    --
    Actio personalis moritur cum persona. (Dead men don't sue)
    1. Re:c-derived languages? by daknapp · · Score: 5, Insightful

      Which it shouldn't, as C, C# and C++ seem pretty distinct.

      And what about Objective-C?

    2. Re:c-derived languages? by Anonymous Coward · · Score: 5, Insightful

      C is very popular for cross platform programs especially open source that don't rely on much platform specific code (c# is windows specific and c++ has some issues if you are not very careful).

      But yeah, c should not count for c++ and c#. Their syntax may be similiar but they are approached and programmed quite differently (their are other languages with similiar c syntax so but they are not lumped in).

    3. Re:c-derived languages? by iluvcapra · · Score: 4, Funny

      Open-source iPhone development?

      --
      Don't blame me, I voted for Baltar.
    4. Re:c-derived languages? by DragonWriter · · Score: 4, Informative

      I'd expect that the C family won because of Objective-C; there was a huge amount of iPhone development this year.

      I read TFA but don't have it open, ISTR that there only a small number of mobile projects, and a smaller number of those for the iPhone, on the order of 40, out of the thousands of new projects, so I don't think that Objective-C for the iPhone tipped the balance for the C family, even if they did count the C family as one unit.

    5. Re:c-derived languages? by drpimp · · Score: 4, Funny

      Now that's just being subjective!

      --
      -- Brought to you by Carl's JR
    6. Re:c-derived languages? by Goldberg's+Pants · · Score: 4, Funny

      Screw all the C variants. Where did Fortran place?

    7. Re:c-derived languages? by FishWithAHammer · · Score: 5, Informative

      c# is windows specific

      Wrong.

      --
      "You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
    8. Re:c-derived languages? by shaitand · · Score: 4, Insightful

      Technically no, practically yes. C# is .net specific and .net is windows specific. Mono is not 100% compatible.

    9. Re:c-derived languages? by Curien · · Score: 5, Funny

      Actually, C != C++ is undefined behavior.

      --
      It's always a long day... 86400 doesn't fit into a short.
    10. Re:c-derived languages? by jma05 · · Score: 4, Insightful

      > Technically no, practically yes. C# is .net specific and .net is windows specific. Mono is not 100% compatible.

      1. If (depending on version) Mono is not a perfect port of .NET, that makes .NET code using those bits, not cross-platform. That is not the same as windows specific. For instance, not every program written in Python will run on all platforms. Some of its' standard libraries are platform specific (Eg: msvcrt). But Python is considered cross-platform.

      2. C# IS cross-platform. AFAIK the compiler implementations behave identically. It's small portions of the standard library that are at fault.

      But nothing stops you from writing fully cross-platform code, if you must. Just a bit more effort.

      Personally, I gave up on C#. While C# is indeed better designed than Java, Groovy integrates with Java well and fills up any of the major feature and productivity gaps that I cared for anyway.

    11. Re:c-derived languages? by Dynedain · · Score: 4, Insightful

      You're getting funny mods, but you're more on target than you think. All the jailbreaking stuff for the iPhone is open-source, as are the package mangers you can install after jailbreaking, and most of the apps available through those package managers. It's a pretty big collection of stuff.

      --
      I'm out of my mind right now, but feel free to leave a message.....
    12. Re:c-derived languages? by chill · · Score: 4, Funny

      Where it belonged, behind Lisp!

      --
      Learning HOW to think is more important than learning WHAT to think.
    13. Re:c-derived languages? by keeboo · · Score: 4, Funny

      Replying my own - I would prefer to put it this way

      Is it cross-platform?

      Technically - Yes
      Practically - Yes
      Out-of-the-box - Not always.

      Huh?

      Well, while you're at it, why not making a more complete list:

      Technically - Yes
      Practically - Yes
      Out-of-the-box - Not always
      In principle - Yes
      Philosophically - Yes and No.
      Karmically - No
      Politically - Yes
      Hypothetically - In theory, yes

    14. Re:c-derived languages? by shaitand · · Score: 5, Informative

      'As for me, I don't discount any solution just because of who comes up with it, so I'm fine with .NET. To each his own.'

      *shrugs* We must agree to differ then. I prefer to learn from history. Historically speaking, there haven't been any useful Microsoft technologies that were or are completely interoperable, stable, relatively bugfree, and secure. Seeing as how they have released lots of technologies and solutions over the years they have had plenty of opportunities and have on numerous occasions even lied about the aforementioned things.

      Maybe .Net is/was/will be the exception. If so I'm not concerned, there are other solutions that DO meet the above criteria and work well. All in all, my track record of avoiding Microsoft solutions when something else will do will then have been the right choice about 99 out of hundred times and saved me thousands of dollars in license, support, and training costs. ;)

  2. no C++ by shaitand · · Score: 4, Interesting

    I'm surprised C++ didn't make the list.

    1. Re:no C++ by RedWizzard · · Score: 5, Informative

      I'm surprised C++ didn't make the list.

      It didn't make the list because apparently the authors think that C, C++, and C# are all the same language.

  3. Hrmmm. by inode_buddha · · Score: 5, Funny

    I can C clearly now...

    --
    C|N>K
    1. Re:Hrmmm. by ciaohound · · Score: 5, Funny

      ... the brain is gone.

      --
      Oh, yeah, it's not easy to pad these out to 120 characters.
  4. Black Duck Software? by ChienAndalu · · Score: 4, Informative

    Seriously, who ever heard of that company? Anyway, here is their actual press release, including a bogus list with 10 random apps I never heard of.

    And by the way, Python got 10%.

    1. Re:Black Duck Software? by jonaskoelker · · Score: 5, Insightful

      Anyway, here is their actual press release

      Thanks for that.

      Let's compare "here" with the summary. "Here":

      47% of these newly created projects used the C language. Java came in as the number two language of choice at nearly 28%. Third was Javascript at over 20%. In the world of scripting, nearly 18% of the projects chose to use Perl

      Summary:

      47 per cent â" of new projects last year used C. [...] Next in popularity after C came Java, with 28 per cent. In scripting, JavaScript came out on top with 20 per cent, followed by Perl with 18 per cent.

      I note that 47+28+20+18 > 100, so somewhere there's a move from one "percentage pie" to the next. I would like to know which language is in which pie, and more importantly why, and why there aren't numbers for one big pie with everyone in it. I'd also like to know why the summary (which is taken from the register) and the "here" seem to be ambiguous, when read together, about which pie javascript goes into.

      I don't think malice is a good explanation for all of this, so I'll assume incompetence. That goes well with the 98%-of-everything-is-crap law ;)

    2. Re:Black Duck Software? by talexb · · Score: 4, Informative

      From TFA: "Note, most projects used more than one language and these results are based on the number of projects using a given language, not the number of lines of code created."

      There, I fixed that for you. :)

  5. Re:Just because PHP is popular by DragonWriter · · Score: 4, Insightful

    PHP has been applied to many large scale development projects, demonstrating that you are incorrect.

    Well, no.

    "X has been used for Y" does not demonstrate that "X is suitable for Y".

  6. Re:Just because PHP is popular by shaitand · · Score: 4, Insightful

    'But at the same time, show me a large scale project done in PHP, and I'll show you a large scale project that would have been better off in Python.'

    With all do respect, I find that most worshipers at the altar of python feel the same way about anything that doesn't require C for the sake of performance.

    I realize you guys feel that code should LOOK pretty. But not everyone agrees that you need the language to mandate style and FUNCTIONALLY python is no more capable than Perl (example intentionally chosen to make pythonites cring). For most web projects, php is as capable as either.

    Besides, he claimed PHP was unsuitable for large projects not merely that there were better choices. PHP is suitable and demonstrably so. There are languages that aren't, like VB. There are no large projects primarily written in VB for this reason despite the fact that vb was extremely popular.

  7. Re:Just because PHP is popular by KermodeBear · · Score: 4, Interesting

    For the services that they provide...

    Wikipedia now has 200 application servers, 20 database servers and 70 servers dedicated to Squid cache servers. Reference

    I'd say that it is quite remarkable.

    --
    Love sees no species.
  8. An alternative list by sien · · Score: 4, Interesting

    Tiobe maintains a list that is updated every month that tells a different story.

    For January 2009, rounded; Java, 19%; C, 16%; C++, 10%; VB, 9%; PHP, 10%.

  9. C dominates new open source projects... by Lars512 · · Score: 4, Funny

    ...as measured by lines of code

    (ducks)

  10. Re:Just because PHP is popular by merreborn · · Score: 4, Insightful

    PHP has been applied to many large scale development projects, demonstrating that you are incorrect.

    Well, no.

    "X has been used for Y" does not demonstrate that "X is suitable for Y".

    Three of the world's top 10 websites are PHP-based. Wikipedia, and facebook, along with vast chunks of yahoo.

    I'm gonna go ahead and argue that "X has been successfully used for Y by 3 of the top 10 organizations in the Y industry" is pretty solid evidence that "X is fairly suitable for Y". In fact, I think you'd be hard pressed to demonstrate that "X is unsuitable for Y", given the level of success these sites continue to achieve.

    WP, Facebook, and Yahoo all have their business problems, but PHP is the least of them.

  11. Re:Apples and Oranges by weston · · Score: 4, Informative

    Why throw JavaScript in there? The rest are server-side languages, while JavaScript is client-side.

    Two reasons I can think of:

    1) An increasing amount of number of applications are being delivered via the web browser
    2) JavaScript increasingly lives a number of other places besides the browser. See Rhino, JScript.NET, Seed, and probably a few other places I'm not thinking of right now.

  12. 14,000+ new projects? by Pseudonym · · Score: 4, Funny

    What's the bet that most of the 7,000 new open source projects were GNOME bindings for "Hello World"?

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});