How to Recognize a Good Programmer 529
KDan writes to share an article he has written about what some of the key factors in recognizing a good programmer. "It's not as easy as it sounds. CV experience is only of limited use here, because great programmers don't always have the 'official' experience to demonstrate that they're great. In fact, a lot of that CV experience can be misleading. Yet there are a number of subtle cues that you can get, even from the CV, to figure out whether someone's a great programmer."
Google cache (Score:5, Informative)
Re:WTF is a CV? (Score:2, Informative)
Re:WTF is a CV? (Score:3, Informative)
Re:it's easier than you think: (Score:5, Informative)
Re:waste of time (Score:2, Informative)
And that's how I got my job.
Re:At least get a CS degree (Score:3, Informative)
A really big disadvantage with C++ is that it relies heavily on library packages which means that the code may be very hard to port between systems.
C is sufficient for most uses when it comes to low-level programming. The code is also a lot easier to read than C++ unless the programmer is really obscure about it. And if you plan to write device drivers for Linux you have to do it in C and not C++. (OK, you probably CAN, but you will probably end up doing more work managing the C++ interfacing and management than it's worth)
And NO! a CS degree will not prove that you are a really good programmer - it only proves that you were able to pass the minimum requirements to get that grade. Experience is worth a lot more than a degree. It is as important to learn yesterday's languages and their pitfalls as it is to learn modern languages - or you will repeat the same mistakes made by programmers in a different language. For being bashed as an unsuitable language experience in Basic is still not an disadvantage - but the experience must be to learn it's shortcomings and not only the language. C has it's shortcomings in that you can do whatever you like - but the pitfall is that you can code buffer overflows. However sometimes you WANT to do "unorthodox" things and then you have to resolve to C or assembly. With Cobol experience there is something new to learn - that the language is designed for business tasks. Here you may learn the Cobol way of defining data records. This is really useful whenever you want to code a package that is going to exchange data with a system written in Cobol. (Yes they still exists - and will probably still exist for several years or even decades to come...)