Re: Where does programming begin?
- From: Richard Heathfield <rjh@xxxxxxxxxxxxxxx>
- Date: Wed, 26 Sep 2007 04:26:06 +0000
Tom Impelluso said:
<snip>
So I am curious to know if there is some standard definition of
programming?
Not as far as I know.
Is it relative?
It depends on how you define "programming"! See below.
The "closer" one is to coding at the operating system level, or the
closer one is to assembly, the more it is called "programming"?
Problem: consider a multi-user operating system such as, say, Linux, with
three users connected to it using, say, ssh.
One of these users is writing a simple text filter in, say, C. I don't
think anyone would object to the claim that he's indulging in programming,
even if all he's doing is counting words or something. Between him and the
hardware are: the OS, the shell, the compiler, and possibly the assembler
and linker.
The second user is mucking about with ImageMagick, doing geometry
transformations on JPEGs. All he's doing, really, is choosing command line
parameters for the convert utility. I don't think anyone would claim that
he's programming, though - at least, no programmer would. But what is
between him and the hardware? Just the OS, the shell, and the utility that
he's running! So he's actually closer to the hardware than the C guy.
The third user has already written a C program that simulates a simple
virtual machine, and he is now writing programs for that machine in
machine code (for he has not yet gotten around to writing an assembler for
the VM). Between him and the hardware are: the OS, the shell, the
compiler, assembler, and linker, AND the VM. When he gets around to
writing the VM assembler, that will add yet another layer between him and
the real hardware. The programming he is doing is far more worthy of the
name than either of the other two, and yet he is considerably more distant
from the hardware than either of them.
Curious to know opinions...
My own take is that programming is the art of designing and implementing
algorithms for the computer to perform. Thus, the ImageMagick guy who is
converting a bunch of JPEGs is merely /using/ the computer, not
programming it. The HTML writer is not programming the computer, because
HTML lacks the expressive power necessary for implementing algorithms.
That isn't to denigrate what he does - writing good Web pages is not easy
- but it isn't programming. The 9-year-old who points and clicks and drags
and drops his way around the Lego RCX language, on the other hand, is most
definitely programming.
--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
.
- References:
- Where does programming begin?
- From: Tom Impelluso
- Where does programming begin?
- Prev by Date: Re: Where does programming begin?
- Next by Date: Re: Where does programming begin?
- Previous by thread: Re: Where does programming begin?
- Next by thread: Re: Where does programming begin?
- Index(es):
Relevant Pages
|