Is programming art?

Y

Yu-Hsuan Lai

[Note: parts of this message were removed to make it a legal post.]

(I'm a high school student confused by this concept)

I know this isn't about ruby, but I don't know where I should ask the
question.
And... after all, ruby is a language which more often be described by "art"
than any other language I know.
Many people call Matsumoto "great designer". I know programming is related
to design. But is it "art"?

Paul Graham said programming is like painting in "Hackers and Painters", but
I'm very confused.
In art field, the masterpieces would be honored... forever.
The sculptures made by ancient Greeks still stand.
Tang poetry was recited by Chinese users until now.
Da Vinci's painting like Mona Lisa have been classic for 500 years.
How about programs? After five hundred years, our descendants will remember
mailing list, Ruby, or even Linux?
If a craft can't stand test of history, still it is art?

If programming is neither art nor manufacturing, what is it?
 
P

Peter Hickman

The creation of software aspires to be a science or at least more like
engineering but it is truly a craft. The software takes shape under
the hands of the coder at the exact moment of creation such as when
the painter creates the painting. Such planning as may be done in
advance can be swept aside in a moment of inspiration with the brush
in hand, the whole canvas can be scrapped because it does not look
right to the artist despite an observer seeing no fault with it.

It is the same with software.

However software, unlike painting or sculpture, is a thing of utility
and thus in a constant state of flux. It is rewritten continuously and
when it no longer has utility it is scrapped. Da Vinci did not return
to the Mona Lisa and say "I think I should really do this in
charcoal", Michelangelo did not return to David and say "his right
hand would look better on his hip, perhaps he should have a more
contemporary haircut".

True works of art have no utility and have a final form.

Software exists solely for it's utility and has no final form to stand
on a pedestal or have learned articles written about.

The the creation of software is a craft/art but the final product is
just that, a product. Some forks are elegant and stylish, others are
ugly and utilitarian but we choose that which functions better as a
fork over that which does not. Beautiful software that does nothing is
soon discarded.

The creation of software is a craft aspiring to be an art but the
result is not art, just utility.

YMMV :)
 
J

John Morrice

True works of art have no utility and have a final form.

Warning: I'm going to use some onanism to attempt to demonstrate
a point. This is because writing silly, and often useless, pieces of
software is my hobby!

Here is a specimen. It's a zoom into a fractal exclamation mark.
https://github.com/elginer/exclamation/blob/master/surprise.gif

So that's a bit of a strange program that generates fairly strange
(or crap) art.

I'm trying to show is that the relationship between
utility and art is not as simple as XOR.

* The program makes art.

* The art is useless.

* Is the program useless? On the other hand, could I really argue that
it's useful?

* If the program was used as part of a particularly pretentious
installation, would it then become part of the art, or would only its
output be art?

* Importantly, would you shoot the person who arranged the exhibit?

Johnny
 
D

Daniel Hernández

There are diverse opinions about the status of computing. Also it can
described as science. The next are two articles on that line.

* Is Computer Science Science? , Peter Denning, 2005.
* Computing is a natural science , Peter Denning, 2007.

Maybe the categories of art, science or engineering are related with
the methods that you use.

Daniel

Excerpts from Yu-Hsuan Lai's message of Fri Dec 17 06:51:30 -0300 2010:
 
M

Mike Stok

There are diverse opinions about the status of computing. Also it can
described as science. The next are two articles on that line.
=20
* Is Computer Science Science? , Peter Denning, 2005.
* Computing is a natural science , Peter Denning, 2007.=20

Remember to look at Knuth's "Computer Programming as an Art" from 1974 =
which starts out by looking at the meaning of art... It's printed in =
the book Literate Programming (worth a read in its own right) and the =
article's on line =
http://fresh.homeunix.net/~luke/misc/knuth-turingaward.pdf

Mike
=20
Maybe the categories of art, science or engineering are related with
the methods that you use.
=20
Daniel
=20
Excerpts from Yu-Hsuan Lai's message of Fri Dec 17 06:51:30 -0300 = 2010:

--=20

Mike Stok <[email protected]>
http://www.stok.ca/~mike/

The "`Stok' disclaimers" apply.
 
P

Peter Hickman

I'm trying to show is that the relationship between
utility and art is not as simple as XOR.

