Live data from Hacker News

Computer programming as an art (1974)

dl.acm.org

1–10 of 19 posts

Re: Computer programming as an art (1974)

#2
It's always a joy to re-read Knuth's work.

For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the contrary, it certainly is. The big difference is that when I'm creating software and am met with a situation where self-expression and utility conflict, I reconcile them with an emphasis on utility. In order for software to be beautiful, it must serve a function.

Re: Computer programming as an art (1974)

#3

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

> The purpose of art is to express one's self; the purpose of a craft is utility.

That is the clearest distinction I've seen yet between these. Thank you for that insight.

Re: Computer programming as an art (1974)

#4

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

A building serves a utility, yet can we call all architects craftsmen? Can we say that an architect is limited to the extents of the utility in design or do those constraints actually impose a new form of art?

Similarly, cinema is an art form, yet movies are built collectively by many craftsmen. There is no mutual exclusivity there.

I think, however, artistry of software comes from the design, not the code per se. The end product can be an artpiece, or a utility, depending on how its designed.

Let’s also not forget the pure art form of software: demos. What they are to the software is what sculptures are to the architecture.

Re: Computer programming as an art (1974)

#5
post #4

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

A building serves a utility, yet can we call all architects craftsmen? Can we say that an architect is limited to the extents of the utility in design or do those constraints actually impose a new form of art? Similarly, cinema is an art form, yet movies are built collectively by many craftsmen. There is no mutual exclusivity there. I think, however, artistry of software comes from the design, not the code per se. Th…

>I think, however, artistry of software comes from the design, not the code per se. The end product can be an artpiece, or a utility, depending on how its designed.

Which fits your building analogy. Architecture and design are artistry, welding steel is a craft.

Re: Computer programming as an art (1974)

#6

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

Indeed,

The thing about the OP is that while Knuth makes a survey of meanings that the term "art" has, it doesn't seem like survey captures the difference between craft, artisanship and art as they have developed historically.

I believe in art history, art as distinguished from craft develops as artists of note appear with sufficient that their works reflect an unique personal vision while still encompassing the skills of the craftsperson (this view has been implicit since fairly early art history - see artist and art-historian Giorgio Vasari[1]).

In this art/craft distinction, it would seem that, yes, computer programmers are solidly on the craft side. The computer programmer can very creative but the results of the programmers aim to avoid personal expression. Even a programmer who cobbles together a game in their own unique style of assembler doesn't want how the game was created to visible to the end user. Creating a games' design may an art but the programmer aims to make the implementation of the game completely invisible (in most instances, everything that appears from a game implementation detracts from play - pauses, artifacts, pixelation, etc).

The one thing about programming that differs from artisanship is that programmer can face a wider variety of challenges and be more often forced to create entirely new approaches. This is the realm of computer science and software engineering - it is a creative realm but creative in the fashion of the mathematician or scientist rather than the artist (as the artist has been historically distinguished).

[1] https://en.wikipedia.org/wiki/Art_history

Re: Computer programming as an art (1974)

#9
post #3

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

> The purpose of art is to express one's self; the purpose of a craft is utility. That is the clearest distinction I've seen yet between these. Thank you for that insight.

Scott McCloud defined it thus in "Understanding Comics": “Art, as I see it, is any human activity which doesn’t grow out of either of our species’ two basic instincts: survival and reproduction.”

Re: Computer programming as an art (1974)

#10
post #3

It's always a joy to re-read Knuth's work. For what it's worth I consider programming a "craft", and myself a "craftsman" - or, if you prefer, an "artisan". I'd say the key difference between what I see as "art" versus "craft" is the primary purpose. The purpose of art is to express one's self; the purpose of a craft is utility. Note that this does not mean that self-expression is not possible through craft; on the c…

> The purpose of art is to express one's self; the purpose of a craft is utility. That is the clearest distinction I've seen yet between these. Thank you for that insight.

It's not a particularly new insight, most of us have this idea through intuition and it seems to be popular in the philosophy of aesthetics - the question comes when we have certain items like watches or even beautifully written computer programs, or mass-culture "art" which arguably exists to serve the utility of making more money. There's even an art to writing well, but we could do with the utility of a bullet point list, etc.
Post reply on HN