Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So from the open req page:

You know C/C++ like the back of your hand.

So are they looking for C OR C++ programmers, either may apply? or are they looking for strong understanding of the nuances of both C and C++?

I encounter a lot of "C/C++" on resumes and after interviewing a lot of folks, I've grown a distaste for this joined tag. The problem is that when I see "C/C++", I never know until I interview a candidate whether the intent is that "C/C++" is...

1) Shorthand for I program C and I program C++ (I know both well)

2) I program C with classes. I don't really know OOP, but I fake it with big class buckets.

3) I program in C++ and know OOP well, but I would get lost in the strict procedural world of C.

If you don't get where I'm coming from, I've programmed in both for many years, and I will simply say that "C and C++ are two paradigms separated by a common language."



This is a great point. In this case, we mean C or C++, as long as you know your language of choice well.


... is your software written in both? Or you just figure if you can do one you can learn the other?


I won't speak for Slava, but I think generally the idea is that knowing either one well enough implies a certain amount of knowledge about computer guts, which in turn implies that it shouldn't be too hard for you to learn the other.

Technically it's in C++, though, if that helps.


Plus it's not entirely unheard of to do the core of the application in C, and offer a C++ API to users. There is a good reason to have both expertise inhouse.


Well, the MySQL API is C++...so....


It says "C API" in their own manual:

http://dev.mysql.com/doc/refman/5.0/en/c.html

Or did you mean rethinkdb's mysql API?


The plugin engine API is C++. They export a C client API, along with many other client APIs.

EDIT: I just reread the above, and should mention that I didn't mean it to be snarky at all. Sorry.


I find the best programmers know C, C++, C#, and Objective-C. They know the pros and pitfalls of each language:

  1) Procedural vs OO
  2) Manual vs automatic memory management
  3) Naked pointers vs smart pointers vs garbage collection vs reference counting
  4) Method calling vs message passing
  5) C libraries vs C++ libraries vs .NET frameworks vs Cocoa frameworks
  6) Zero runtime vs thin runtime vs rich runtime


there's also "c++ as a better c", although i guess that is dying out as c99 becomes more common.


C99 fixes some papercuts, but C++'s syntactic sugar still makes object oriented stuff nicer, which frankly is what most people are doing anyway.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: