On 07/29/2011, at 12:22 AM, Bill Dueber wrote:
> Unless you're in a very, *very* different library than mine, "all the
> low-level stuff" written in C and variants are at a low-enough level (and in
> very specialized domains) that I'd never have an expectation that anyone
> working in the library would mess with it. I presume there are people in
> research libraries that muck around with C/C++, rolling their own libraries
> and what not, but I've been at Michigan for six years and I haven't heard of
> it, here or elsewhere. For most of us, I think, doing something in C is
> premature optimization.
I definitely agree with you here. But I think most of the focus on C in this discussion is because that's what the OP had available. The consensus seems to be: C isn't the language you would pick if you had your choice, but if that's what's available, it's a fine language to use to learn the fundamentals, and you can learn the rest later.
> Finally, I always ask someone what their favorite programming environment
> is. I've had a few candidates tell me that they just use Notepad, and I
> don't mind admitting that that's almost a dealbreaker for me. Using a good
> editor or an IDE is a critical part of taking advantage of the language
> ecosystem. A good programming editor is a must. Not having at least syntax
> highlighting and checking is, to me, a sign that you haven't written enough
> code for the lack of such functionality to drive you nuts yet. Java without
> an IDE is insanity. And if the candidate proudly tells you that she uses vi,
> well, make sure she really knows how to push it around. You don't get
> street-cred for using a 30 year old program shittily.
I think this is a matter of personal preference more than anything else, and in the immortal words of Larry Wall, There Is More Than One Way To Do It. My "IDE" is 2-10 terminal windows with various combinations of vi, build scripts, logfiles, data files, etc., plus a 2-10 browser tabs with Javadoc, specs, the webapp I'm building, etc. I could use syntax highlighting, etc. in vi, but I usually don't -- because a riot of colors, movement and all that is what drives *me* crazy, not having to remember exactly what that method's called or having to look it up from the handily-accessible docs if I can't remember.
Now, I don't generally just say "vi" when people ask me what my dev environment is, but I wouldn't be surprised if a job applicant abbreviated a similar system to "Notepad" or something like that. I wouldn't fault them for their choice of tools. I'd just fault them for not knowing what level of detail was expected of them.
-Esme
--
Esme Cowles <[log in to unmask]>
"A person, who is nice to you, but rude to the waiter, is not a nice person.
(This is very important. Pay attention. It never fails.) " -- Dave Barry
|