On 17 Nov 2006 21:25:35 -0800, Bob_Langelaan wrote:
>I have been teaching C++ at a local polytechnical school here in
>Vancouver, Canada for approximately 8 years. Six years ago, at the
>height (or should I say volume?) of the internet bubble, I had 80+
>students per semester in my C++ course. Now I am fortunate to have 15
>students per semester. What has changed? I believe that students are
>no longer interested in learning C++.
>
>I do believe that C++ is more difficult to learn than many of these
>other languages.
IMO, that's the main reason. C++ is unnecessarily and unproductively,
sometimes even ridiculously complex (see e.g.
http://www.bookpool.com/ct/98031). There has been no effort in the
last 10 or so years to make it easier and more accessible. Quite the
contrary, an influential group of people even tries to 'boost' C++ by
continuously introducing yet another level of complexity.
>Despite my best efforts to make them exciting, I see
>the eyes of my students start to glaze over when I start explaining
>pointers.
>But
>these concepts need to be taught in a responsible C++ course. As was
>pointed out to me recently, Microsoft still requires applicants to
>demonstrate a very good knowledge of string manipulation using C-style
>strings (none of these fancy string class objects!) when recruiting C++
>programmers.
C++ is a highly fragmented language. When C++ is discussed one must
always ask: Which C++? Visual C++ (MFC), Embedded C++, Qt C++, C with
classes (the most popular C++), Boost C++, Addison Wesley C++, Game
Programmer C++, ...? This confusing fragmentation is sometimes
reinterpreted as advantage and C++ is touted as 'multiparadigm'
language.
>The ironic part is there is still a large demand for C++ developers
>here in Vancouver. I have talked to several companies here in Vancouver who
>are complaining that they are having difficulty finding C++ developers
>and are looking at trying to recruit from abroad (eastern Europe
>primarily).
There is still demand for C++ developers but currently there is higher
demand for developers in other languages, esp. Java (until the bubble
bursts again).
>I believe that many of these companies will be forced to migrate away
>from C++ in the near future, simply because they will not be able to
>find C++ programmers in the future. Soon the baby boomer C++
>programmers will begin to retire, then the proverbial @@@@ will really
>start to hit the fan!
AFAIK, you can program games today in any language, preferably C#.
The real solution would be C++2, a new version of the C++ language
(not an extension of the current language). I should avoid the
numerous traps, pitfalls and wrong defaults of the current language.
C++2 could be compatible with (but not a superset of) current C and
C++ (through a compatibility mode). Of course, that's a futile
proposal. That kind of language evolution happens in Python, Ruby,
PHP, ... but not in C++.
Best regards,
Roland Pibinger