Slashdot Mirror


Feature:Open Source as an Ant Farm

Occasionally someone submits a feature that really raises my eyebrow. Jack William Bell did just that by submitting 'Open Source as an Ant Farm'. Its a really interesting piece that talks about code as art, and much more. Its quite funny, and its got a lot to think about. Click now, you won't regret it. Open Source as an Ant Farm by Jack William Bell

Where Open Source is concerned, hyperbole from the digerteratti hype meisters proliferates nearly as quickly as the hyperlinks they hype. Let's face it -- Clapton has been deposed; Linus Torvalds is now God. And those pundits shouting his divinity the loudest can^Òt even tell a stack register from a walrus. I wonder if Jesus had the same problem?

This constant lionizing of Linus is getting on my nerves. I mean, he is probably a great guy and all (if you know what I mean), but a great man? Usually you wait until people are safely dead (and unable to further embarrass themselves) before heaping those kinds of laurels on their heads. If I was he I would start worrying about that strange human proclivity for taking our living idols down a notch once in a while. Or even nailing them to a tree. Not to mention burning at the stake, drawing and quartering and satirizin g on TV.

But I knew things were getting ridiculous this last week when I saw three different weblogs pointing to the same dumb article using variations on the same dumb caption: 'Open Source as an Art Form' . I mean come on, just because a bunch of nutzoid art types gives Torvalds an award for Linux doesn't mean that an operating system or a development model is art! Yeesh!

Not that I don't think of programming as art mind you. After all I am a programmer myself and I often like to compare what I do to the creation of art. A kind of raw industrial art perpetuated underneath the digital world by Morlo cks like myself while the Eloi cavort on the surface, unaware of the immense complexity (and fragility) of their world. In other words code is art, but it is exclusionist art. No more approachable to the everyday person than a Jackson Pollock work. And twice as incomprehensible!

After all if everyone could do it, it wouldn't be art, would it? It would be just another craft. And if everyone could appreciate good code the way I appreciate the Impressionists then it would be 'Classical' (read 'Dead') Art. Not something alive and thriving. Bubbling and fermenting and making funny smells the way the process of hacking out good code does.

But, you say, it is being appreciated just as you would like! After all, isn't that what the award was all about?

Well, no frankly. Not even close. In my opinion if you can't write good code you can't appreciate good code. At the most you can only appreciate the end result, the compiled program. And, while some programs are definitely 'art' in their own right, many others cannot be described as such based on their even visible-to-the-user external features. And Linux, while a work of art in my programmer eyes, is really just a kernel. A piece of code that, if everything is working right, the user will never see directly. Some of my peers would agree with this. Some will not. As always opinions are all over the map...

One poster on Slashdot tried to have it both ways when he opined "Which part of the programming is the art? Is it the code, neatly formatted, with creative comments and clever algorithms or is it the finished product? When you look at 'art' in a museum, all you see is the finished product . . . So which is the art? The code or the program? I personally think it's the program, and beautiful programs usually have very nice/efficient/clean code."

While another lamented "When the New Yorker compares Open Source to the Algonquin roundtable, the seventh seal will be complete and Microsoft will be free to release Windows 2000."

And another asks "So how is this art going to be displayed? Will art galleries have framed printouts of C code, or will they just give out Linux CDs?"

