Despite having shown signs of decline, the C programming language family continues to hold some of the most popular languages. C continues to hold the top spot, followed by Java, then Objective-C, C++, and C#.
Out of these top five languages (according to TIOBE Index for this month), C++ is the only one that's seen a positive change.
As TIOBE.com says, "The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings. It is important to note that the TIOBE index is not about the best programming language or the language in which most lines of code have been written."
C++ has been around since 1983, and while it's still the fourth most popular language, its validity continues to be a contentious subject. From Slashdot:
Nerval's Lobster writes:
Perhaps the most famous rant against C++ came from none other than Linus Torvalds in 2007. "C++ is a horrible language," he wrote, for starters. "It's made more horrible by the fact that a lot of substandard programmers use it, to the point where it's much much easier to generate total and utter crap with it." He's not alone: A lot of developers dislike how much C++ can do "behind the scenes" with STL and Boost, leading to potential instability and inefficiency. And yet there's still demand for C++ out there. Over at Dice, Jeff Cogswell argues that C++ doesn't deserve the hatred. "I've witnessed a lot of 'over-engineering' in my life, wherein people would write reusable classes with several layers of inheritance, even though the reusable class wasn't actually used more than once," he wrote. "But I would argue that's the exception, not the norm; when done right, generic programming and other high-level aspects of C++ can provide enormous benefits." Was Linus going overboard?
This sparked a big discussion on the site. The top comment suggests the main problem with C++ is that it's too easy to write write-only code, and then everyone programs in different dialects, and has a hard time figuring out other people's code.
There are a lot of interesting points made throughout the discussion, so be sure to peruse that.