Warning: This shit is pretty rambly. It might get cleaned up, one day.

One of the thing that pisses me off most is how often my rather meager computer skills tells me that I must be "so clever" or "such a genius". Compliments obviously are flattering, but it shows an ignorance of what's going on. Of course, there's a minimal amount of raw intelligence required to be proficient with computers.

But the whole thing is based on a confusion. All that most people I know involved with computers do not just wake up one morning at age seven and start singing in C++. No, it comes from learning, which takes time, application and a cognitive reward structure. While you were out partying, getting shit-faced and then reheating last night's Pot Noodle, someone was sitting their learning to do their shit. The same is true for lots of things: one doesn't just wake up and start taking beautiful photographs - it's a learned skill. Read Teach Yourself Programming in Ten Years.

The problem is that everyone's criteria of what is good in computing is fucked up. I don't consider using Vim or emacs to be a sign of a superior intellect, or at least, I don't consider that to be a sign of a superior intellect any more than someone using a spanner to loosen a screw. If the whole world were using water pistols to loosen screws except a tiny number who used spanners, then the spanner user wouldn't necessarily be the next Einstein - but are just people who have a little bit of common sense and use whatever is appropriate.

One idea that a lot of people seem to have is that computers have to be "easy enough for stupid people to use". What? Do we say "cars have to be easy enough for a stupid person to use"? Does the existence of driving instructors, tests, books and other learning materials make us say "Oh my, the car has such poor user experience design, it really needs to be simplified". Of course not. The car has a pretty excellent user experience. If you want to go faster, you push one pedal. Slow down, the other. Turn the wheel to turn the wheels. It does what you ask it to do. Of course, you need to have the experience and wisdom to know what you want it to do. So a decent piece of computer software does: I want to go down a line, I press "j". I want to go up, so I press "k". These seem pretty arbitrary letters. Why not "a" and "b"? Why not "1" and "2"? Well, most people are right-handed, and it just happens that "h", "j", "k" and "l" are on the home row. That's slightly cryptic for most people, but so what? You read the manual, you learn it and it's done. Like touch-typing, vim knowledge is one of the things that I'm unbelievably glad I have. Like touch typing, it makes my life better in innumerable ways. They actually made an application that's a simplified Vim. It's called Cream, and it sucks.

Here's the moral though: I understand enough of Vim to know what's going on. I haven't yet gotten to the point where I've needed to compile anything, but I have written my own key mappings and simple functions. I'm reasonably confident these days that if I want to extend my editor, I can put something rather clunky together. I've basically got this thing which is a typewriter with a built-in secretary, reference library and army of testing gremlins. That sounds pretty complicated, but it really isn't, if you spend a few minutes working out how it works. Something like Microsoft Word truly confuses me in a way that Vim doesn't. I don't get the logic behind many of the things in Word, and this makes them quite difficult to use. That's because it's got things like invisible closings. If I'm writing in my text editor, and I use a markup language like LaTeX or HTML or one of the infinite number of wiki syntaxes, I know where one one thing goes from being bold (sorry, we use Descriptive Markup now: from being strongly emphasised) to being regular - because there's some character to help me. If I look at a Word document I can't tell where a particular piece of style ends and another begins. WYSIWYG sucks, but the marketing department says customers like WYSIWYG, so it's WYSIWYG. And once a Word document is done, it gets saved into a format that I'm gonna have difficulty opening a year from now, let alone half a century from now.

Powered by WiGit