How indeed? Well, if you read the dumb article I mentioned above you will find the author's thesis is that neither the source code nor the compiled Linux kernel code is the issue, rather the art in question is the Open Source development model that built it! He bases this proposition the following facts:

  • China Youth Daily used the Microsoft consternation over Open Source for propaganda purposes.
  • The Open Source development model (as described by Eric Raymond) is about cooperation and participation.
  • Indian Potlatches were about cooperation and participation.
  • The Surrealists did some stuff that involved cooperation and participation.
  • A lot of twentieth century art uses 'quotation' (like painting soup cans or sampling 1970's Rock and Roll for Rap music) and 'quotation' is kind of like Open Source, isn't it?
  • John Myatt's art forgery scam was kind of like 'quotation' too! And it was kind of like art as well
  • When some people share a pseudonym to do wacky performance art, and then someone else uses the same nom de plume to crack a web site or to write an on-line 'tag-team' novel you have cooperation and participation and quotation and propaganda all rolled into one, with an Internet connection as a sweetener!

My first thought on reading the article was "Huh?" Then I reread and listed the salient points above and reiterated "Huh?"

Clearly Harvey Blume isn't a programmer. If he was I wouldn't trust him to code a 'for' loop based on his demonstrated grasp of simple logic. Nonetheless if he had simply stated that Open Source programming with the Bazaar model is 'Art' because he says it was art I would have much less to quibble with. After all art, like beauty, is in the eye of the beholder. Only he didn't. Instead he chose to defend his allegation using arguments that indicate he doesn't understand anything about the subject. In other words, I cannot say Mr. Blume is wrong, but I can state with near certainty that he is the wrong person to make the claim. He might be right, but for the wrong reasons.

So, assuming you can call a development model an art form -- how do you hang it on the wall? I would argue that it is already there. The main point about Open Source is that it is (wait for it) . . . OPEN! Duh^Å Unlike 'Closed' development the source code is available for all to see. And often the discussions between developers are available as well, archived on one list server or another. In the Internet sense you can't get up against the wall any more that that!

But what does the average art lover see hanging there? Open Source as an Art Form? I think not. More like Open Source as an Ant Farm! At most they will get a glimpse of we scurrying workers as we toil underground. But they will never, ever understand. As I said before, I am OK with that.

Non programmer types can present art awards for Linux or even Sendmail if they like, but it doesn't signify to me. In my opinion these awards mean nothing until they are given by someone who understands why the jargon file definition of 'Recursion' is funny. Until then I would rather they just threw money. Wouldn't you?

19 of 92 comments (clear)

  1. Re:What is art? by shine · · Score: 2

    If (a dead sheep in formaldehyde == art || a crucifix in a tank of piss == art)
    then
    mozart is not art and piccasso is not art and rembrant is not art and dega is not art and cezanne is not art and bach is not art, etc, etc

    But, IMHO, this statement is not true. A lot that passes for art is not art, it is eqo saying it is art and making you say that it is art also.

  2. Re:Art by jd · · Score: 2
    I'm going to argue this from a Software Engineering point of view, strangely enough. When you design a program, or whatever, using SE principals, you don't look at what you are making at the "functional" level. Rather, you describe the specification, and derive the function.

    The specification contains no "for" loops, no fopens, no mallocs. It is a sculpture, embodying the essence of what you are trying to make, without the details of what you are making. Most importantly, specifications are elegant and graceful, by necessity.

    But how does this apply to coding? Code is ONE possible implementation of that sculpture. There will be many ways to implement any given specification. The code you produce will be just one of these.

    The translation of that specification into code requires the application of imagination and taste. (If you implement it line-by-line, you'll produce slow, bloated code. Rather, it takes imagination to see what the specification is trying to say, and taste to choose how to implement that vision.)

    This gives you the second part of the definition of art ("The fine arts are those which have primarily to do withh imagination and taste") and meets the last requirement ("but the term is often confined to... ...architecture.").

    Can code be "beautiful", though? That's the one key requirement that's left. We've got everything else. To answer that, I'll ask "what is beauty?" If beauty involves everything working together (or not) in the way the artist intends, then code can be said to have that. Classical beauty is about symmetry and proportion. Structure, in code, gives a good approximation to these.

    So, by the dictionary definition, I can't see anything wrong with calling coding imaginitively "art". It seems to me to meet all the requirements.

    How about the OSS model? Well, that's slightly more complex. I liken the OSS model to the model used by Stoneage and Ironage storytellers. Each storyteller learned the most "recent" version they could find, adapted it to their needs, thus creating a new version, and singing or reciting that.

    Now, in terms of licence, concept and mechanism, the two models are practically the same. If one is art, then by implication, so is the other. (As I'm confining this to the MODEL and NOT to the product, I'm not going to look at the issue of what is produced by either.)

    This part is perhaps the most open to question, and I'll leave it for others to argue it out. However, whatever holds true for Bards holds true for OSS coders, and vice versa. If OSS coders are not inherently artists, neither were Bards.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  3. Re:Art by jd · · Score: 2
    Pseudocode is not a specification. It's a confused muddle, invented by software engineers who weren't bright enough to learn either Z -or- a programming language.

    That confused jumble by Cygnus would be barely usable, even if you had the time to study it.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  4. Linkfest by BluBrick · · Score: 2

    I'm sorry but I don't have the time or the bandwidth to follow all of the links in this article.

    --
    Ahh - My eye!
    The doctor said I'm not supposed to get Slashdot in it!
    1. Re:Linkfest by rde · · Score: 2

      I'm sorry but I don't have the time or the bandwidth to follow all of the links in this article.
      Neither do I. But I still consider this to be the ideal web-based article; links to everything, and you can follow up on whatever you're interested in.

  5. Art == Artifice by Skip666Kent · · Score: 2

    artifice \Ar"ti*fice\, n. [L. artificium, fr. artifex artificer; ars, artis, art + facere to make: cf. F. artifice.] 1. A handicraft; a trade; art of making. [Obs.]

    2. Workmanship; a skillfully contrived work.

    3. Artful or skillful contrivance.

    4. Crafty device; an artful, ingenious, or elaborate trick.


    Does it apply? I think so.

    This definition is exactly why I think works like "PissChrist" are NOT Art, but simply cultural provokation and sophmoric button-pushing. There's nothing clever OR skillful about it. The fact that we respond emotionally to something does not (alone) make it Art.

    --
    **>>BELCH
  6. Science v. Art by T-Ranger · · Score: 2
    In the most basic of generlizations, all endevors can be borken into science or art.

    Science is about discovery, research. If your findinng out how something works - its science. That could be astronomy, physics, math. I could also be reverse engineering somthing - in essence physicics are reverse engineering the universe. It can also be sitting on a pillow doped up just thinking - philosophy.

    Art is about creation. Taking what the physicsts and philosophers have come up with and making something out of it. It could be a bridge for CE's. It could be a symphony for musicians. And it could be code for programmers.

    It isnt, however a performing art, nor a graphic art (wtf do you call [paintings+sculptures+...]?). We generaly dont apperecate structures for there engeneering aspects. They might look good, but only other ring knockers can realy understand its structure.

    But the real distinction here is utility. One generaly gets some utility from a bridge or a program. The only utility you get from more traditional art forms is emotional and prehaps spirtualy utility. Using linux or the result of other open source programs dose not give me a warm and fuccy feeling. However, knowing how it was build does. The methods - open source - dont give me any practical utility, they do give me emotional utility thouugh. Therefor they can only be Art.

  7. Architecture? by jabber · · Score: 2

    It all depends on what we consider art then, doesn't it?

    After all, an uncommon work of architecture, such as the Parthenon, Notre Dame Cathedral, the Guggenheim (sp?), Chrysler bldg, or even some contemporary private residences are artistic.

    They are the realization of a unique vision, rendered in stone (or whatever) for all to see. Much like a great symphony, they immortalize their creator, or even become cultural cliche.

    BeOS and NeXT are certainly works of art in this respect. Linux is more like the Red Rocks, or the Grand Canyon. Shaped by the forces of nature and tailored by their environment. Art is the creation of a single vision, whereas GNU and Linux are more jargon than a piece of poetry. More or a common Bazaar minstrel than a Cathedral hymn, eh? But how many folk songs are considered art?

    Works of art often represent the culmination of an era or style, i.e. Gothic, Baroque, etc... By this token, a mid-70's hunk of GOTO ladden FORTRAN spaghetti is also a work of art. It's a reminer of the glorious splendor of our decadent past. Y2K anyone? Let them eat cake!

    We can draw a number of comparisons between software and building architectures. Take the mach kernel and the minimalist geodesics of Buckminster Fuller. Or the the massive 3rd Reich designs of Spier and OS/360 :). Or the Microsoft Wal-Mart minimalls...

    --

    -- What you do today will cost you a day of your life.
  8. The art of being a craftsman. by DHartung · · Score: 2

    I recently saw something that made a similar confusion -- alleging that historically, "art" was made by men, and women made only "crafts". The difference, allegedly, between painting and weaving.

    I didn't buy it then, and I don't buy it here. The historic status of craftsmen was high. The respect given a blacksmith or a stonemason was in proportion to the quality of their work. (Try to get a decent tuckpointing job these days ... but that's a different story.)

    The difference, then, was between art being something luxurious and unnecessary, and yet an expected part of life, and craft being the art, as it were, of making necessary things unexpectedly well. To me, programming falls into the latter camp. And that is a mark of respect.

    A good coder is a good craftsman. The code does something necessary (the end result) but the virtue of being good code is not necessary to that end result -- it is simply doing the necessary well.

    Open Source may help this process along, encourage it, even make it practically mandatory in certain circles. Of course, Open Source isn't the only way to get there. Good craft comes from within, from the personal pride of the craftsman, from the knowledge that his skill is something special.

    --
    lake effect weblog
    {Network engineer in Chicago--looking for work!}
  9. What is art? by rde · · Score: 2

    The question has been asked for centuries, about pretty much everything. If a dead sheep in formaldehyde can be considered art (not to mention a crucifix in a tank of piss), then why not code, or even the open source paradigm? (sorry for saying 'paradigm'; it won't happen again). Whether you consider it art is a personal thing. Me? I don't, but I'm willing to listen to people who want to convert me.
    As for the apotheosis of Linus; every cause needs a figurehead, and it's natural for some to place that figurehead on a pedestal. It's no biggie.

  10. Re:Art by WNight · · Score: 2

    Almost anything we do can be done quickly and haphazardly, or carefully and elegantly. What makes one elegant work art and another not? Functionality.

    Most people are pompous asses and refuse to call something art if it has the slightest use. Can you use a dead sheep in a tank except as a footrest (or sex object for programmers. :) No, so it's art. Can you use a well-designed bridge? Yes, so it's 'just' a bridge.

    Code is one of these functional items. Except perhaps for tiny snippets in a textbook, we expect code to work. The most beautiful 'looking' code is totally worthless if it doesn't work, and well, and people would praise line-noise if it was an efficient kernel when run in intercal (not that this is likely...)

    Contrast this to 'art forms'. FLW's architecture had many groundbreaking elements, but was also a failure in many ways. If it was a program we'd see it as a nicely indented example in COBOL (worthless) instead of 'Art'. This is because programming isn't seen as artistic and is judged primarily on getting the job done. Only if code is as fast and robust as reasonable, do we start looking for elegance.

    In the 'art' world, elegant failures are still successful. In the real world, failures are failures, elegant or not.

    So, art is something which has no use. People have a hard time seeing art in anything which actually does something useful, and are also willing to overlook nearly any failings in something called art.

  11. This is art?! by Sun+Tzu · · Score: 2

    The C code that produced this is definitely not art! However, not all of my code is so artless. ;)

    Seriously, I believe that code is art. At least some of it... and that has to include Linux!

  12. Re:Code is Art if it is never compiled by jflynn · · Score: 2

    What about kinetic art? That often has to be designed and debugged, and to some degree aesthetics have to be ruled by functionality.

    How about architecture? Function is every bit as important as aesthetics there, maybe more, but some architecture has to be viewed as art as well as engineering, I think.

    There isn't a definite boundary line, some things are artier than others in some peoples opinion.

    In fact if code is designed to be elegant and appealing, sound in structure and fit to purpose, isn't there an aspect of art to it? Don't try selling microfiches of Linux source at any art shows, but lets give the creators some credit for aesthetics as well as engineering.

    How else can you explain the nearly universal rejection of Hungarian notation "because its ugly"?

    Jim

  13. Linus deserves the admiration ... by Get+Behind+the+Mule · · Score: 2

    ... it just shouldn't be exaggerated.

    People like Linus, Larry Wall and Richard Stallman have become something like heroes among geeks, and I think there's nothing wrong with that. After all, what they have accomplished is quite remarkable. And I really don't think most of the geeks take it too far.

    But because of the success of Linux and its potential threat to MS's dominance, the media have caught on to Linus Torvalds, and I think they make it a bit ridiculous sometimes.

  14. Arrogance. by truthgun · · Score: 2

    Why can art only be appreciated or even recognized by the initiated?
    It is possible that I don't understand the brilliance behind a working application but I can still percieve it as a fine piece of work. Of art even, as it seems to outshine all other applications with it's ability to get things done.

    Admiration from your peers is always more desireable, but to disregard every one else's is quite arrogant. Don't you think?

    Tina.

    --
    Sattinger's Law: It works better if you plug it in.
  15. The Artist Never Forgets the Act of Creation by m0ng00se · · Score: 2

    All the debate flying around! My my. Is coding art? Ask yourself... are you an artist when you code or are you an engineer (or both?) If the answer is yes, then your code is art... maybe not to anyone else but YOU... but since when does the feelings of the scads of faceless people mean anything to you personally? If ya wait for the masses to tell you if what you made is really good or not...that means you never asked yourself...

    --de m0ng00se

    --


    Is madness a syptom of genius or vice-versa?
  16. Re:Art by SirSlud · · Score: 2

    >Almost anything we do can be done quickly and haphazardly, or carefully and elegantly. What makes one elegant work art and another not? Functionality.

    Not true. Ask any art teacher and s/he'll ask you what makes you think this. Art, I think, in it's simplest definition is best identified by asking the creator of said piece. ("Is it art?" "Yup", "It looks nice, is it art?" "Nope, but I did design it to look nice.") Only the creator truely has a handle on the original intent of the piece.

    There no reason to believe a dead sheep in a tank is art unless it's creator says so. And even then, it sounds like bad art, unless the creator can justify it's existance. But art, as with music, dance, etc relies on a set of referances or 'school', and often employs certain tehniques and modes of thought. At it's simplest, it can be something that looks nice. As it becomes more complex, presumably, it has something to say about the world around us. Certainy art can be functional, but in this case said functionality is often a comment of the piece's surroundings all it's own. A bridge can be art too, but only if you design it as such. If you don't give a rats ass as to what it'll finally look like, and you design it just to work, it ain't art. I don't really consider anything art unless it has something to say about the world around us - after all, this was and I believe still is the primary intent of art. To act as a sort of societal 'mirror', to look into a frame and see how someone sees us back.

    So now programming ... how do we treat it? When you sit down at your computer to write some code, you have no intent to make social commentary; this I'll take on faith. You do employ skill, and often employ a 'style', and obviously there is an infinate set of possible blocks of code you could come up with to solve any given problem. But that's just it - you sit down to solve an initial problem, and design your code around how this problem might change in the future (extensibility of code). You're primary intent is to solve a given practical problem. I charge that this is not the case with the vast majority of what I've been referring to as art. I'm not saying art doesn't have to be functional, but I /am/ saying it should have something to say to the viewer. Taking your argument that coding is art could also be used to call carpentry an art, or cooking an art. In fact, often these types of skills /are/ called art, and I have no problem with that. But this is using the term losely, as the primary goal of both trades is to provide a solid, long lasting structure and tasty, interesting food. While they may both be done in such a fasion that the asthetics are pleasing to look at, and that the process employs originality and creativity, their primary goal is not to comment and critique the world we live in, nor 'just to look nice'. And thus I argue that they, along with coding, are not approrpiately referred to with the term 'fine arts'. Sure, just like we use the term "the art of war", there is also "the art of coding." I'll concede this.

    So maybe I can sum it up: "Coding is an art, but code is not art." Does that make any sense?

    --
    "Old man yells at systemd"
  17. Art by SirSlud · · Score: 3

    "art \Art\ ([aum]rt), 4. The application of skill to the production of the beautiful by imitation or design, or an occupation in which skill is so employed, as in painting and sculpture; one of the fine arts; as, he prefers art to literature." .... "The fine arts are those which have primarily to do with imagination and taste, and are applied to the production of what is beautiful. They include poetry, music, painting, engraving, sculpture, and architecture; but the term is often confined to painting, sculpture, and architecture."

    In so far as this little blurb from www.dictionary.com, and I do assume here that everyone is trying to ask if coding is a "fine art" rather than the more general application meaning learned skill (ie academia).

    I'd have a hard time being convinced programming is an 'art'. A builder can make a beautiful bridge, using ingenious methods, to form an athetically pleasing, safe way to cross a river, but we rarely refer to the process of designing it as 'art'. I'm not sure why coding would be any different. Granted, I accept the fact that one can find a piece of code 'beautiful', but more often than not, the primary purpose of coding is to implement functionality and practicality, where as in art, the asthetics are generally more important than the functionality of said art piece (although, as with everything, there are walways exceptions).

    --
    "Old man yells at systemd"
  18. don't get it? by G27+Radio · · Score: 2

    From the essay: "In my opinion if you can't write good code you can't appreciate good code."

    Do you really believe this? Haven't you never read someone else's code and learned something from it? Or is it that you did, but didn't appreciate it?

    Art or not? Only the person looking at it can answer that question. Those who see the beauty are enriched and those who can't see it deny it's even there, possibly even rant about the people who do see it in extreme circumstances...

    numb