Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. [Curiosity] What does the "average" C++ developer work on?

[Curiosity] What does the "average" C++ developer work on?

Scheduled Pinned Locked Moved The Lounge
c++comgraphicsgame-devquestion
59 Posts 32 Posters 11 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Mechanical

    That is correct. And a time will come when the "tools" will become so easy that anyone with a diploma will be able to write applications. You will no longer be required to study all the 'boring' details. Just get a diploma in a language and start cranking out code... like a monkey. It is happening right now.

    NULL

    K Offline
    K Offline
    Kevin McFarlane
    wrote on last edited by
    #17

    Mechanical wrote:

    And a time will come when the "tools" will become so easy

    Well, if you take .NET it doesn't seem to be getting easier but more complex. The languages raise their abstraction but then the complexity shifts to the frameworks and techniques. And then you get the ever merciless tyranny of version-itis. E.g., "must have six months commercial experience of Silverlight 4." "Done 2 years of Silverlight 3? Tough. We consider you to have zero experience." Speaks a cynical unemployed programmer. :(

    Kevin

    M 1 Reply Last reply
    0
    • S Super Lloyd

      All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

      A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

      D Offline
      D Offline
      Dave Parker
      wrote on last edited by
      #18

      I loved coding in C++ prior to getting a job, I guess because it was fun to work so close to the metal, allowed for heavy optimization and there were lots of nice tricks that could be achieved with things like macros and templates. Out in the real world though I've never come across a C/C++ job, and for over 95% of the projects I've worked on (for money) C++ would have been a worse choice than C#/.NET. It's usually faster to write something in .NET and I don't see any real benefit to spending longer writing common run-of-the-mill applications in C++, even if it was to use some framework such as MFC. My guess is the main reason to use it would be for low level device drivers. And possibly games - I'm not an expert in the pros/cons of writing a game using C++ and DirectX versus XNA framework, but I still think C++ would be a good choice for games anyway.

      R 1 Reply Last reply
      0
      • S Super Lloyd

        All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

        A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

        N Offline
        N Offline
        Nemanja Trifunovic
        wrote on last edited by
        #19

        Super Lloyd wrote:

        So I wonder what does this strange beast do for a living?

        Look at the job descriptions for C++ coders at any job site, or job postings of big software companies like Microsoft, Adobe or AutoDesk and you'll get a pretty good idea. Anyway, i don't know why you think C++ develpers are rare and strange creatures. Pretty much all the software you run on your computer is written in either C or C++.

        utf8-cpp

        K 1 Reply Last reply
        0
        • K Kevin McFarlane

          Mechanical wrote:

          And a time will come when the "tools" will become so easy

          Well, if you take .NET it doesn't seem to be getting easier but more complex. The languages raise their abstraction but then the complexity shifts to the frameworks and techniques. And then you get the ever merciless tyranny of version-itis. E.g., "must have six months commercial experience of Silverlight 4." "Done 2 years of Silverlight 3? Tough. We consider you to have zero experience." Speaks a cynical unemployed programmer. :(

          Kevin

          M Offline
          M Offline
          Mechanical
          wrote on last edited by
          #20

          By requiring years of experience, they can dictate what they are going to pay you. And most importantly the majority of applicants are kids who can barely write a 'Hello World' program. Talent is not so common these days and when a manager finds someone with talent, he tries to demean the person and assaults his experience and questions it. The Real ProgrammerTM fails while someone with a fast tongue gets the job.

          NULL

          K A 2 Replies Last reply
          0
          • S Super Lloyd

            All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

            A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

            L Offline
            L Offline
            Leslie Sanford
            wrote on last edited by
            #21

            Super Lloyd wrote:

            So I wonder what does this strange beast do for a living?

            I wrote these VST plugins[^] in C++. FWIW.

            1 Reply Last reply
            0
            • R realJSOP

              CListCtrl

              .45 ACP - because shooting twice is just silly
              -----
              "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
              -----
              "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

              P Offline
              P Offline
              peterchen
              wrote on last edited by
              #22

              :thumbsup: Though it's more of LVItem for me.

              Agh! Reality! My Archnemesis![^]
              | FoldWithUs! | sighist | µLaunch - program launcher for server core and hyper-v server.

              1 Reply Last reply
              0
              • S Super Lloyd

                All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

                A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                P Offline
                P Offline
                PIEBALDconsult
                wrote on last edited by
                #23

                "Average" C++ developers can no longer find employment -- you need to be a "rock-star" C++ developer nowadays. :cool:

                D 1 Reply Last reply
                0
                • M Mechanical

                  By requiring years of experience, they can dictate what they are going to pay you. And most importantly the majority of applicants are kids who can barely write a 'Hello World' program. Talent is not so common these days and when a manager finds someone with talent, he tries to demean the person and assaults his experience and questions it. The Real ProgrammerTM fails while someone with a fast tongue gets the job.

                  NULL

                  K Offline
                  K Offline
                  Kevin McFarlane
                  wrote on last edited by
                  #24

                  Mechanical wrote:

                  By requiring years of experience, they can dictate what they are going to pay you.

                  No, by requiring years of experience they can dictate whether they are even going to hire you at all.

                  Mechanical wrote:

                  The Real ProgrammerTM fails while someone with a fast tongue gets the job.

                  Maybe that's why I'm unemployed? :laugh:

                  Kevin

                  1 Reply Last reply
                  0
                  • N Nemanja Trifunovic

                    Super Lloyd wrote:

                    So I wonder what does this strange beast do for a living?

                    Look at the job descriptions for C++ coders at any job site, or job postings of big software companies like Microsoft, Adobe or AutoDesk and you'll get a pretty good idea. Anyway, i don't know why you think C++ develpers are rare and strange creatures. Pretty much all the software you run on your computer is written in either C or C++.

                    utf8-cpp

                    K Offline
                    K Offline
                    Kevin McFarlane
                    wrote on last edited by
                    #25

                    Nemanja Trifunovic wrote:

                    Pretty much all the software you run on your computer is written in either C or C++

                    ...including of course the higher level languages and runtimes that are currently in more demand than C++. :) C++ will always have a niche for certain problem domains. It covers the areas where "if you can't do it in anything else, you can do it in C++."

                    Kevin

                    1 Reply Last reply
                    0
                    • S Super Lloyd

                      All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

                      A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                      R Offline
                      R Offline
                      Robert Surtees
                      wrote on last edited by
                      #26

                      C, not C++. I work on an automated material handling system. On one end it controls conveyors, scanners, PLCs, stacker cranes, sortation systems and the occasional blinking light. On the other, user applications that allow receipt, selection and delivery of goods, stock inspection and workflow planning.

                      1 Reply Last reply
                      0
                      • P PIEBALDconsult

                        "Average" C++ developers can no longer find employment -- you need to be a "rock-star" C++ developer nowadays. :cool:

                        D Offline
                        D Offline
                        Dan Mos
                        wrote on last edited by
                        #27

                        :thumbsup: that's also true for C#. One would have to be a RUMOROUS C# developer. :)

                        1 Reply Last reply
                        0
                        • M Mechanical

                          peterchen wrote:

                          so that the C# kids can do their magic

                          These days kids think that bringing data from a Database makes them "Programmers". And using an ActiveX control to do all the work makes them Magicians. A few years ago, displaying data wasn't "Programming". Now we have PHP Programmmers, ASP.NET Programmers, Javascript Programmers, Flash Programmers, Silverlight Wizards,...

                          NULL

                          P Offline
                          P Offline
                          peterchen
                          wrote on last edited by
                          #28

                          This is not your first post praising C++ over other languages. Where does this attitude of superiority code from? Harder is better? I work with a compiler, an IDE, a source control system on an OS running on millions of transistors I couldn't build myself. Maybe I could one of these myself if I would spend a significant part of my life on it - but what would be gained? I do have a measure of better: Solving problems "they" can't solve. I do believe that is one of C++' strengths still. But it's not an accident that in C# displaying database results is easy: It's easy because these are the problems requiring a solution. In the end it's not the language. It's the programmers. The fundamental weakness of C++ is it's complexity and long learning curve before you can checkin non-pair-programmed non-test-driven non-code-reviewed production code. That means there won't be enough C++ programmers at all. (and the reason I am not afraid of my pension...)

                          Agh! Reality! My Archnemesis![^]
                          | FoldWithUs! | sighist | µLaunch - program launcher for server core and hyper-v server.

                          M 1 Reply Last reply
                          0
                          • P peterchen

                            This is not your first post praising C++ over other languages. Where does this attitude of superiority code from? Harder is better? I work with a compiler, an IDE, a source control system on an OS running on millions of transistors I couldn't build myself. Maybe I could one of these myself if I would spend a significant part of my life on it - but what would be gained? I do have a measure of better: Solving problems "they" can't solve. I do believe that is one of C++' strengths still. But it's not an accident that in C# displaying database results is easy: It's easy because these are the problems requiring a solution. In the end it's not the language. It's the programmers. The fundamental weakness of C++ is it's complexity and long learning curve before you can checkin non-pair-programmed non-test-driven non-code-reviewed production code. That means there won't be enough C++ programmers at all. (and the reason I am not afraid of my pension...)

                            Agh! Reality! My Archnemesis![^]
                            | FoldWithUs! | sighist | µLaunch - program launcher for server core and hyper-v server.

                            M Offline
                            M Offline
                            Mechanical
                            wrote on last edited by
                            #29

                            peterchen wrote:

                            Where does this attitude of superiority code from?

                            I have no feeling of superiority. I am, however, sick of correcting and sometimes rewriting kids' code written in PHP, ASP, Flash, Javascript and I have seen that kids these days cannot code (or at least the ones I worked with).

                            peterchen wrote:

                            In the end it's not the language. It's the programmers. The fundamental weakness of C++ is it's complexity and long learning curve before you can checkin non-pair-programmed non-test-driven non-code-reviewed production code. That means there won't be enough C++ programmers at all.

                            Totally agree.

                            NULL

                            1 Reply Last reply
                            0
                            • S Super Lloyd

                              All in the title.. Never worked with MFC, read a book about it in 1998, tried it and couldn't get into it. Peruse a few C++ book, never found them that appealing. I did write a Uniscribe wrapper in ManagedC++, an ObjectiveC/GNUstep wrapper in ManagedC++ and some OpenGL setup code in C (tapped in with interop), that's about it for my native / C development. Neither did I work with C++ developers. So I wonder what does this strange beast do for a living?

                              A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                              A Offline
                              A Offline
                              Anna Jayne Metcalfe
                              wrote on last edited by
                              #30

                              Diplomatic answer: I'd suggest "average" is a meaningless concept in as diverse a profession as software development, and doubly so among developers using a language like C++. Honest answer: Quite frankly average implies, well, crap,* and that's not at all ideal, really. * That might be in part because I'm just coming down from #accu2010[^], which always reminds me what "Advanced" or "Expert" can really mean. Most of us have a long, long way to go to reach that level.

                              Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                              S 1 Reply Last reply
                              0
                              • M Mechanical

                                By requiring years of experience, they can dictate what they are going to pay you. And most importantly the majority of applicants are kids who can barely write a 'Hello World' program. Talent is not so common these days and when a manager finds someone with talent, he tries to demean the person and assaults his experience and questions it. The Real ProgrammerTM fails while someone with a fast tongue gets the job.

                                NULL

                                A Offline
                                A Offline
                                AspDotNetDev
                                wrote on last edited by
                                #31

                                Mechanical wrote:

                                someone with a fast tongue gets the job

                                Only if your prospective boss is a woman.

                                [Forum Guidelines]

                                F 1 Reply Last reply
                                0
                                • A Anna Jayne Metcalfe

                                  Diplomatic answer: I'd suggest "average" is a meaningless concept in as diverse a profession as software development, and doubly so among developers using a language like C++. Honest answer: Quite frankly average implies, well, crap,* and that's not at all ideal, really. * That might be in part because I'm just coming down from #accu2010[^], which always reminds me what "Advanced" or "Expert" can really mean. Most of us have a long, long way to go to reach that level.

                                  Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                                  S Offline
                                  S Offline
                                  Super Lloyd
                                  wrote on last edited by
                                  #32

                                  A bit touchy, are you?! ;) For the sake of your understanding, in this case, average means those who are NOT working on OS development or other marginal but necessary task that are most likely going to be a mixture of ASM, C, C++

                                  A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                  A 2 Replies Last reply
                                  0
                                  • S Super Lloyd

                                    A bit touchy, are you?! ;) For the sake of your understanding, in this case, average means those who are NOT working on OS development or other marginal but necessary task that are most likely going to be a mixture of ASM, C, C++

                                    A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                    A Offline
                                    A Offline
                                    Anna Jayne Metcalfe
                                    wrote on last edited by
                                    #33

                                    Not at all. Buzzing, in fact. :) My reference is merely to the fact that if you spend any time out there learning outside of the typical environments most of us only get a chance to experience, you very quickly realise that the "average" bar is pretty damn low. In an average environment, the devs don't even begin to fulfill their true potential because of corporate intertia, lack of awareness that "there may be a better way" and so on. The result is one we're all familiar with: far too much untestable, bug ridden, crappy code, and devs who are terrified of merging changes, let alone refactoring to patterns or learning how to use the Standard Library properly. It's a human problem rather than a technical one, which means far too many devs (and their managers, and the organisations employing both) run away from it. Those who do try to effect change to improve things are frequently shouted down or ignored. But then, having spent a week hanging around with leading developers at the Conference my perspective is somewhat different from the days before I started going and thought MFC was a good idea...

                                    Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                                    1 Reply Last reply
                                    0
                                    • S Super Lloyd

                                      A bit touchy, are you?! ;) For the sake of your understanding, in this case, average means those who are NOT working on OS development or other marginal but necessary task that are most likely going to be a mixture of ASM, C, C++

                                      A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                      A Offline
                                      A Offline
                                      Anna Jayne Metcalfe
                                      wrote on last edited by
                                      #34

                                      Not at all. Buzzing, in fact. :) I did write a long reply to this, but lost it. :doh: However, the gist was that if you get out there and learn from those who get the time to actually figure out what really works in our industry (reading lots of tech books is a start), you're well above average. Quite soon you'll realise that the "average" bar is set very low indeed. Most devs rarely learn anything they aren't told to, and that's just tragic. The result is crappy, untestable code, poorly designed UIs and a strong resistance to organisational change. Quite frankly the contents of a copy of "Modern C++" would terrify many of them. Templates? Well designed interfaces and APIs? Design by contract? Fat chance. I've been there, and I'm sure that in the past I've been as much part of the problem as anyone. Fortunately, we all have a choice, and I've chosen to actively work to change that. :rose: So, do you still want to do what "average" folks do, or do you want to do what exceptional folks do? It's what you make of it, not what you work on.

                                      Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                                      S 2 Replies Last reply
                                      0
                                      • A Anna Jayne Metcalfe

                                        Not at all. Buzzing, in fact. :) I did write a long reply to this, but lost it. :doh: However, the gist was that if you get out there and learn from those who get the time to actually figure out what really works in our industry (reading lots of tech books is a start), you're well above average. Quite soon you'll realise that the "average" bar is set very low indeed. Most devs rarely learn anything they aren't told to, and that's just tragic. The result is crappy, untestable code, poorly designed UIs and a strong resistance to organisational change. Quite frankly the contents of a copy of "Modern C++" would terrify many of them. Templates? Well designed interfaces and APIs? Design by contract? Fat chance. I've been there, and I'm sure that in the past I've been as much part of the problem as anyone. Fortunately, we all have a choice, and I've chosen to actively work to change that. :rose: So, do you still want to do what "average" folks do, or do you want to do what exceptional folks do? It's what you make of it, not what you work on.

                                        Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                                        S Offline
                                        S Offline
                                        Super Lloyd
                                        wrote on last edited by
                                        #35

                                        I guess I could simply look at Seek[^] to answer my own question! I am not really looking at excellence ... but just at the job market and if it was worth it.. Recently I stumbled upon a C++ article and I wondered, should I have a new go at C++? Would it help me find a job or do a "better" job at what I'm doing now.. (mostly C#/WPF/Silverlight/WCF dev)(as in same development productivity but more performant code) and as I am thinking that it would be just a bad idea to do what I do in C++ I am looking for proud C++ developer who can tell me why working in C++ was the best thing that happen to them! Incidentally that will give me an idea of what new opportunity C++ experience can open to me!

                                        A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                        A 1 Reply Last reply
                                        0
                                        • A Anna Jayne Metcalfe

                                          Not at all. Buzzing, in fact. :) I did write a long reply to this, but lost it. :doh: However, the gist was that if you get out there and learn from those who get the time to actually figure out what really works in our industry (reading lots of tech books is a start), you're well above average. Quite soon you'll realise that the "average" bar is set very low indeed. Most devs rarely learn anything they aren't told to, and that's just tragic. The result is crappy, untestable code, poorly designed UIs and a strong resistance to organisational change. Quite frankly the contents of a copy of "Modern C++" would terrify many of them. Templates? Well designed interfaces and APIs? Design by contract? Fat chance. I've been there, and I'm sure that in the past I've been as much part of the problem as anyone. Fortunately, we all have a choice, and I've chosen to actively work to change that. :rose: So, do you still want to do what "average" folks do, or do you want to do what exceptional folks do? It's what you make of it, not what you work on.

                                          Anna :rose: Tech Blog | Visual Lint "Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"

                                          S Offline
                                          S Offline
                                          Super Lloyd
                                          wrote on last edited by
                                          #36

                                          Also.. I had a few poke at C++ many times in the past but it did not fit my idea of fun, which requires to be able to spin a nice GUI on top of whatever mad algorithm I'm playing with.

                                          A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                          A 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups