Forgot your password?
typodupeerror

LiveCoda, Real-Time Coding Competition 95

Posted by timothy
from the mad-max-with-keyboards dept.
Robert Shelton points out this "debrief" from ESCI LiveCoda 2006, a live programming competition. From the article: "On Wednesday the 24th of May at Loop Bar in Melbourne (Australia) fourteen teams of programmers gathered for the first ESCI LiveCoda real-time programming competition. Possibly the first performance based real-time programming competition. Before a packed night club with live music, each team had just ten minutes to write a program which could correct a corrupted image." (Here's a mirror of the LiveCoda site).
This discussion has been archived. No new comments can be posted.

LiveCoda, Real-Time Coding Competition

Comments Filter:
  • Next, can we have Sergei Brinn found passed out in the bathroom stall with six hookers?
  • by Black Parrot (19622) on Thursday June 15, 2006 @12:21PM (#15540804)
    Why this fascination with speed?

    When are people going to start programming contests where the award is given for something that's actually useful, such as fewest bugs, most readable, best re-use of existing code, etc?
    • by Ed Avis (5917) <ed@membled.com> on Thursday June 15, 2006 @12:26PM (#15540872) Homepage
      Competitions already are judged on 'fewest bugs'. Indeed, some competitions disqualify any entry that has any bugs found in testing. But all the other criteria you suggest are subjective. I think speed is a pretty good judge of programmer ability; someone who can hack up a correct program in 10 minutes stands a good chance of writing a correct, clear and maintainable program in an hour.
      • Wow... I agree... But in ten minutes, is it even possible to gether your ideas? Because it seems that all there is time to do is to hit the ground running with this competition!
      • I would definiately have to agree with you on this one. Speed may not be the ONLY representation of coding abilities, but it is a good benchmark. A combination of several factors obviously should be considered when programming in an enterprise environment, but for competition-sake, what is wrong with judging based on speed?
      • Competitions already are judged on 'fewest bugs'.
        That competition is called the free market, with the obvious exception of Windows, of course.
      • by SpeedBump0619 (324581) on Thursday June 15, 2006 @01:33PM (#15541470)
        "someone who can hack up a correct program in 10 minutes stands a good chance of writing a correct, clear and maintainable program in an hour."

        Patently false, for a number of human reasons:

        1) Programmers are are fast are generally easilly bored. This leads to wandering focus.
        2) Programmers who are fast often approach problems in a strange way. This can lead to convoluted and confusing implementations.
        3) Programmers who are fast rarely see value in commenting. Why comment when I can rewrite faster than I can reuse?
        4) Programmers who are fast are usually impatient, and don't work well with teams. I *like* this competition because it has some focus on teamwork, but I'm generalizing.

        For such simple problems as are being solved in this competition most of these problems aren't problems. But all of these things will eventually lead to unstable, unmaintainable codebases. I'd prefer to have someone who is good at code re-use, who is good at seeing the complex parts of problems and who is good at getting the right architecture the first time. None of these things are tested in this competition.
        • by Anonymous Coward
          Those are staggering generalizations. Your conclusions are nonsense. Programmers who are fast are generally, well, fast. To deduce that every single programmer who has the ability to pick up and solve a problem quickly becomes bored easily is ludicrous. I realize this may be painful to accept, but the fact that the world supports thousands of programmers more quick-witted and capable than you are does not mean that they are all short of attention and inferior in some way. Some programmers who solve a proble
        • I agree completely. Giving someone a simple problem to solve and saying "solve it as fast as you can" isn't a good measure of ability at all. It promotes too many bad habits into what might be considered good programming.

          The parent poster's name is SpeedBump, and that's exactly what a real programming competition should have: speed bumps, hurdles, obstacles. Here's how I envision it: give the teams a medium difficulty problem to solve. The judges act as clients. The teams have a given period of time
        • by Poltras (680608)
          Sorry, but as a guy who did a couple of programming contests (both ACM and some homebrewed), and can largely be considered as someone who _can_ code faster than average, I must say you're wrong. It is not the case of most of the people who participate in these contests because we often need a better preparation and better structure so that we can code faster, we are normally more intellect and can see the need to reuse (instead of most people on just are not smart enough to design good in the first place, a
      • Sorry. I can't agree.

        Having spent 20 years in the programming profession, I've worked with a lot of programmers. The speedy ones are usually exceptionally smart, but their code is completely unmaintainable, no matter how much time they are given to write it. If you work any time in industry, you'll know that 90% of your life is maintaining or improving upon code that others have written, so the speedy ones actually hurt overall programmer productivity for the team.

        I'll take a slow and methodical programm
        • The counter-generalization: The speedy ones are usually exceptionally smart, but their code is completely unmaintainable, no matter how much time they are given to write it, because the other 9/10ths don't understand the code enough to maintain it. Of course this is the fault of the 1 smart programmer. Why? because they are outnumbered 9 to 1. The exception? when the smart programmer becomes VP of engineering.

          I know plenty of smart, fast programmers that write clear code and follow the rules. Sometimes th

    • Their design and development (and to some extent their marathon and multi-threading) competitions all allow much less restrictive timelines, and use very "real-world" problems (in fact, they sell the results of the design/development work). There's substantial prize support, and potential for royalties on the software you develop. They're evaluated by real people who look for bugs, run tests, and reward efficient, readable code.

      But most people prefer competing in the algorithm competition (which are an ho
    • Bug-free programs are a nice idea unless you're trying to make money from them.
    • "Why this fascination with speed?"

      Most jobs depend more on one's ability to meet deadlines.
    • You mean, like the ICFP Programming competitions [plt-scheme.org]?
      They often exercise a number of different ideals. The most recent one featured code reuse/flexible design as one of the primary goals.

      Of course you're almost always going to have some element of coding speed featured in these contests as, well, they don't want to wait a year for the submissions to start rolling in.
    • When are people going to start programming contests where the award is given for something that's actually useful, such as fewest bugs, most readable, best re-use of existing code, etc?

      There's no point to it, the best has already been done [ioccc.org] - I can't find any bugs or anything confusing in the source (somewhat ironic considering that the 'O' in "IOCCC" stands for "Obfuscated").

      Well, maybe not re-use of existing code but one could very easily apply the source to any application with minimal impact to a program
    • It wasn't so much a fascination with speed as an attempt to (to quote from the debrief) produce an instance of "collaborative performance art". While I didn't make it along on the night, from all accounts it was quite impressive to hear the cheers go up when a team managed to solve the problem within the time limit. The nature of the problem, and Rob's setup, which I believe provided an update of the most recent compile's image output every 10-15 seconds, turned programming into a spectator sport. And no
    • so is this really what we need? for people to believe that they should focus on slow, perfection?

      heh, i focused on quality and speed, but sucked at both :) guess that's why i'm living in my parents house instead of some nice big house somewhere.
    • Such a contest exists....it's called your job.
    • "Best reuse of existing code" has been done in at least one programming contest:
      http://icfpc.plt-scheme.org/ [plt-scheme.org]
      According to some of the postings on the mailing list it didn't work too well though.
    • The fascination with speed for me is how much "work" can be produced in a collaborative real-time environment. In particular for computer performance with languages such as SuperCollider [audiosynth.com] or Chuck [princeton.edu]. Also, it is fun to watch programmers battle with logic under pressure. :) Cheers, Rob.
  • But the article has poor documentation and no side by side examples. This makes no sense. It sounds like a cool idea, but the article doesn't give details that would be useful to us. God bless modern blog style journalism!
  • ... like real-time cartoon animation, it's going to be a sight to behold. Killer on the animators though - I hope the programmers fare better - best of luck!
  • The first? (Score:5, Funny)

    by bsartist (550317) on Thursday June 15, 2006 @12:24PM (#15540836) Homepage
    Possibly the first performance based real-time programming competition.
    In my day we called those "job interviews", and first prize was paid out in weekly, bi-weekly, or monthly installments.
  • Geeks? (Score:5, Funny)

    by Ramble (940291) on Thursday June 15, 2006 @12:24PM (#15540845) Homepage
    In other news geeks have been spotted in a bar near Melbourne, it's rumored to be the first documented case of geeks in an alcoholic establishment and will provide scientists with invaluable data on the migration habits of Australian Spotted Geek (Geekus Oceanus).
  • by Life700MB (930032) on Thursday June 15, 2006 @12:27PM (#15540876)

    9) Will I have access to a Dvorak keymap?

    Yes.

    10) Were you really asked about Dvorak keymaps?

    Yes.


    --
    Superb hosting [tinyurl.com] 20GB Storage, 1_TB_ bw, PHP, mysql, ssh, $7.95
    • I'd say it's a valid question. Although I'm fluent in both QWERTY and Dvorak and have about 90% of my Dvorak speed in QWERTY for most applications, if you sit me down at VIM with a QWERTY keyboard and tell me to whip up some C++ code, I'm like a retarded monkey. I start out by typing "Z,", and within 5 minutes I'm so confused I start punching myself, crying "WHY DOES MY FACE HURT I DON'T UNDERSTAND NOTHING MAKES SENSE"

  • by kay41 (894758) * on Thursday June 15, 2006 @12:27PM (#15540878) Homepage
    I shutter to think of the pickup lines that were spoken throughout the evening. After all, us programmers are foreign to this "club" environment. What is this "music" you speak of anyway?
    • by MrAnnoyanceToYou (654053) <dylan&dylanbrams,com> on Thursday June 15, 2006 @12:43PM (#15541007) Homepage Journal
      "Me so Hooorney. Me drool you long time. Computer Fixey Fixey five minutes."
    • I take offense (sarcastic offense, but offense none-the-less) to that comment.

      I have been a programmer for over a decade, a proud geek for 15 years.

      With that being said, I have also been a resident DJ here in Columbus, GA for nearly 8 years. There are a LOT of geeks that love the club scene and dance music. Programming to me is a lot like running a live mix-set....take components of varying complexity & origin, then blend them together to create a good program (set). In programming, the desired out
      • Also, in my most humble opinion, it is immoral to write software unless you have some Paul van Dyk, Tiesto, or at least some Ministry of Sound in the CD/MP3 player, anything else would just be WEIRD.

        Not familiar with those. I usually work best with Eric Johnson and Blues Saraceno. Few, if any, vocals to distract the mind, variation in tempos (kicking adrenaline all the time doesn't work, long-term), fairly complex and somewhat repetitive.

        Tried a variety of other stuff. This just happens to be what works

      • Columbus, GA? I'm sorry. P.S. Do you work at Ft. Benning?
  • Oh my God - this is SO uncool.

    A geek flexing his mental muscles is still a geek; girls will still put him in the friend zone.

    • A geek flexing his mental muscles is still a geek; girls will still put him in the friend zone.

      Geeks don't have to be socially/relationally undesirable. The problem that many geeks have is they don't get out enough to gain the social intelligence necessary to avoid the occasional faux pas that labels them as "odd" for the remainder of the conversation. I have a few theories on why geeks have a hard time in social situations:
      1) Geeks spend a lot of time interacting with people online, which is different fr

      • Geeks spend a lot of time interacting with people online, which is different from face to face communication in two very real ways. First, there are no facial expressions or body language online, and most people have learned to compensate for that with more descriptive "speech" that outlines both the concept and the speaker's feelings on the matter. Emoticons are pretty useful, actually. The effect of this is that geeks are often accustomed to being aware of the other party's feelings without having to read

  • Personally (Score:4, Funny)

    by celardore (844933) on Thursday June 15, 2006 @12:50PM (#15541077)
    Personally I can think of better things to do in a nightclub, with live music.
    And, if I'm in a nightclub chances are I'm in no fit state to do any coding. Actually, I've had an idea - a coding competition where you have to drink eight beers first!
  • by Anonymous Coward
    Conventional wisdom has it that one can write code faster in a language like Python than in C for instance. The results of this competition don't seem to support that contention. Of course, it could have been that the weaker programmers would naturally choose Python ...

    btw. I mostly use Python for my desktop apps and C or assembler for embedded work.
    • by Fahrenheit 450 (765492) on Thursday June 15, 2006 @01:29PM (#15541423)
      But for something like this, you're mainly limited by the contestants' familiarity with the problem domain.
      With this particular competition (which looks to consist of reading in a simple image format, like PPM then applying a couple of simple transformations then writing the new file back out), the code isn't going to be too terribly different between most languages, and therefore the higher expressiveness of something like Python or OCaml wouldn't really get a chance to shine.
      • I was going to say something similar. When banging on pixels, you're not really using any advanced language features, whether your language of choice or C or Python. You pay a huge cost in interpreter overhead, however. I'd never write low level image processing code in Python, even though it's the first thing I turn to for zillions of other tasks...
  • Not the first (Score:3, Informative)

    by Sarlok (144969) on Thursday June 15, 2006 @01:28PM (#15541405)
    Anyone else ever heard of the ACM International Collegiate Programming Contest? A live programming contest based on # of problems correctly solved in the least amount of time. Lots of fun.
  • Ha.... (Score:2, Funny)

    by xCROSSFIREx (976937)
    wow...is there really nothing else for them to do in their free time?

    "hey bill, what are you doing friday night"
    "i'm gonna go out clubbin'....what about you?"
    "Ermm....uhmm...i'm gonna go see how fast i can write a program....but it's at a club...."
    "Dear lord...you're even more of a geek than i thought you were..."
  • "Possibly the first performance based real-time programming competition"..

    My best friend back in high school's school was involved in a multi-school real-time programming competition.

    12-16 years ago.

    • I remember doing this back in high school on Atari 400's. Let's just say programing for speed on a membrane keyboard was the biggest challenge of the competition.

      I guess they mean "Possibly" in the sense that they're just being pretentious.
    • I'd be interested in links for this (from a history point of view). History in terms of live coding [wikipedia.org] such as [wikipedia.org].

      cheers, rob.

  • by enos (627034) on Thursday June 15, 2006 @02:15PM (#15541970)
    I went to this thing for a little bit, and while nifty, I don't see why thousands of geeks need to know about it...

    Anyhow, it went down like this: four machines with an editor common to all of them, with teams of 2-4 people. They were given a 200x200 image file consisting of simple rgb triples. (200 100 50\n100 133 212 etc, real simple). There was a transform done to it that they had to reverse. The ones I saw were some color rotations/swaps and rotations in increments of 90 degrees. The program had to read in the file, invert the transformation, and output the correct image in the same simple format.

    The teams could pick whatever language they wanted. I saw C, C++, Python and Java before I got bored and left. The admins had a system set up that it would compile the code at certain intervals and print out the errors on the screen, or the resulting image if it compiled successfully.

    The teams didn't really have trouble writing the code. It was no longer than a screen worth, and they seemed to get that in about 2.5-4 minutes. They spent the rest of the time trying to figure out what the transformation was. They'd try 10-15 different color rotations/swaps combos before the time ran out. They didn't get the correct image in advance, but they were all photos from around the Melbourne area and it was easy to tell what it should be.

    If I had heard about it with enough time in advance I would have taken some friends and entered... ah well.
    • Forget the coding crap. Who cares? Tell us about the nightclub..
      • Located in a dark, dark alley (normal for Melbourne..), it has a bar, DJ, and a side room with a big ass projector. Filled with local geeks with the male/female ratio you'd expect from such a group (I didn't help there...)
    • I was there for the whole night and only one team had managed to finish before you left - in fact only 2 teams finished the problem on the night.

      I had a quick go in awk (solo) after the end of the night and in that language, which is DESIGNED for dealing with columns of text, means you can solve any of the problems presented in a couple of minutes.

      It's pretty clear you weren't there for long as your summary is not that close to what happened, though your description of the problem is spot on.

      Most solutions
      • I was towards the back and didn't have a clear view of the eMac screens, but I didn't think I saw them scrolling.. Ah well. I got there when the C team (i think) finished in around 6:30 with the pic of what looked like Flinders Street to me. I left 2 or 3 teams later, so yeah, I wasn't there that long (meeting peaple later).. Haha, I guess the images weren't all of Melbourne, but the ones when I was there were..
  • I've been day dreaming of doing something like this with Mode 0x13 VGA game development for almost a year now. I have a few different ideas for the details, but basically a tournament that run 3 sessions over a weekend (Saturday late-morning through afternoon, Sunday morning, Sunday afternoon/evening) ending with live music and awards party Sunday night.

    I have a place picked out and could organize it, the entry fee would cover the venue and the pot. The rest I'd cover out of pocket unless co-organizers wo
  • I actually attended and competed in this event. I had a blast and thought I'd give you all a bit more of an insight via my experience of the night... I'm a final year computer science student, I organised 2 friends from other uni's and another one of thier fiends (4 total) into a team. None of us had ever entered a programming contest before some of us hadn't even met before the night. In the end despite our nerves we all ended up having a ball with the actual task and enjoyed socialising with the other co
  • except to ADD gamers.

    Quality not quantity is what counts.

    How about a programming contest where you get 6 months, and the winner is the program
    judged most elegant, applicable, comprehensible, extensible, and all the other ibles.
    Oh, and has the cleverest recursive acronymic moniker of course.
    • Sounds lime a fun contest. Though obviously with different objectives to LiveCoda. Your suggestion would be a good test of coding ability and promote strong realtionships within the team, whereas LiveCoda was more about trying something new where the focus was not so much on the technical aspects as the social interation between everyone in attendance on the night.
  • Possibly the first performance based real-time programming competition.

    In what way is this new? There's the ACM ICPC [baylor.edu] for students, TopCoder [topcoder.com], and the Google Code Jam [google.com], which have been around for years!

    Am I missing something about this competition?

A computer scientist is someone who fixes things that aren't broken.

Working...