A higher correlation is with consistency in spacing. The worst coders I met are the one who keep changing the rules about how many spaces they leave after commas and brackets... within the same file.
A higher correlation is with consistency in spacing. The worst coders I met are the one who keep changing the rules about how many spaces they leave after commas and brackets... within the same file.
I have been thinking a long time about it and I concluded it is about one being methodical.
A methodic person tends to put extra attention on (all) the tasks they perform, as well as they are more critic to correctness, and those features combined might make them “better programmers”.
People who take the time to write their code carefully understand that they're writing the code for other people to understand, not just for a machine. They're considerate of others, not wanting them to waste their time in the future trying to make sense of sloppy code. The same is true for e-mails, doc and other written communication - if I take an extra minute to make my message clear, it can save a lot of confusion down the road. (This is even true for things like Slack messages and HN comments.)
Beside, one would think that proper English (which?) grammar and orthography comes easier to native speakers. The same isn't true for Math and logically stringent thinking, which I'd think is more closely related to programming.
Regarding the use of the apostrophe, I don't have any proof but I think it's more often native speakers rather than non-native speakers that make theses mistakes. Especially it's vs its. I would be really curious to have stats on this and more generally on the categories of errors that non-native speakers make compared to native speakers.
I think it's because a non-native speaker has to learn the grammar in a systematic way, as opposed to a more organic/phonetic way. For example we (non-native) learn "it is" before learning "it's", which I imagine is the opposite of a native speaker.
It's made me substantially better as a programmer in my personal projects. I'm typing word salad into the editor, and if it formats it wrong I know I've fucked up and need to fix it. It's comparable to the point in my programmer life I decided that every time I declared a variable I would ask myself whether or not I could make it const, and if I couldn't, why not.
It's made me worse at my day job, where all of a sudden I think of formatting as a purely output mechanism, where my tooling says "I think you mean this", but in my work environment it's an I/O mechanism.
It will be twenty years before I have enough clout at my day job to enforce a uniform coding standard.
for what it's worth, i don't 100% agree with the decisions black makes, either. but luckily, you don't have to see eye to eye to reap the benefits.
two caveats: it has to be a robust auto-formatter. something like checkstyle is unsuitable, because it creates more work, not less. and the auto-formatting has to be enforced via CI.
I refer to editing my own writing as "cleaning" it, an expression borrowed from programming.
It's a pain in the ass for me because of my issues, but the computer or human reader equally don't care. So I just work at it and layer in extra steps.
I suspect that at the base there is somehow a lack in communication skills and "education", or more generally a lack of respect for otherwise agreed conventions (grammar and spelling when writing) that is corresponding to a same lack of respect for other people or for the specific conventions/rules that apply to the specific work.
Sure. You can automate the white space issue away. But unfortunately the same traits tend to show elsewhere... hence the high correlation between this behavior and the fact that they were terrible coders.
"Sorry you're bankrupt boss it was just a typo"
After working with you side by side for a few weeks, the manager may, in all likelihood, genuinely feel sympathy for a problem you may have (though apostrophe use likely doesn't fall into that category). But that will have been because you earned it by being a colleague.
I replied that all the good programmers I know are also good writers. That if you can write an essay, you can code. Because it's all just organizing your thoughts and communication.
Best job interview I ever had asked me to bring writing samples (not just code).
Was that someone that worked at a high school who had a surfeit of principles, or was it the person that ran the school - ie. a principal?