PRUDENT HIRING PRINCIPLE: Beware of C Hackers
can be found, together with RobertMartin
's rebuttal, here:
I learned C from the original K&R C book ISBN 0131101633
, and Software Tools in RATFOR, before C was popular. (Pascal version of "Software Tools" is ISBN 0201103427
The original philosophy of the C community was to write portable programs.
If unsafe pointer casts were "desirable," then why does Standard C++ bother with dynamic_cast<>, static_cast<>, and const_cast<>?
Yes, hackers prefer C, but using C does not make you a hacker.
I've done unsafe pointer coercion and other crazy things in PASCAL.
Unsafe pointer coercions have been common in VisualBasic
-- only the most highly respected "expert" VB programmers do them!!!
It's not as easy or convenient to manipulate pointers in other languages, but you can write bad programs in any language.
(C/C++ Hacker ;-)
I think the point of Meyer's statement about the C-orientation of hacking is not that hacking is only possible in C. Instead, I think his point is that C tends to be favored by hackers. In other words, if you're on the lookout for people who do CowboyCoding
, you're more likely to find it by looking for devotion to C hacking (and note Meyer's definitions about this subject). -- BrentNewhall
Nobody would be crazy enough to build a large system in C anymore. (Well, maybe the GNOME folks, but that's their problem.) However, it still excels at small, efficient tools that can be used in the UnixWay
. And despite the axes that so many who have big systems to sell you have to grind, the UnixWay
Nobody? How about the linux and bsd systems. How about mysql. How about apache. How about php, ruby, perl, and other large tools written with mostly C (sometimes including bits of C++).
Whatever you don't like about C, you shouldn't write anyone off because they think it is appropriate for certain jobs.
But you should be cautious to hire someone with main experience in C as lead-developer for a large scale java project (I am not joking, sadly...).
Right; you want someone with C++ experience. ;->
A large scale project shouldn't done in java anyway. Why would you when tools like Ruby and Python exist?
Because Java is better than both.
- At doing what? A screwdriver sucks at driving nails.
- coughchokesputterhack* No. No no no! Who gave you such a silly notion?
- Who gave you the silly notion that Ruby and Python are better?
- No one said here Ruby and Python were better. Someone did say Java was better. And that's what we should take exception to.
- Fork! No, spoon! Fork! Spoon! Fork! Spoon! ...etc...
(* sigh *) I remember when being a hacker was a good thing. -- BobBockholt
I feel I'm too new to this site to give myself the status of a person, but I still believe being a hacker is a good thing. I don't care what the news tries to tell me. I know what the term really means.
I think to most people here a hacker means a spaghetti coder more than a cracker/script kiddie/whatever the news suggest.
[Actually, hackers are usually known as rebels
like Paul Graham or Eric S Raymond. Hackers are known to avoid mainstream tools like your typical Microsoft ASP.NET (or your typical relational database, they use plain text files instead of databases just because they can
). Hackers are outcasts, but usually quite clever (not always really smart, just really clever).]
See HackerAttitude HackerDefinitions HackerPride