An annual 48 hour development competition in which teams of skilled developers get exactly one weekend to create the best Erlang applications they can

All projects can be found on GitHub

Winners

Grand Prize (Chaos Monkey)

Grimmest Reaper Prize?
Peeking into the guts of OTP system processes and the many processes supporting the console/REPL shell isn't easy, especially for a hectic two days of work. I've used the OTP 'appmon' tool to kill processes via point-and-click during a demonstration. Using ChaosMonkey, it's now possible to automate that kind of evil carnage in an automated test suite.
Scott Lystig Fritchie

Prizes

  • $500 worth of O'Reilly books - O'Reilly
  • GitHub Silver Plan for one year - GitHub
  • Cloudant Raspberry Pi Cluster - Cloudant
  • One VMware hoodie - VMware

Learn You a Library Prize (The Erl Next Door)

Hands-on teaching exercises in Erlang requires a lot of setup work. Novices frequently find the first experience distracting and frustrating. For students, experimenting solo or in a classroom, TEND holds promise of making it easy to dabble casually or study seriously. TEND can help class instructors focus on code, not environment setup. I hope this project continues development long after Spawnfest 2012 has ended.
Scott Lystig Fritchie

Prizes

  • iPad from Basho - Basho
  • GitHub Bronze Plan for one year - GitHub
  • Two VMware hoodie - VMware

Search Engine Prize (HINT)

Have you ever looked for a function but wouldn't know where to start searching? You know the types of the inputs and outputs of the function, but don't know the name or in which module it could exist? Perhaps you could have used a hint. I know I could. Today, you only need to load up the HINT search engine and all your questions will be answered.
Loïc Hoguin

Prizes

  • $300 Heroku voucher - Heroku
  • GitHub Bronze Plan for one year - GitHub
  • Two VMware hoodie - VMware

Pure Enjoyment Prize (Espresso Beam)

This brought a big smile to my face when I ran it. OK it's not rocket science, there's not a monad or higher order function to be seen, and no manual is necessary.
It's a rabbit-wolf-carrot simulation.
Rabbits eat carrots. Wolves eat rabbits. Carrots just wait to be eaten.
I liked reading the code. rabbit.erl ... has some wonderful comments:

      running away from wolves, don't care about carrots ...

      if there are wolves nearby... fleeing away!

      was wandering, nobody around, nothing to do ... keep wandering ...
      

Joe Armstrong

Expresso Beam is an exercise in joy, no more and no less. A fun romp in the world of Erlang Programming with no apparent purpose or use. However, while being fun in its own right, it does a very good job of illustrating several of Erlang's great strengths. That is, modeling independent active 'things' as independent processes and coming up with a way for those 'things' to interact with the environment around them. All in all, an interesting little project that is fun to tweak.
Eric Merritt

Prizes

  • $300 Heroku voucher - Heroku
  • GitHub Bronze Plan for one year - GitHub
  • Four VMware hoodie - VMware

Speed Ticket Prize (Perforator)

Perforator is another tool that's going to be indispensable in your toolbox. If you ever spent some time making sure your changes don't negatively affect your project's performance, then you might want to instead write some perforator unit tests and setup its continuous integration server to keep track of your progress.
Loïc Hoguin

Prizes

Does It Work Prize (ddmin)

Though incomplete, ddmim has great potential. It brings the power and beauty of QuickCheck/Proper shrinking (using a well understood public algorithm) to the masses. Providing the ability for you, the Erlang Developer to simply provide an input and a 'chunking' mechanism in your Eunit and Common Tests and get well localized errors based on the input provided for those errors. Who knows at some point in the near future ddmim may provide a more general approachable solution then we currently have. I look forward to seeing how this progresses.
Eric Merritt

Prizes

The Great Imposter Prize (The Mayans)

I look forward to seeing this project completed. There is a need for a style of mock code implementation for Erlang that differs from Meck's implementation. Such diversity helps the community as a whole. Moka is very promising, and I hope that its development continues.
Scott Lystig Fritchie

Prizes

The Architecture Prize (mchat)

This is a simple browser chat system that can do file transfers over websockets. What impressed me about this was the way the the solution made use of Ember.js a Javascript MVC framework.
The solution was basically a pure message passing solution. The client was an MVC framework, the Erlang server used Cowboy and messages were passed over websockets. This combination is very powerful and the mchat architecture could be used to solve a variety of different problems. The interesting point about this entry, was not so much the choice of problem but the clever way in which was solved. I'd like to see more problems solved this way.
Joe Armstrong

Prizes

The Real Time Prize (Team Yasa)

I liked this application. It used jQWidgets for the real time display of performance data. The server was a based on cowboy. The data being displayed could be updated through an HTTP REST interface or through a web-socket.

I like this way of decoupling a service (in this case a real time display) with the application that makes use of the service. Use of a REST or websocket API is to be encouraged. Everybody should do this.

This application could be extended in many ways while keeping the same basic architecture. It provides a model of how to integrate a graphic interface (in this case controlled by jQWidgets) with a REST or websocket interface.

Prizes

The Participant Prize

Even though you didn't get a prize, you're still one of the very few brave souls who decided to spend a whole sunny weekend doing something great.

Once you enter Spawnfest and submit your project, you are already a winner in something greater than Spawnfest itself. Don't you feel that?

Good job and don't abandon your project just because our judges didn't nominate it!

See you next year!

All projects can be found on GitHub