Forgot your password?
typodupeerror
Programming The Internet IT Technology

Programming As Art — 13 Amazing Code Demos 210

Posted by Zonk
from the i-know-it-when-i-see-it dept.
cranberryzero writes "The demo scene has been around for twenty years now, and it has grown by leaps and bounds. From the early days of programmers pushing the limits of Ataris and Amigas to modern landscapes with full lighting, mapping, and motion capture, demo groups have done it all and done it under 100k. To celebrate this art form, I heart Chaos takes a look at thirteen of the best demo programs on the web. Flash video links are included, but it's more fun to download them and give your processor something fun to chew on."
This discussion has been archived. No new comments can be posted.

Programming As Art — 13 Amazing Code Demos

Comments Filter:
  • Second reality (Score:5, Insightful)

    by ccguy (1116865) * on Tuesday January 29, 2008 @11:44AM (#22221870) Homepage
    I think any serious demo list needs to include Second Reality.

    While obviously there are more impressive demos from a graphics point of view (since SR is 15 years old), I'm still to see one with a better soundtrack and a better integration of video and audio.

    Skaven's music is still one of my favourites - I wish it was properly resampled, as obviously S3M and MOD are a bit outdated :-)
  • Re:Second reality (Score:2, Insightful)

    by terrahertz (911030) on Tuesday January 29, 2008 @11:58AM (#22222050)
    I had to grimace when I didn't see Second Reality as well...but then I noticed the writer qualified the collection with "of the last few years."

    I've always been partial to Purple Motion, some of the two-channel modules he did as an exercise really withstand the test of time, despite the self-imposed technical limitations. All the FC music was exceptionally high quality overall though, IMO.

    I don't know what "resampling" or changing formats would do for the old module music, as you can't increase audio quality beyond the original source bits, you can only subtract through "downsampling." S3M even supports 16 bit 44.1 stereo samples, so despite the long-in-the-tooth standard, it's possible to use it at a fidelity level comparable to today's audio work. Many people never employed it near that quality level in the 90s though, for many obvious reasons.
  • by Lemmy Caution (8378) on Tuesday January 29, 2008 @11:59AM (#22222056) Homepage
    I don't think it is "programming as art" as much as it is "making art through programming", because the art-object - the thing that we are looking at and appreciating - is the execution of the program, not the source-code itself. We can be impressed at the skill and ingenuity of writing the program within the space confines that each demo category produces, just like we can be impressed at the self-imposed restrictions of Dogme 95 film-makers. Those restrictions are orthogonal to the effectiveness of the demo itself, though.

    The programming is the how of the art work. But just like we can think of painting as art without thinking of "brushstrokes as art", we can think of software as art without calling it programming "as" art. I do think it is possible for source-code itself to be a work of aesthetic appreciation (granted, with a somewhat limited audience, but then all audiences are limited) but that's not what this is.
  • Real Programmers (Score:1, Insightful)

    by Anonymous Coward on Tuesday January 29, 2008 @12:05PM (#22222112)
    These folks are 'real' programmers, not affraid to learn the capabilities of the hardware, and push it to the limit [and then some].

    Programmers today are nothing but typists compared to these folks, most are content to 'let java do it for me', and ignore 'the hard stuff' in favor of letting the compiler or language baby them, or simply abusing the hardware [everyone has 1gb of ram, and 1 2Ghz CPU, so I'll just use this slow sort routine...].

    Don't worry about optimization, let the java JRE do it for you...yeah, let me know when you can code something of that level in java...or even C++.
  • Re:Muxlim (Score:3, Insightful)

    by sg_oneill (159032) on Tuesday January 29, 2008 @12:06PM (#22222138)
    Shocking! People with different religions to you! What is the world coming to?
  • by Anonymous Coward on Tuesday January 29, 2008 @12:15PM (#22222248)
    Of course programming is an art. By your logic, painting, sculpture, literature or music could be described as engineering. While a fair amount of so-called art has no artistic merit; many engineered pieces do.

    To say that engineering must by definition be devoid of artifice is to admit to being a bigoted philistine.
  • Re:256byte demos (Score:5, Insightful)

    by pclminion (145572) on Tuesday January 29, 2008 @12:16PM (#22222250)

    If you consider optimizing the crap out of something which is ultimately pointless, to be somehow comparable to what real programmers do, I suppose.

    I used to write these things back when all I wrote in was assembly language. It's cool, it's fun, it's a puzzle and a challenge. Comparing it to "modern programmers" though is sort of like comparing a Sudoku expert to a professional in applied mathematics. The Sudoku expert will probably outclass the generalist at Sudoku but I wouldn't describe it as putting the mathematician to shame, nor would I trust the Sudoku expert to work out some difficult integrals for me.

  • by OldSoldier (168889) on Tuesday January 29, 2008 @12:18PM (#22222282)
    I am a bit disappointed in this article. The subject made me think of some really beautiful pieces of code that I've seen in my life. Breseham's algorithm http://en.wikipedia.org/wiki/Bresenham's_line_algorithm [wikipedia.org] which is an integer arithmetic method of drawing a line on a computer monitor. I would love to have seen 12 more such examples of "artful code" but instead I get a link to a slashdotted article which appears to contain interesting 3D scenes and maybe animations done with older hardware. Boring.
  • by moderatorrater (1095745) on Tuesday January 29, 2008 @12:20PM (#22222312)
    I disagree. Sometimes the beauty is the final product, sometimes the beauty is the method of making the final product. I remember seeing a program that would open itself and then edit itself so that it would print out its own source code where, at first glance, it looked like a simple string parser. Printing out its source code isn't art, but the way it was done does qualify it as art.

    For something like Unreal Tournament or Half Life or Super Columbine Massacre: RPG!, the end product is what required the skill. For a 100k program to show graphics as good as an XBox game with a fully fleshed out level and multiple weapons, the skill is in the code itself, so that's where the art is.
  • Re:256byte demos (Score:3, Insightful)

    by KillerBob (217953) on Tuesday January 29, 2008 @12:44PM (#22222726)
    Optimizing like that isn't all that comparable, no. But it's a really great way to learn how to code stuff that's still zippy even on derelict hardware. In a world where operating systems like Vista are becoming norm, I'd think that kind of skill is one people should be learning, no?
  • by techpawn (969834) on Tuesday January 29, 2008 @01:12PM (#22223204) Journal

    I maintain that the code itself is art.
    Part of what I do is code review. I've seen some very elegant code and I've seen some very bad hack jobs that just get the job done....If it's not up to par I send it back to be rewritten.
    In that statement you've likened me to an art critic... I'll just haul off and pop a few in my skull, making the world a better place for all.
  • Re:256byte demos (Score:3, Insightful)

    by CastrTroy (595695) on Tuesday January 29, 2008 @02:40PM (#22224508) Homepage
    The source code probably never existed. A lot of this stuff was probably done in assembly. I guess the original assembly code would have some comments, but actually understanding it would still probably be extremely difficult. And even if you did, a lot of it wouldn't be applicable to programming in anything other than assembly.
  • Re:Second reality (Score:1, Insightful)

    by Anonymous Coward on Tuesday January 29, 2008 @03:15PM (#22225054)
    You have a very non-specific definition of "only marginally degraded".
  • by Lemmy Caution (8378) on Tuesday January 29, 2008 @06:10PM (#22227638) Homepage
    There is a difference between skill and art, a big one. Like I said elsewhere, this is a case of skillful, even virtuoso programming being used to create software art.

    If they publish the code and show us that, then that becomes programming art. But although the constraints were programmatic, the demo is evaluated and appreciated based on its output. I actually think in the above case that you suggested that the source code itself was art, as the idea of the work was directly contained in it.
  • Depends where.... (Score:3, Insightful)

    by DrYak (748999) on Tuesday January 29, 2008 @06:44PM (#22228084) Homepage

    If you consider optimizing the crap out of something which is ultimately pointless, to be somehow comparable to what real programmers do, I suppose.


    It's not pointless.

    Yes, optimizing the crap out of some assembly loop aren't popular anymore in mainstream programming for the past several years, mainly because there are much more automated tools that can do quite a good job at optimising or analysing code and warning programmer about mistakes (something that would previously had required deep knowledge of the architecture). ...BUT, it's just that the "optimizing" task has been moved to some other newer front line.

    Such weird skills are still valuable nowadays with embed electronics (where fast processor and big memory is un-available luxury) or tight loop in graphically intensive games (where no matter how much the hardware is fast, mad optimizing is still a very welcome increase of performance).
    Or the whole GPGPU field which is still new and still requires a hell lot of optimisations by hand (CUDA, for example is much more lower level than even C and requires much more hacking and optimizing to squeeze out the most performance of code).

"Well hello there Charlie Brown, you blockhead." -- Lucy Van Pelt

Working...