Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming

Journal tomhudson's Journal: I have NEVER seen this before ... I am a-m-a-z-e-d ! 12

The backend stuff I'm maintaining/modifying is written in c and c++, uses classes and the stl, reads and writes directly to network sockets, maintains pools of threads, does a lot of database stuff, the whole shebang ...

I sat in on an interview yesterday ... a candidate to replace another c/c++ programmer on the same project who is leaving to work elsewhere on php code.

I didn't think it was possible to run across a serious c programmer who has never written any c++ code, never written any object-oriented code in any language, never used any, never studied OOP, never tinkered with it ... my mind boggles at the concept. Maybe I'm easily discombobulated ???

"Its just another paradigm of looking at code. I'll be able to pick it up un a few hours ..."

No final word yet as to whether this candidate is a "go" or not, but if so, it should prove to be "very interesting."

Any predictions? (You can probably guess mine ... :-0

This discussion has been archived. No new comments can be posted.

I have NEVER seen this before ... I am a-m-a-z-e-d !

Comments Filter:
  • It's not just another paradigm for looking at code, in my opinion. Or at least, that is only one part of it. Of course, C++ was originally just a preprocessor for C. C is only a step removed from assembler, though, and it really has little in the way of structure. If the structure that he's developed in his head over the years meshes with C++, then he might pick it up quickly. If not...

    On the other hand, if he's been working with any of the modern windowing systems, most of them have an implicit object
    • Of course, C++ was originally just a preprocessor for C

      You're sort of selling things short here.
      http://lambda-the-ultimate.org/node/2283 [lambda-the-ultimate.org] has a link to a lengthy Stroustrup retrospective you might enjoy.

      throw him into templates, and template metaprogramming, right away

      If the candidate knows math, then the semantics might be OK, for all C++ template syntax might as well be XML.
      typedef is certainly your friend for making templated code not suck.

    • We use templates very heavily. "My experience also suggests that it takes a couple of years of thinking about things in terms of objects before one can make full creative use of them."

      ... and before you know when to STOP the creaping "featuritis" in yur classes, etc. It really is a skill and an art.

  • I used to be amazed, but not any more. I've interviewed dozens of coders these last few years, and I've discovered some people keep learning, while others don't. Coders are typically the "keep learning" people, but not always.

    Lots of people want to work in a silo. They get up in the morning, go to work, strap on their blinders, do their job, take off their blinders, and go home at night to watch baseball and drink beer. Just trying to live an ordinary life. The internet thing? It's for shopping and

  • 6. C programming
    As the Web takes over, C languages are also becoming less relevant, according to Padveen. "C++ and C Sharp are still alive and kicking, but try to find a basic C-only programmer today, and you'll likely find a guy that's unemployed and/or training for a new skill," he says.

    http://www.computerworld.com/action/article.do?com mand=viewArticleBasic&articleId=9020942&pageNumber =3 [computerworld.com]

  • OOP is still a "new thing" to me, something that I've had to get used to as I work to learn Ruby.

    It's more than "just" a way to look at code, because it's a complete shift in paradigm. How data is handled changes drastically.

    Granted, I've never been a professional developer (and it's a real wonder that this candidate still is, given the directions that coding has taken in recent years). I can write code in Perl, I can write some basic C programs (it's not something I've done for YEARS), and I can read pro
    • I guess I should have also meantioned that this one is just a shade under 30 - so its not like this is an "old warhorse" who hasn't learned new ways. How can anyone not have picked up some OOP in this, the 21st century, is what's really amazing.

      • As someone closer to 40 than 30, I feel free to say that. Anyways, if he's under 30 it means that he's possibly still re-trainable (in the brain-washing sense as we're always able to learn new skills), and if he hasn't had much exposure to OOP then he clearly isn't the product of a CS degree, which again might be a benefit (again, I can get away with saying this because I have a CS degree and am hopefully months away from my Ph.D. in CS).

        • by Timex ( 11710 ) *
          I can't speak for the candidate that tomhudson spoke with, but I know that I don't have a CS degree... I have two AAS degrees, coupled with real-life-work-experience (for what it's worth). One AAS is in Electronics, the other in Computer Technology.

          The Computer Tech courses focused on hardware (such as it was) and operating systems (such as they were). I got it in 1994. Sure, there were some OOP languages out there (SmallTalk comes to mind), but C++ was really in its infancy. The only programming langu
  • I know a few people who managed to get out of school, especially in C and C++, without picking up any OOP...It's possible.

    Now, work with Java or C# or Ruby for a while, and still not have a good grasp of OOP? That would be pretty hard...Even if you're not creating your own objects, you still have to have a good sense of what they are and how to use them.

    For me, and this is just pure personal bias, if you never have to delve into OOP at least a little, then your code is bound to be beastly. I deal with a lot
  • Unless the guys in an amazing talent, picking up a concept like polymorphism isn't for the faint at heart, and takes time to grasp....
    • Re: (Score:3, Insightful)

      by tomhudson ( 43916 )

      It looks like we'll never find out ... the boss' perception is that the enthusiasm is missing (in addition to some core skills). You can always develop skills, but attitude ...

      There are 2 kinds of programmers - those who get into it because they're curious, and those who get into it because its a job, and it beats manual labour. If you're looking for someone to do run-of-the-mill code in a run-of-the-mill job, its easy to fill the slot with someone from the "its a job" group. Findng someone who's curious

"It's the best thing since professional golfers on 'ludes." -- Rick Obidiah

Working...