Autocomplete Considered Harmful

Stop using autocomplete. People no longer think about what they say, what they type, and how they spell it. Especially for programming, autocomplete is a sin.

I’ve seen many programmers make a spelling error in a function name and have it propagate through the entire project without catching it. Why? Because Eclipse just blindly copies it whenever you type the first few letters. If you just typed in by hand, the eventuality that you would type it correctly would get your attention because the compiler would point it out and force you to look at how wrong your spelling is. Having a misspelled function name dangling around makes code more ugly and less maintainable.

As I’ve said before, I’m an avid user of Vim. I know Vim has autocomplete, but I rarely use it. I think that I’m a faster programmer because I’m not fighting the tool (“No, not that method, that one!”), I’m just typing what I want. Yes, I have to look at the documentation more. But that also forces me to carefully examine what I’m doing.

I think the same principle applies to real-life communication, too (as Patton Oswalt will attest to). Because people don’t have to finish typing the words, they just send messages to others without thinking about what the consequences could be (or whether it is what they mean to say). I proofed this blog as I typed every letter of it. I wouldn’t have had half the time to proof if I had the browser autocompleting my text. I like having a machine aid me in a task, but I don’t like having it think for me.