2011's Fastest Growing Language: Objective-C
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?"
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.
How is the real story not that C# is 3rd up from 6th!
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.
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.
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.
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.
Give me Classic Slashdot or give me death!
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.
I've fallen off your lawn, and I can't get up.