Innovation Visualized A Wiki-like Open Source Programming Contest November 7, 2005 Ned Gulley The MathWorks, Inc.
I started Monday after work. I worked late, but not very late. Let's say 4 or 5 hours. The following days I had to work, but I started to become "obsessed". At home, although I am a father of three children, my full-time job was working on the contest. I didn't sleep much. I worked maybe 10 hours after work each day. On Thursday it was clear that I wasn't going to be able to work seriously (for my job), so I took a day off on Friday. Stijn says…
Nathan says… Well, this is my first MATLAB contest and it is giving me far too much enjoyment. It's one of the most addictive and compulsive things I have tried. The exercise is improving my programming skill - true - but in return I have a neckache, a backache, a terrible diet, no social life, and not much of a work life either. Also, I have experienced physical trembling while making the final preparations to submit code. Is that normal?
How does the contest work? Visualize results
What is MATLAB? A matrix-based language suited for algorithm development
Contest goals Entertain Foster community Encourage the exchange of good programming practices
Contest features Entries are automatically scored, ranked, and displayed immediately Code, author, and score are visible at all times Anyone can modify anyone else's code and resubmit it as their own
How it works rules standings 1 karim 2 carol 3 eric karim. fcn f(x)... view entry new entry ned. fcn f(x)... 1 ned 2 karim 3 carol 4 eric
Joining the contest: tweaks... y = [ ] y = 1:4;...
Joining the contest: leaps function f = fb(n) a = [0 1; 1 1]^n; f = a(2); function f = fb(n) if n > 2 f = fb(n-1) + fb(n-2); else f = 1; end Generating the nth Fibonacci number: 1, 1, 2, 3, 5, 8, 13,...
Previously… Mastermind Protein folding Mapping Mars Golf Gerrymandering
Now playing: Sudoku…
Visualizing the results
Visualizing Mastermind
Overlapping clans
Genetic programming First use of conv First leader with conv Innovation at the periphery
Darwinian tweak bombs
Tweak bombs up close
The zigzag of innovation
Collaboration clusters
Entry names
Turning windmills: The MATLAB File Exchange
What have we learned? Collaborative competition works! Don’t knock tweaking Format dissolves contemptuous isolation
As a newcomer I was skeptical about the role of "competitive collaboration". However I'm now convinced that it's what makes the contest work. And anyway the really consistent competitors keep returning to the top of the table and staying there with innovations that are more than tweaks. And the fact that it's so popular must mean the basic formula is right. I think there is a self- regulating aspect to it - nobody comments their code overhelpfully, but nobody has gone out of their way to obscure code either.
Additional info at URL: I can't tell you how much I enjoy the MATLAB contests. I know it takes time out of your busy schedules to conduct this activity, but I believe it is a great way to promote the product and build user loyalty.