DAWN - Features; May 23, 2008

Published May 23, 2008

Programming destroys capacity for reflective thought

By Andrew Brown


CAMBRIDGE: Maybe I’m growing stupid, but I find that programming destroys my capacity for reason. I spent much of last week moving my little blog from Movable Type over to Wordpress; something that might have been easy, except that I wanted the change to be unnoticed by the outside world.

This is the kind of thing that can’t be done without typing. It would be lovely if I could wave a mouse and push a button and have it done. In fact, there are buttons to push that purport to automate some of the process but when I pushed them, they made the whole site vanish. I just wanted to make my changes invisible both to human eyes and passing software-robots. So I spent hours lost in the mechanical grinding syntax of computer code: a place where the absence of a single bracket or the presence of a semicolon can destroy everything you are trying to do.

High-level programming can be like mathematics or music: it brings order and harmony out of chaos. There is a fundamental sense in which everything is clearly right or wrong. A note is either in tune or it is not. A solution is either correct for an equation or it is wrong. A program well, it fails to work. But eventually, some work right, and when they do there is an extraordinary feeling that the necessary, unarguable structure of the world has been revealed. In this way, programming is more like physics than pure mathematics, because if you apply the right logical or mathematical transformations to your input what comes out is not merely satisfying on its own terms but appears to rule the world as well. But I wasn’t doing that kind of programming. If a maestro can make a program like a symphony, and an ordinary craftsman can at least whistle a tune, I spent all week getting a ukelele in tune plink, plonk, plink thunk, plonk.

The worst of it is that even this kind of programming has a corrupting fascination, like a videogame you can’t give up: there is always the hope that one more round of changes will take you through to the next level. This pleasure seems to me not merely uncreative but anti-creative. Solving these small dull problems of syntax and memorisation is essentially a very large multiple-choice exam.

There may be a creative element in deciding what colours should go to make up a website, but there is none whatsoever in trying to discover whether the command to make this happen uses curly brackets inside quotation marks, outside them, or not at all. Similarly, someone more artistic and original than I am might get worthwhile pleasure out of designing the shape of a site. No one could get anything worthwhile from the experience of trying to make this design appear the same in five different browsers.

The anti-creative element comes from the narrowness of the skills required. There is really no alternative to trying the same things over and over with very small changes: should the width of the main column be 60 per cent? 58 per cent? 57 per cent? And so on, until you find something that works. It’s like being a toddler trying to bang differently shaped blocks into the holes of an educational toy. You bang and bang and scream a bit and bang some more and suddenly the block fits but you’ve no idea why.

It is utterly inimical to the sort of thought required to write clearly. Sentences are not solutions to a multiple choice question. Grammar, perhaps, can be approached in this way. There are in any language certain parts of speech which simply have to be in particular places relative to others: to that extent, the next word or the next phrase in a sentence is a matter of multiple rather than infinite choices. But vocabulary is not so limited. It is a floppy and slippery instrument, and only when we are very lucky does the right word ring as true as a note of music can.

The difference between a sentence that works and one that doesn’t can be quite as large and important as the difference between a computer program that works and one which causes a satellite to crash for want of a semicolon; but capacity for patient, reflective thought needed to hear what’s wrong with a sentence is exactly what programming drives out of my mind.—Dawn/ The Guardian News Service

Opinion

Editorial

Counterterrorism plan
Updated 23 Nov, 2024

Counterterrorism plan

Lacunae in our counterterrorism efforts need to be plugged quickly.
Bullish stock market
23 Nov, 2024

Bullish stock market

NORMALLY, stock markets rise gradually. In recent months, however, Pakistan’s stock market has soared to one ...
Political misstep
Updated 23 Nov, 2024

Political misstep

To drag a critical ally like Saudi Arabia into unfounded conspiracies is detrimental to Pakistan’s foreign policy.
Kurram atrocity
Updated 22 Nov, 2024

Kurram atrocity

It would be a monumental mistake for the state to continue ignoring the violence in Kurram.
Persistent grip
22 Nov, 2024

Persistent grip

An audit of polio funds at federal and provincial levels is sorely needed, with obstacles hindering eradication efforts targeted.
Green transport
22 Nov, 2024

Green transport

THE government has taken a commendable step by announcing a New Energy Vehicle policy aiming to ensure that by 2030,...