Please create an account to participate in the Slashdot moderation system


Forgot your password?
Programming PHP Python Ruby Stats News

2011's Fastest Growing Language: Objective-C 356

mikejuk writes "Every January, it is traditional to compare the state of programming language usage as indicated by the TIOBE index. So what's up and what's down this year? The top language is still Java, but it's slowly falling in the percentages. Objective-C experienced the most growth, followed by C# and C. JavaScript climbed back into the top 10, displacing Ruby. Python and PHP experienced the biggest drops. If you like outside runners, then cheer for Lua and R, which have just entered the top 20. However, I have to wonder why Logo is in the top 20 as well. I know programming education is becoming important, but Logo?"
This discussion has been archived. No new comments can be posted.

2011's Fastest Growing Language: Objective-C

Comments Filter:
  • Objective-C growth (Score:5, Interesting)

    by bonch ( 38532 ) * on Friday January 13, 2012 @05:32PM (#38691682)

    Objective-C's growth in popularity coincides with the Flurry Analytics study [] that showed most mobile developers targeting iOS, with support for Android dropping by a third over 2011. C# will probably continue to see increasing interest because of WinRT. Lua is unsurprising because of its popular use in games, and they just released 5.2 [] last December. What I find most interesting is that plain old C is set to overtake Java.

    Of course, if you don't take the Tiobe rankings seriously [], than all of this is moot, but I guess it's something to talk about on a Friday.

  • C# (Score:5, Interesting)

    by Anonymous Coward on Friday January 13, 2012 @05:35PM (#38691718)

    How is the real story not that C# is 3rd up from 6th!

  • Re:C# (Score:3, Interesting)

    by antitithenai ( 2552442 ) on Friday January 13, 2012 @05:37PM (#38691740)
    I suspect that both C# and Objective-C market share will only continue - probably even taking the top spots. Windows Phone 7 uses mainly C# and so will Metro apps on Windows 8. Frankly, it is a really good language and beautiful to work with. Likewise Objective-C is strong because of iOS and OS X. Java is slowly dropping from enterprise usage and is being replaced by C#.
  • Re:Objective C (Score:1, Interesting)

    by Anonymous Coward on Friday January 13, 2012 @05:44PM (#38691824)

    And on that note, it really shouldn't be called "Objective-C" but rather "Apple's bastardized take on Objective-C."

    Ever tried to port code written for Mac OS X to GNUstep? You'll rapidly discover that the Objective-C that GCC uses isn't the Objective-C that Apple pulled from their ass.

    Which stops being funny when you discover that Apple used GCC for their compiler (they've since replaced it with closed proprietary shit), and never bothered to contribute their version of Objective-C back.

  • Notes on the trends. (Score:5, Interesting)

    by Animats ( 122034 ) on Friday January 13, 2012 @05:50PM (#38691892) Homepage

    Interesting. Objective-C up (presumably because of iPhone usage), C# passes C++, and Python in a screaming dive.

    The languages that are on the way down suffer from mismanagement. The C++ committee went off into template la-la land years ago, focusing on features used by few and used well by fewer. Python had a "Perl 6" experience - von Rossum pushed the language to Python 3, which is only marginally better, no faster, and incompatible. That seems to have hurt the language's market share.

    The languages on the way up are rather similar. They're strongly and explicitly typed, compilable, memory-safe (mostly), and have garbage collection. That describes Java, C#, and Objective-C, and even Delphi. The only exception on the way up is Javascript, which has progressed from being an awful language to a pervasive although mediocre one. Javascript does have the advantage of fast implementations, unlike Perl and Python.

    These stats, of course, are based on what people are blithering about on blogs, not what's implemented in them.

  • Logo (Score:5, Interesting)

    by LateArthurDent ( 1403947 ) on Friday January 13, 2012 @05:57PM (#38691946)

    I've seen logo used a lot in multi-agent systems research. It just lends itself well to that, with every turtle being an agent.

  • Re:Interesting. (Score:2, Interesting)

    by Darinbob ( 1142669 ) on Friday January 13, 2012 @06:08PM (#38692096)

    Lua is probably the smallest and easiest language to integrate into a system and is extremely powerful for its size. While you can write full blown applications only in Lua it's real purpose is to be a subordinate add on to another program or system. A lot of people point to games when Lua is mentioned but there's nothing inherent about games in it. So you'll see this a lot more in embedded systems coming up I think. For example, unlike say Ruby or Python it doesn't come with a lot in the library but you can build your own customized to your own needs. No object oriented system but again you can create your own (from small efficient things to overblown monstrosities that make me think someone was missing the point). It's a relatively mature language as well.

  • by jd ( 1658 ) <imipak AT yahoo DOT com> on Friday January 13, 2012 @06:09PM (#38692100) Homepage Journal

    C didn't gain any ranks but it did gain in the ratings, so two exceptions. If I'm reading the long-term trends correctly, the more potent languages suffered some at the hands of Visual Basic but as VB has died they have recovered. C++ is doing very badly on the long-term trends - that's not merely a product of templates, it would seem to me that it indicates something more serious. Python's usage in the longer-term trends seems to have stabilized, along with a couple of other languages, with most having falling usage. To me, that suggests more hybridization at least in the fields (mostly teaching) that this survey covers - people aren't using one-size-fits-all languages as much, opting for limited use of languages in specialized areas.

  • by anyGould ( 1295481 ) on Friday January 13, 2012 @06:13PM (#38692138)

    You need to show a bunch of six-year-olds how to program in an hour? Here's LOGO. Here's your turtle. Type FWD 20, watch it move forward. Five minutes later, the kids know all the basic commands. Put a maze in front of them, let them figure it out. Congrats - they're programming with a computer.

    LOGO was my first programming language, back on an Apple II with a big honkin 5 1/4" floppy disk drive. It was the eye-opening "OMG these things do more than Oregon Trail?!?!?" moment.

  • Re:C# (Score:5, Interesting)

    by Bryan-10021 ( 223345 ) on Friday January 13, 2012 @06:14PM (#38692144)

    Java is slowly dropping from enterprise usage and is being replaced by C#.

    Really? Show me where C# is slowly replacing Java in the enterprise? On the server side Java has no competition. If C# is replacing Java then that would mean companies are also replacing UNIX with Windows as it's the only platform that supports C# (forget Mono). That's definitely not happening.

  • Re:The top 20 (Score:5, Interesting)

    by Hatta ( 162192 ) on Friday January 13, 2012 @06:22PM (#38692232) Journal

    Cheers for R! I didn't expect to see a statistical programming environment on this list, but I'm not surprised either. R is getting really big in bioinformatics, which is a burgeoning field right now. I used R myself more often in 2011 than in any previous year, and I'm sure I'll use it more this year. If you use Excel, especially if you use macros or VBscript, you should give R a look. Steeper learning curve, but far more powerful and rewarding.

  • Re:Objective C (Score:4, Interesting)

    by Xtravar ( 725372 ) on Friday January 13, 2012 @06:47PM (#38692518) Homepage Journal

    I have seriously considered using Objective-C for non-iProjects, because it is so pleasant to use. I used to be a huge C# fan, using it in Linux and Windows for everything. I can guarantee that non-Apple APIs and tools will arise because of its usage.

  • Encouraging. (Score:4, Interesting)

    by blind biker ( 1066130 ) on Friday January 13, 2012 @07:09PM (#38692780) Journal

    While I have not been doing any serious coding since quite a while, it's encouraging to see that the four programming language I learned many years ago, are still in this top 20 list, and have not changed position since last year: Java, C, Pascal and.. BASIC :)

    Wait, I forgot one: where's FORTRAN!?

  • by Smallpond ( 221300 ) on Friday January 13, 2012 @07:37PM (#38693028) Homepage Journal

    Let's compare it to the number of unanswered questions on for various language tags:

    c# 31971
    java 28099
    javascript 26978
    php 26755
    objective-c 11749
    python 9078
    c++ 8024
    ruby 5080

    C, Perl, Basic, Lisp, etc - none

  • Re:C# (Score:3, Interesting)

    by bertok ( 226922 ) on Friday January 13, 2012 @08:01PM (#38693280)

    If C# is replacing Java then that would mean companies are also replacing UNIX with Windows as it's the only platform that supports C# (forget Mono). That's definitely not happening.

    That is definitely happening! Maybe not where you are, but I'm a consultant that gets to see a wide range of corporations, and everywhere I go I see NetWare and UNIX getting replaced with Windows. It's cheaper than either of those options, and having a single OS family across all servers is a huge win for support and training costs.

    The days when you had to have a "big iron" UNIX box to be able to handle an enterprise application workload are over. You can get a Windows compatible server with more CPU cores than you can use for peanuts these days. There just aren't that many business problems that need more than ~256 CPU cores and 2 TB of memory. Keep in mind that a CPU core these days is about 10x faster than a CPU core used to be just a decade ago!

    The only area where Microsoft still hasn't won is in reliability, even though they have the technology to do so. Window supports hot patching, but no patch management system that I'm aware of actually applies the patches that way. Windows Server Core needs (supposedly) fewer patches, but still requires a reboot once a month in practice. The have cluster support, but still can't do active-active disks, except for some special cases like Hyper-V virtual disk storage. This is getting less important though as applications these days tend to use load-balanced clusters instead of a single highly reliable server.

  • Re:C# (Score:4, Interesting)

    by phantomfive ( 622387 ) on Friday January 13, 2012 @08:18PM (#38693422) Journal

    And C# is rising becaues of Windows Phone 7.

    Honestly I don't think C# is rising because of WP7. If you want to write software that runs on Windows only, C# is the best way to do it. Especially since in Visual Studio 2010, support for C++ has been waning (you can't use intellisense in C++ CLR environments, for example). My guess is that's why C# is rising, because of plain-old Windows Desktop.

  • Re:Objective C (Score:5, Interesting)

    by fyngyrz ( 762201 ) on Friday January 13, 2012 @08:56PM (#38693824) Homepage Journal

    I'm in the midst of a pretty large image processing project for OS X, and the UI "wrapper", which is minimal, is in ObjC, but everything else is in C, implemented as a library. So we barely code in ObjC at all.

    Seems to me that terms like "must" are being thrown around here without any real knowledge of the options available.

  • Re:Interesting. (Score:3, Interesting)

    by brendank310 ( 915634 ) on Friday January 13, 2012 @09:30PM (#38694122)
    As mentioned by someone above, Logo is being used in a lot of agent-based modeling research. One in particular came up time and time again in a seminar class I took on complex systems was NetLogo. Some poor economics PhD was working on modeling the relationship between groundwater depletion and policy approaches to curbing its overuse, and his simulations were taking weeks with something like 100 nodes. Too bad it isn't open source, might be fun to try to parallelize simulation runs.
  • Re:C# (Score:4, Interesting)

    by Anonymous Coward on Friday January 13, 2012 @09:46PM (#38694244)

    "I see NetWare and UNIX getting replaced with Windows. It's cheaper than either of those options"

    O rly?

    It's weird: I'm seeing Solaris and other Unices being replaced with Linux. Rock-stable solid and 100% free Linux distros btw.

    There are even entire *continents* now (cough, Europe, cough) where announcements are made that countries should favor open-source and free software over commercial OSes making $$$ fly to the U.S.

    Despite the fudged TCO studies sponsored by M$ and linked by astroturfing M$ shills here, lots of people deciding the IT budget are starting to realize that they do not have to pay the M$ tax.

    "The only area where Microsoft still hasn't won is in reliability" -- Add price, security and performances. And you may be on to something...

  • Logo (Score:4, Interesting)

    by Progman3K ( 515744 ) on Saturday January 14, 2012 @12:26AM (#38695072)

    People forget that Logo is not only about the turtle-animation and drawing.

    It is parent to Lisp and has list-processing primitives that make it quite good at processing streams of information.

    Its actually a lot like Java; procedures can dynamically generate procedures as they run.

    Its syntax is so simple, a child can learn it but you can easily program recursive algorithms with it.

    I say all this from experience. My very first programming job, I was an apprentice at a place that did the books and business-accounting of about 30 client companies, all in Logo.

    This Logo was running on a micro and we had 8 terminals hooked up to it. This logo had NO turtle, it was text-only. (M.I.T. Experimental Logo #53 or something like that)

"Atomic batteries to power, turbines to speed." -- Robin, The Boy Wonder