Category Archives: Uncategorized

Kid’s can’t use computers—and it doesn’t matter

This article by Marc Scott on the state of computer knowledge among young people got me angry. All the more angry because, among all the bits I disagree with, I think he has a point.

In summary, he is arguing that the widespread belief that the young people of today are knowledgeable about computers is wrong. In Scott’s view, which I largely share, there’s a mistaken conflation of being able to operate a computer with having an understanding of computers. Although the next generation of people are comfortable using computers in their daily lives, they are helpless when it comes to performing non-routine tasks or anything technical. Any abilities they do have are spoon-fed to them and they have no ability to self-teach.

The first thing that bothered me about the article was the arrogant tone. There’s nothing wrong with a good blog rant, especially on a site you own. I know I’ve done a few myself. But the article seems to aim to right some of these misunderstandings, and if so the tone is working against this by being dismissive.

Combined with the arrogance there was a vein of mind-reading being applied to the author’s opponents. It makes for good writing to tell a story involving emotional colour, but the inferred (or rather guessed-at) thoughts of one’s antagonists can’t be used as a part of your argument without further proof. In the anecdote that leads the article, Scott eviscerates the character of a young woman who asked for help with her computer, just because he didn’t like the look on her face. His characterisation may be true, but it would be a stronger argument without this.

Putting aside these reservations, I find myself agreeing with the content but somewhat disagreeing with the prescriptions. I certainly agree that there’s a lot of ignorance out there, but I don’t think there’s ever been a golden age where understanding of computers was any better than it is today.

I think things look worse than they used to for two reasons. Firstly, there’s more broad exposure to computers as thus more opportunities for people to reveal ignorance. When I was growing up, people who had no affinity for computers simply didn’t use them. Nowadays, school and jobs and so on force people constantly into situations where they have to fix WiFi problems or display a PowerPoint with the wrong version of the software.

The other problem is something that I think Scott pretty much nailed: there’s a complacency in the way older people judge the skills of younger people. If you’ve never deeply understood computers yourself, then someone who can change the WiFi password probably looks pretty similar to someone who can program a WiFi driver—hence the tedious requests to fix printers that all software developers receive. Again, while this is a problem (and a particular problem when the complacency lies in the teachers who should be educating our children), I don’t see a reason to suppose there’s a decline here.

As to the proposed solutions: clearly anything that spreads knowledge is a good thing. Parents should encourage their children to investigate the world around them and teach themselves, in computing as in anything. But I’d prefer to emphasise teaching everyone the basics rather than trying to produce a few more people with advanced skills while demotivating the rest.

A future where everyone can program is a theoretical possibility, but not with the current state of technology. If it can work at all, I think we’re missing some advance that will make it possible for people to build customised solutions with far lower cognitive load than it currently involves. And while we’re speculating about such future advances, we can probably equally well imagine that the whole concept of programming as an activity will become as outdated as scribes copying books by hand.

In lots of fields of human endeavour there are purists with deep expertise who decry the lack of knowledge among the amateurs. The same thing is true of cooking, tailoring, home repair and car maintenance. Realistically, we won’t all become experts in these things, and I don’t see why programming should be any different.

You don’t need to be like Linus

Discussion has once again flared up about Linus Torvalds’ behaviour on the Linux Kernel Mailing List (LKML). For some background, see Sarah Sharp’s post on the topic.

Various apologists have been pointing out that Linus has a huge workload and that he needs to avoid wasting time on people who submit unworkable code to the kernel. If Linus were not so blunt, they say, the whole community would suffer as he would have less time to approve patches.

The thing is, they may be right. It’s possible that Linus just isn’t able to construct rejection messages that are sufficiently assertive to be taken seriously without resorting to abuse, or at least that doing so would take a lot more of his time than his current approach. And maybe, as a community that benefits from the Linux kernel, we have to put up with that.

None of which is meant to say that Linus’s behaviour is good. Being able to communicate in an assertive (but not aggressive) way is a skill, and people who lack this skill should be considered to be doing worse (all other things being equal) than people who have the skill. Those of us who have weaknesses in our communication style should always be looking for ways to improve, as with any other personal flaws.

If I were Linus’s employer, I’d be asking him to work on his communication skills. But finding things that people need to improve is something that should happen all the time, with every employee. The right question to be asking is whether the employee is overall an asset to the organisation, and I think in the case of Linus it’s clear that he is.

One thing I’d hate to see is other developers taking away the message that Linus’s abusive communication is something to emulate. His other strengths may balance out this flaw, but it’s still a flaw. Everyone has their own mix of strengths and weaknesses, and by all means look to people for role models. But inspiration isn’t all-or-nothing, and you should be careful about which traits you copy.

Why Android would lose the tablet race, even if it were started again today

I’ve written before about fanboys and the difficulty of maintaining a neutral point of view. So, to declare my interest, I’m mostly backing Android in the mobile OS wars: it isn’t perfect, but it’s better than the alternatives.

Saying that Android is going to lose the tablet wars isn’t exactly sticking my neck out. I’d like to defend a bolder claim, however: Android would lose if the tablet wars were restarted today, without Apple’s massive entrenched lead in apps, marketing and mindshare. The makers of Android tablets scored a catastrophic own-goal by waiting to see whether the iPad would be successful before committing themselves to making competing products. Implicit in all the Android apologist’s reviews of new Android tablets is the idea that Apple’s head start is the reason they’re more successful, and that Android has merely to catch up lost ground (a bit of battery life here, an optimised UI there) and it’ll once again be a level playing field. The Apple fans rightly mock this as grading on a curve, and yet it might be justified if the apologists were right that Android will inevitably catch up. Unfortunately, they’re wrong.

Apple make their devices differently. They have full control over the OS and the hardware, and design them from very early on in the product cycle to work together. Apple deliberately aims at a subset of the market, and eschews features that this market segment doesn’t want. They have mastered the art of taking features out of a product.

Tablets are not just bigger phones or smaller laptops, they are used entirely differently. Tables are consumption devices much more than they are creation devices. They excel in cases where a keyboard isn’t needed or gets in the way, but at the price of losing flexibility. People aren’t using tablets for web development. They aren’t doing serious photo manipulation. Or non-trivial data analysis.

It seems to me that the aspects in which tablets excel are exactly the aspects in which Apple excels. People who want tablets want a streamlined convenient experience, and are prepared to compromise on features in order to get it. Plenty of people exist who want more out of their mobile computing device than this, but they aren’t buying Android tablets (and they’re definitely not buying those clip-on-keyboard hybrid abomninations): they just aren’t buying tablets at all.

It seems to me that this whole argument has a persistent technology myth baked into it: that since technology B arrived later than technology A, it is a suitable direct replacement for it. Tablet computers required a lot more technological progress to get right than laptops did, but that doesn’t mean that they will replace laptops like Homo Sapiens replaced Neanderthal man. TV has yet to stamp out radio, because the latter allows you to do things (like driving a car or cooking dinner) that the former doesn’t. Voice calling never “replaced” SMS (which in fact flourished long after voice calling), just as video calling shows no signs of making a dent on voice calling. The vast majority of content on the web is still text and not video (or audio), since video is not a better text.

New technologies are less disruptive than this, and in a different sense more disruptive. Less disruptive in the sense that the old market doesn’t go away or even change that greatly, but more so in the sense that you often need a whole different approach to succeed in the new market. Right now Apple is the only company that has what it takes to take full advantage of the tablet market, and if any rival does appear I doubt it will be based on Android.