5 ms·
Why would he be alone? Why is spelling less important in code than in normal writing? I would argue it is considerably more important.
by mynameishere 16y ago
Why would he be alone? Why is spelling less important in code than in normal writing? I would argue it is considerably more important.
- tptacek 16y agoIf you truly think the market for C developers is so favorable to employers that someone who can write the in-place-whitespace-removal function off the top of their heads is easy to find, then by all means, ding candidates for their spelling during interviews. Thanks for making it that much easier for the rest of us to hire. In the industry I work in --- computer software --- it is ludicrously hard to find people competant in C programming, and I'm inclined to ignore idiosyncratic spelling in source code.
- roel_v 16y agoThis is not a simple misspelling though. If someone would write 'int countar = 0;' because he doesn't speak English well or whatever, that's fine. But spelling 'write' as 'rite' is indicative of a certain mindset - of favoring a certain quirky sense of beauty or style over clarity. And I didn't say it'd be autoding, just that it lowers my opinion of the author a bit. If the rest was OK that would be noise in between all the other criteria.
- nocman 16y agoSome would argue that if it lowers your opinion of the author it is an "autoding" already (whether you're willing to admit it or not). Take this scenario: You have a single position you are interviewing people for. You've got two candidates with entirely even qualifications. The only perceivable difference between them is that one of them writes interview code with variable names spelled like in the original post. The other guy spells things the way you would expect. I'm willing to bet you'd end up hiring the second guy. Sounds like an "autoding" to me. Or would you argue that you would not do that?
- roel_v 16y agoI don't understand your logic. Two people who are in every respect exactly the same, but one can't spell or at least has weird, non-standard spelling habits. The rational choice here is the person who spells correctly. My point was, spelling in variable names is only a very minor factor when deciding on hiring or not hiring a candidate. If his reasoning and experience and work ethic etc. are all ok, spelling wouldn't make those factors irrelevant. When a factor is automatically excluding, that means that no matter how good in other respects the candidate is, I still wouldn't hire him (for example someone with a swastika tattooed on his face applying for a customer-facing job). I never suggested any such a thing anywhere (and I don't think you're claiming I am). So I don't see how you're coming to the conclusion that I think that making spelling mistakes automatically excludes a candidate.
- tptacek 16y agoHis logic is that you are in fact "dinging" the candidate. He used an artificial scenario to illustrate that. In reality, you never have two candidates who are absolutely equivalent except for spelling ability. The interview process is extremely high-error, brutally timeboxed, and infamously ineffective. The most important capability you need to assess is "ability to code". You know a priori you're going to do a crappy job assessing that capability. Whether or not he thinks you should be wasting time on trivialities like variable name spelling (I myself would dodge this problem by using names like "x" and "cp" for utterly trivial, well-known example problems like this), I don't know. My bias is pretty clear.
- roel_v 16y agoLet's clarify terminology first - I shouldn't have used the word "autoding" because it's slang and its use in another message board that I visit may not be universally accepted. I meant "an automatic disqualifier" - a condition that would completely negate any positive aspects. Under that definition, I don't see any way to construe my earlier remarks as meaning that I would such a high importance on spelling of variable names.
- mynameishere 16y agoI think you exaggerate. If you actually look at advertisements for c/c++ developers, they tend to contain words to the effect, "Must have 4-5 years experience in high speed algorithmic trading", etc. But if you know any good-paying jobs that only require the skill level you suggest, point me in that direction. (I mean that--I can get away from my current huge and horrible codebase. Speaking of which, I remember being appalled by the consistently awful misspelling of virtually everything until someone pointed out that its DOS origins required 8 character limits on filenames. I suspect such charming beasts as atoi and strlen had similar constraints, if only for purposes of saving RAM on PDP 11s.)
- wmil 16y agoIn the original C implementation function names could be as long as you wanted, but the compiler only looked at the first six chars.
- JoachimSchipper 16y agoIt's worse than that, actually: the C89/C90 standard allows this behaviour. Yes, many programs would break if compiled with such a theoretically conforming compiler.
- metageek 16y agoI thought it was the linker that truncated. So functions called fredBlogs() and fredBlugs() would be fine as long as they were in the same compilation unit, and not called from any other compilation unit.
- nickelplate 16y agoI personally would count that against any candidate during an interview. I wouldn't necessarily reject them, but I would definitely count that against them. I work in Toronto, Ontario. English is not my native language, but I always do my best to ensure that my code or documentation is as close to crystal clear as possible. This starts with using correct spelling. Code is written first for humans to read, and to me misspelling in code is no different than poor variable naming. It is the kind of broken window that, when left unchecked or dismissed as "not important", instills a sense of negligence that over time can turn a code base from "decent" to "poor old crappy code".
- SamReidHughes 16y agoBut if you're talking about a whiteboard coding problem, people are going to come in with different perceptions of what you're trying to test, and for the sake of brevity they'll do things like use shorter names or global variables. I feel like I'd cringe at seeing "rite," but not as much as when somebody thinks it looks impressive to start by showing you the testing code they would write.
- angrycoder 16y agoThe counterpoint to this is that if you are they type of boss who would nit pick a candidate over something like this, he probably wouldn't want to work for you anyway. Especially when you take a quirky/cute spelling and try to expand it into inferring all sorts of other traits. It reminds me of people who say they would never hire a developer who doesn't write comments. Really? Writing comments is a precious skill that takes years to develop? You just tell someone, if you work here, you need to write comments. Problem solved in one sentence. Same with variable names. Its a standards issue, nothing more, nothing less.
- btilly 16y agoDo you really think that ordering someone to write comments and use good variable names is sufficient to get good results? The relevant chapters in Code Complete may help you understand how much more complicated the subject is than that. (It may also fix your apparent belief that comments are necessarily a good thing.)