Writing a complicated computer program carries its own triumphs and failures, heights of exultation and pits of despair. But is it the same sort of sensual experience as, say, riding a motorcycle? I've never actually ridden a motorcycle, but I expect not.

It's interesting, I'd say that programming, while perhaps not a sensual experience, is engaging in a way that many other intellectual activities are not. Compare writing code to working out a math problem. They are both complex logical activities but there is a critical difference: programming has a strong element of interaction. You write a subroutine, run it, look at the results, repeat. If you made a mistake the machine will tell you.

I've spent about equal amounts of time on programming and mathematics, but I consider myself far more proficient at programming. I'm confident that I can solve most typical programming problems, while even basic math problems are far more intimidating and error-prone (how do you calculate the integral of 1/(x^2+c^2) again...? something about the residue theorem?). I believe this asymmetry is due to the fact that one can "interact" with computer programs.

## Comments (84)

OldWriting a complicated computer program carries its own triumphs and failures, heights of exultation and pits of despair. But is it the same sort of sensual experience as, say, riding a motorcycle? I've never actually ridden a motorcycle, but I expect not.It's interesting, I'd say that programming, while perhaps not a sensual experience, is engaging in a way that many other intellectual activities are not. Compare writing code to working out a math problem. They are both complex logical activities but there is a critical difference: programming has a strong element of interaction. You write a subroutine, run it, look at the results, repeat. If you made a mistake the machine will tell you.

I've spent about equal amounts of time on programming and mathematics, but I consider myself far more proficient at programming. I'm confident that I can solve most typical programming problems, while even basic math problems are far more intimidating and error-prone (how do you calculate the integral of 1/(x^2+c^2) again...? something about the residue theorem?). I believe this asymmetry is due to the fact that one can "interact" with computer programs.