Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

The TIOBE index claims that the popularity of C++ is waning, and is currently way below C and Java. Echoing this claim, a blogger suggested today, that because C++ is going out of fashion, C++ programmers might be a bargain relative to other programmers.

As a C++ programmer, I don't want to be left behind, if the industry moves on to something else, and I certainly don't want to be a "bargain".

I've been programming in C++ for many years, and clunky as C++ may seem, in my current field (scientific/numeric programming), I just don't see any good alternatives, even though I've looked at dozens of languages. They seem to be either slow, less portable or even clunkier than C++.

So, my question is, are there reliable figures for the popularity of different languages, and C++ in particular, in the industry?

I'm skeptical that C++ is on its way out, because 75% of the qualified Google Code Jam entries were in C++ this year (This does not include the C entries)

share|improve this question
Only if Netcraft confirms it. –  FrustratedWithFormsDesigner Jul 18 '12 at 21:01
Why are you worried about the opinions of random blog writers, particularly when they don't even work in your sub-field? –  Charles E. Grant Jul 18 '12 at 22:17
the fact that people still use MUMPS to write new greenfield code in 2012 makes this question unanswerable by term terms and rules in the FAQ. I am pretty sure MUMPS programmers make better scratch than Java or C# programmers, given the lack of desire of sane people to want to write it if nothing else. –  Jarrod Roberson Jul 18 '12 at 22:18
Consider switching to Fortran. It rocks in your field, it is much more efficient than your clunky C++. And it is time proven, I bet it won't go away in the next 50 years. –  SK-logic Jul 19 '12 at 8:03
You say that in your current field, you just don't see any good alternatives. Are any of the not-good alternatives gaining any traction? If not, is it worth worrying about how many other fields are finding better alternatives for their purposes? –  Carson63000 Jul 20 '12 at 5:10
show 5 more comments

closed as not constructive by Oded, Jarrod Roberson, ChrisF Jul 18 '12 at 21:36

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

2 Answers

Your supposition is flawed. TIOBE is a worthless joke. I might as well just make up statistics on language usage. They'd probably be more accurate.

Second, many of the newer popular languages- they don't leave C++ behind. C++ left them behind. It's difficult to label something like Java or C# a "higher level language" when they can't even have free functions, or any of a dozen other things that C++ programmers take for granted. This means that if you go from C++ to something else, the overwhelming probability is that you will not be dealing with any new paradigms or significant new language features- you will be dealing with, effectively, C++ but less. (and some of the bigger annoyances like the preprocessor are cut, at least). This is a far easier transition than the other way around.

share|improve this answer
I concur. From TIOBE's site: "The ratings are based on the number of skilled engineers world-wide, courses and third party vendors [according to] the popular search engines Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu" (my emphasis). (They should have saved themselves time and used Google Fight instead.) –  kmote Jul 18 '12 at 21:31
"supposition"? I didn't claim that TIOBE was reliable. In fact, I asked for reliable industry statistics (which your "answer" didn't suggest) –  Solo Jul 18 '12 at 21:53
There are none and there never will be any. –  DeadMG Jul 18 '12 at 22:07
add comment

To answer your specific question: no, I don't think there are reliable figures for the popularity of different languages. And, even if somebody did a genuine, well-controlled survey (which TIOBE is not), it would not tell you what you actually want to know -- which is whether your current realm of expertise is in jeapordy of being squeezed out of the market.

If the kind of programming you enjoy, are good at, and are currently living off of is heavily represented at Google Code Jam, then that forum will be much more representative of and relevant to your particular concerns than a general numeric survey, anyway.

In fact, the graphs don't actually tell you much in an absolute sense -- even if you aren't skeptical of their methodology, you need more information:

  • are competitive languages/technologies rapidly cannibalizing market share on platforms you support?
  • are the platforms you work on rapidly being replaced by others? (e.g., do you think desktop operating systems are in immanent danger of being displaced by tablets?)
  • is your C++ expertise exclusively tied to one of the above? (i.e., even if you think desktops are moribund, it doesn't matter unless you also think your C++ experience will be unmarketable elsewhere)

Finally, the technological reality is that there still isn't an adequate replacement for C++ when engineering large-scale, high-performance applications. Does it really matter to you if large numbers of web developers migrate from Java and PHP to the latest and greatest rapid development platform?

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.