* The program makes art.

* The art is useless.

There is a distinction between being useless and having no utility. I
content that art has no utility in that it does not have "the quality
of being of practical use" (the meaning of the word utility). That
does not mean that it is useless.

A program that does nothing or does what it is expected to do wrong (a
calculator that cannot add up) has no utility. I have a program that
generates long strings of random characters that I use for passwords,
this has utility. If at some point in the future when security is
enabled via retinal scans and passwords are no longer in use then my
program ceases to have utility.

Art of itself never had utility.

A programmer works / creates more like a painter / sculptor than an
engineer but the result of the labours is not art but something that
has utility. Painters and sculptors do not create things of utility
unless you consider using Michelangelo's David as a hat stand :)

Is art useless? That is another question and not one that I was
addressing. Given that in around 6 billion years the sun will turn
into a Red Giant and all life on Earth will be eradicated then you
could view all human endeavour as useless :(
 
J

John Morrice

There is a distinction between being useless and having no utility. I
content that art has no utility in that it does not have "the quality
of being of practical use" (the meaning of the word utility). That
does not mean that it is useless.

I agree that there is a subtle distinction I had not considered!
Is art useless? That is another question and not one that I was
addressing. Given that in around 6 billion years the sun will turn
into a Red Giant and all life on Earth will be eradicated then you
could view all human endeavour as useless :(

Aye, you're right: it's another question. I have my faith in humanity
(or what it may become). In 6 billion years we might be symbiotic with
novae. :)
 
D

David Masover

I know programming is related
to design. But is it "art"?

In the sense that anything can be.
In art field, the masterpieces would be honored... forever.
The sculptures made by ancient Greeks still stand.
Tang poetry was recited by Chinese users until now.
Da Vinci's painting like Mona Lisa have been classic for 500 years.

Programming, in its current form, has been around for, what, 50 years? Give it
time to stabilize -- and time for true masterpieces to appear.

What's more, it's a
How about programs? After five hundred years, our descendants will remember
mailing list, Ruby, or even Linux?

It's possible that these will leave a living legacy. The Linux we use today is
very different than the Linux that Linus wrote for want of a terminal emulator
-- I'd be surprised if a single line of code is the same. Yet in a sense, it
might be considered the same, in the sense that you are still the same person
you were ten years ago -- likely not a single cell in your body now was in
your body then, and it's possible all of your atoms have been replaced, but
you're still you, are you not?

Even failing that, while very few people use anything that's directly
descended from the original AT&T Unix, we do still use systems based on and
inspired by that design. I would imagine that in five hundred years, if we're
still using earthbound networks, they'll probably still be running something
very like IP, and I'd even bet that it'll still be IPv6. I would also imagine
that many of the ideas inspired by Unix would be alive and well, and likely
even some code that once lived inside Linux.

And there are some things which seem genuinely timeless -- for instance,
sorting is very nearly a solved problem, and five hundred years from now,
they'll probably still be using something like quicksort, merge sort, etc.
There are real, mathematical constraints on making sorting much better, and
there are only so many ways to implement the existing algorithms. Even things
like "copy" can have some poetry to them; I imagine as long as C is around,
this snippet will survive, even though I doubt anyone actually recommends
programming this way:

void strcpy(char *a, char *b) {
while(*a++ = *b++);
}

As a community, we even have our heroes and our memorable quotes. Like him or
not, who can forget Dijkstra saying "Beware of bugs in the above code; I have
only proved it correct, not tried it." I'm going to remember that for the rest
of my life, even if I never see the actual code he was talking about.

Even failing that, I'd have to answer:
If a craft can't stand test of history, still it is art?

Yes, of course.

What do you mean when you say "art"? Do you mean the same thing Roger Ebert
meant when he loudly declared, "Video games can never be art"? Responding to
the backlash, he tried to say that they could never be "fine" art, whatever
that means.

If someone sketches something beautiful to give to his girlfriend on
Valentine's day, and she never shows it to another soul, would you say that is
not art?

Absurd. The question of whether something is or is not art shouldn't depend on
how many people have heard of it, or for how long, at least if the word "art"
is to have any meaning other than "popular".
If programming is neither art nor manufacturing, what is it?

It's both, though closer to engineering than manufacturing.
 
D

David Masover

As a community, we even have our heroes and our memorable quotes. Like him
or not, who can forget Dijkstra saying "Beware of bugs in the above code;
I have only proved it correct, not tried it."

...except I apparently forgot that was Knuth, not Dijkstra. Must have Dijkstra
on the brain lately. Sorry about that...
 
T

Tony Arcieri

[Note: parts of this message were removed to make it a legal post.]

And... after all, ruby is a language which more often be described by "art"
than any other language I know.
Many people call Matsumoto "great designer". I know programming is related
to design. But is it "art"?


In my opinion, 99.9% programming isn't art.

The primary purpose of art is to communicate ideas between people, often
times ineffable ideas that can't be put into language. Art is not intended
to be utilitarian and typically has no intrinsic useful function in an of
itself.

The primary purpose of programming is to accomplish a utilitarian function
by providing a set of instructions to a computer. Rather than being
ineffable, the instructions are given in very precise language.

Ruby has a very flexible syntax that lets people do things solely for
aesthetic value, even things that might slow down your code or make it
harder to work with. I've often heard people refer to these sorts of things
as "poetic" and I like doing them myself. They make no sense when the
program is interpreted by a computer, only a human reader. I'd consider that
sort of thing artistic.

People who write entries for obfuscated code contents often times do fun
things with the formatting, making their obfuscated code into pictures and
shapes. This is particularly interesting with "quines", programs that can
output their own source code.

As a response to Paul Graham's "Hackers and Painters" essay, I particularly
enjoyed this essay by an artist/programmer, called "Dabblers and Blowhards":

http://www.idlewords.com/2005/04/dabblers_and_blowhards.htm
 
B

Brian Jolly

[Note: parts of this message were removed to make it a legal post.]

The same question could be asked about painting. Is painting art?

Painting a wall white probably wouldn't be considered art, where painting a
picture of fruit on a table would be considered art.
 
J

John Morrice

People who write entries for obfuscated code contents often times do
fun things with the formatting, making their obfuscated code into
pictures and shapes. This is particularly interesting with "quines",
programs that can output their own source code.

In case anyone here is a obsfucated programming virgin, here is
(a personal favourite) example of obsfucated code:

http://www.ioccc.org/1996/schweikh1.c

(Here is an archive of such insanity - you'd need the Makefile to
use the above)
http://www.ioccc.org/years.html
As a response to Paul Graham's "Hackers and Painters" essay, I
particularly enjoyed this essay by an artist/programmer, called
"Dabblers and Blowhards":

http://www.idlewords.com/2005/04/dabblers_and_blowhards.htm

That's brilliant!

Though I'm still set on thinking a fractal generator constitutes art.
The fractal on the screen is art, and the program is a description of
how to construct the fractal's geometry.

In any case, as that essay points out:
maths isn't going to get me laid.
 
Y

Yu-Hsuan Lai

[Note: parts of this message were removed to make it a legal post.]

In the sense that anything can be.


Programming, in its current form, has been around for, what, 50 years? Give
it
time to stabilize -- and time for true masterpieces to appear.

What's more, it's a
remember

mailing list, Ruby, or even Linux?

It's possible that these will leave a living legacy. The Linux we use today
is
very different than the Linux that Linus wrote for want of a terminal
emulator
-- I'd be surprised if a single line of code is the same. Yet in a sense,
it
might be considered the same, in the sense that you are still the same
person
you were ten years ago -- likely not a single cell in your body now was in
your body then, and it's possible all of your atoms have been replaced, but
you're still you, are you not?

Even failing that, while very few people use anything that's directly
descended from the original AT&T Unix, we do still use systems based on and
inspired by that design. I would imagine that in five hundred years, if
we're
still using earthbound networks, they'll probably still be running
something
very like IP, and I'd even bet that it'll still be IPv6. I would also
imagine
that many of the ideas inspired by Unix would be alive and well, and likely
even some code that once lived inside Linux.

And there are some things which seem genuinely timeless -- for instance,
sorting is very nearly a solved problem, and five hundred years from now,
they'll probably still be using something like quicksort, merge sort, etc.
There are real, mathematical constraints on making sorting much better, and
there are only so many ways to implement the existing algorithms. Even
things
like "copy" can have some poetry to them; I imagine as long as C is around,
this snippet will survive, even though I doubt anyone actually recommends
programming this way:

void strcpy(char *a, char *b) {
while(*a++ = *b++);
}

As a community, we even have our heroes and our memorable quotes. Like him
or
not, who can forget Dijkstra saying "Beware of bugs in the above code; I
have
only proved it correct, not tried it." I'm going to remember that for the
rest
of my life, even if I never see the actual code he was talking about.

Even failing that, I'd have to answer:


Yes, of course.

What do you mean when you say "art"? Do you mean the same thing Roger Ebert
meant when he loudly declared, "Video games can never be art"? Responding
to
the backlash, he tried to say that they could never be "fine" art, whatever
that means.

If someone sketches something beautiful to give to his girlfriend on
Valentine's day, and she never shows it to another soul, would you say that
is
not art?

Absurd. The question of whether something is or is not art shouldn't depend
on
how many people have heard of it, or for how long, at least if the word
"art"
is to have any meaning other than "popular".


It's both, though closer to engineering than manufacturing.

You imply that our programming craft is too young to be art. But programming
is growing more quickly than other industries(or sciences). Maybe fifty
years is not short?

Quick sort and merge sort and so on is algorithms rather than programming.
Algorithms are mathematics and mathematics are immutable. Even we have
non-Euclidean geometry, every student learns Pythagorean theorem first. But
still CS students learn Fortran? Some of them even don't want C language.
(I have learned C and like it, of course.)

Now my opinion is like the essay Arcieri posted.
 
T

Tony Arcieri

[Note: parts of this message were removed to make it a legal post.]

The same question could be asked about painting. Is painting art?


It depends what you're painting (but you already answered your own
question...)
 
