Home > C++ > 21st Century Assembler

21st Century Assembler

I love working in the malleable medium of C++, but I wonder if it is becoming, or has already become, the “assembly language” of the 21st century – powerful and fast, but hard to learn and easy to make hard-to-diagnose mistakes. I recently stumbled upon this 5 year old interview with C++ creator Bjarne Stroustrup. The interviewer opened with:

Mr. Stroustrup, the honest soul that he is, essentially validated the opening, but with a trailing caveat:

C++ has indeed become too “expert friendly” at a time where the degree of effective formal education of the average software developer has declined. – Bjarne Stroustrup

Since “experts” tend to be more narrow minded than the average Joe, they tend to look down upon newbies and non-experts in their area of expertise. And so it is with many a C++ programmer towards new age programmers who side step C++ for one of the newer, easier to learn, specialized programming languages. In the classic tit-for-tat response, new age programmers belittle C++ users as old timers that are out of touch with the 21st century and still clinging to the horse driven carriage in the era of the lamborghini.

So, who’s “right“? And if you do share your opinion with me, what language do you work with daily?

  1. Pneumiller
    April 6, 2011 at 11:19 am

    The main advantage of C++ is that it *does* give you enough rope to hang yourelf in a variety of ways; including OOP, generic programming, functional programming and good old low level C programming ways. It’s the most flexible language ever created IMHO. The “safer” languages all have limitations, but are probably just fine for MIS/IT/IS types of apps and they work well for Ajax/Web based programming.

    I think people doing embedded stuff will be using C and C++ for quite some time. My preferred environement is compiled Matlab with C++ Mex extensions. That just makes me incredibly efficient as a System Engineer (with a long history of being a pure Software Engineer).

  2. Anonymous
    June 17, 2011 at 3:14 am

    It’s not about technology, its about cost. If it is easier to learn, and has few facilities for expertise, then there will be more programmers who don’t require as much training. I wonder what the pay range for experienced VB .Net developer is versus the experienced C developer.

    • June 17, 2011 at 3:34 am

      I think that salaries may be higher for C than VB.Net because the app domains (real-time, embedded, OS) in which VB.Net is not applicable demand deeper technical expertise.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: