

In Which I Defend the C Standard for Interviews - gecko
http://thoughts.rockhymas.com/post/4580899270/in-which-i-defend-the-c-standard-for-interviews

======
IgorPartola
I would look instead to for candidates that know many languages. C is really
useful at understanding the underlying concepts (so is ASM for what its
worth), but knowing Python or Perl is great too. Java would be a nice addition
too as a" classical OOP" language. Then add a functional language of choice
and you have a well-rounded dev.

------
trustfundbaby
I don't really get this C Standard infatuation all of a sudden ... do what
works for you.

However, from the listing of languages used at their firm ... I would have
thought that they'd be testing candidates more in C# and .NET since that's
what they seem to mostly use ... and then also throw stuff in some of the
other languages their way to see how the candidates cope ... but thats just
me.

~~~
IgorPartola
One case I can make for understanding C without using it is that many (most?)
language implementations are written in C. CPython is written in C. PHP is
written in C. JavaScript is written in C. Thus understanding what id(my_obj)
does in CPython may be important. It allows you to reason about what is fast
and what is slow.

But you are right. The original article talked about understanding _pointers_
, not the language and how that got transformed into understanding the
language and how that intimidates people. You don't need to know the C syntax
to understand pointers. Some programmers probably don't understand them now,
and are able to get the job done, but there is nothing inherently difficult
about them.

OTOH, after I learned what pointers were (funny enough from Straustup's book
on _C++_ ), I have seen some really confusing ways to explain them. Instead,
just talk about registers and memory, no drawing random boxes and pointing to
the box or the number in the box.