M

Mike Stephens

Art generally speaking is there to decorate our environment (visually,
aurally etc). That's why people buy it.

You classify something as art if it has some characteristics that you,
or someone in the room, decides makes it art ie you can't really define
art. You learn the "That is art" reaction from others.

Software just doesn't fall into this category.

Also art tends to mean done in a way that is not the normal,
straightforward, obvious, simple way. Art tries to distort, abstract,
defy physics - generally create something out of the ordinary.

Software can be aesthetically pleasing either functionally or the way
its
written but that's not normally art. It is engineering - creating
functional things in the most sensible way (not amusing, challenging etc
etc). Adding elegance and beauty is not the same as art.
 
J

John Morrice

Though I'm still set on thinking a fractal generator constitutes art.
The fractal on the screen is art, and the program is a description of
how to construct the fractal's geometry.

In case anyone is interested, here is an argument which shows
my reasoning there to be faulty:

A circle painted on canvas is art.

class Circle

attr_accessor :x, :y, :radius

end

isn't art.

Therefore a (non-obsfucated) fractal generator isn't art.
 
B

Brian Jolly

[Note: parts of this message were removed to make it a legal post.]

That's kind of what I was trying to say.

The product of painting and the product of programming can be art, or it can
serve some practical purpose.

Take a look at the result of Natzke's programming:
http://vimeo.com/natzke

It is clearly art.
 
U

Urabe Shyouhei

(2010/12/19 4:07) said:
Start with an easier question:

What is art?

Yeah, I know this is THE right way for original poster to find his answer, but
anybody who asks someone if something is art or not do not see the world as
you and I do, so a bit more explanation is desirable.

Why the definition of art is important in this context is that, if you define
art as what is written in a dictionary, anything computer-related are 100.0%
non-art. And we do not believe so. That is the key point; the OP is asking
if programming is art "in some sense", and the sense is something that extends
the definition of art from a mare tableau adoring a museum wall. So, in
principle, when someone believes that a programming is art, that person
believes some different definition of art. This is why the question "what is
art". To define art automatically distinguishes if programming is art or not.
 
T

Tony Arcieri

[Note: parts of this message were removed to make it a legal post.]

Start with an easier question:

What is art?


I gave one definition earlier, but there's another definition that's also
interesting, which is the one Knuth uses, the classical definition:

Art is that which is not science

That is to say, things that could not be made into sciences were relegated
to art. This is the context for the title "The Art of Computer Programming"
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,020
Latest member
GenesisGai

Latest Threads

Top