> It's hard to imagine someone doing well at courses like algorithms, statistics, and compilers, and not being a decent programmer too.
Sure, but are those who did poorly in those classes less likely to be good programmers?
I aim for slightly over a 2.0. I limit myself from going lower because that puts me on probation, which does irritating things like prevent me from being on paper as a club officer (I'm unofficially the president of our LUG for this upcoming year). I don't aim for higher grades because I find that the amount of work required is on an exponential order - the difference between a D and a C is far less than a B and an A. Doing fewer assignments gives me time to work on all sorts of projects that there aren't any classes for. As a result, I've got a basic understanding of quite a few different things, enough to realize if one of them is a good solution for a problem.
But that's what I am - the guy who knows a little about a lot. My role in a recent team project was essentially that of technical advisor: when my teammates weren't sure of how to approach a problem, they came to me for suggestions.
Now, will this bite me in the butt later? Quite possibly.
Edit: I suppose my question is this: would you rather hire someone with a good GPA but little programming experience outside of school, or someone with a rather poor GPA but contributions to open-source (with code quality being roughly what you would expect in order to achieve the first candidate's GPA)?
Sure, but are those who did poorly in those classes less likely to be good programmers?
I aim for slightly over a 2.0. I limit myself from going lower because that puts me on probation, which does irritating things like prevent me from being on paper as a club officer (I'm unofficially the president of our LUG for this upcoming year). I don't aim for higher grades because I find that the amount of work required is on an exponential order - the difference between a D and a C is far less than a B and an A. Doing fewer assignments gives me time to work on all sorts of projects that there aren't any classes for. As a result, I've got a basic understanding of quite a few different things, enough to realize if one of them is a good solution for a problem.
But that's what I am - the guy who knows a little about a lot. My role in a recent team project was essentially that of technical advisor: when my teammates weren't sure of how to approach a problem, they came to me for suggestions.
Now, will this bite me in the butt later? Quite possibly.
Edit: I suppose my question is this: would you rather hire someone with a good GPA but little programming experience outside of school, or someone with a rather poor GPA but contributions to open-source (with code quality being roughly what you would expect in order to achieve the first candidate's GPA)?