It all started with a happy accident
I have a confession to make. This contest, which is directly fueling the largest expansion of the TurnKey library since the project started, is a happy accident. It wasn't something we planned. It wasn't on our summer todo list. It was just one of those unexpected, spontaneous ideas that light up the inside of your brain like a flash bulb, and demand you take action. Or else! (you won't get any sleep)
Back in June we had just launched the TurnKey Hub and were getting ready to focus all our energies on releasing TKLBAM. I logged into PayPal and noticed our donated beer budget had a sad little beer belly. It was just sitting there, giving me an accusing look. I felt guilty. Surely all those people who donated expected we would put these funds to better use. That's when it hit me. It was too much to buy beer, but not so much that we couldn't risk it all on a fun experiment...
I talked it over with Alon and on an impulse we decided to do a contest, but not just any contest. A wild and wet summer open source bonanza! With ponies!
What happened next took us both by surprise.
From the far corners of the globe... two superstars emerge
I figured if we were lucky we would attract about a dozen or so contributors who would create appliances for one or two of their favorite open source applications.
But what I do know. It turns out we got even luckier with two superstar developers who took different but complimentary approaches, and blew us away with over two dozen TKLPatches for an amazing range of excellent open source software, some of which we had never even heard of before!
From India, Basil Kurian went wide with about 20 relatively straightforward new appliances, developed at a furious pace that was hard to keep up with. Like a hungry bird of prey, Basil scanned the open source savanna from above, then swooped down for kills he could snatch back whole to his nest.
From Venezuela, Adrian Moya dug in deep, with about 10 relatively challenging appliances. His attention to detail rivals some of our best work to date. Adrian, like a tiger, stalked his prey, taking a slower, more deliberate approach. He went after larger targets, sunk his teeth in and tore them to pieces.
There were a few other contributions as well but the bulk of developments can be credited directly to these two admirable and highly skilled individuals.
Looking at the big picture, what they've accomplished is not only a tribute to their own impressive abilities but also to the power of the open source ecosystem they leveraged. I can't think of any other area of human enterprise where a loosely knit band of individuals is empowered (in their spare time no less) to help enable thousands of individuals and organizations all over the world to take advantage of so much technological innovation. That's what TurnKey means to Alon and I and we're delighted that more people are getting to share this experience!
Help! How do we figure out who should win?
It was probably best for the project that our two superstars took different complimentary approaches. But it complicates our decision as a direct apples to apples comparison isn't possible. That means instead of just counting the number of submissions we actually have to think this through, and we'd like the community to help us with that.
So what's at stake? You mean besides bragging rights and immortality in the TurnKey hall of fame?
- Gold: $1500 (+ a make-believe pony with a suitcase full of broken dreams)
- Silver: $800
- Bronze: $100
Your mission, should you choose to accept it, is to help us figure out who added the most total value to the project. That means the quantity of contributions multiplied by their quality. Yes, we realize quality is inherently subjective and open to endless interpretation. We've thrown in some rough metrics and have identified dimensions of evaluation so it isn't entirely arbitrary, but let's not kid ourselves - playing with grading systems and numbers won't save us from making subjective, qualitative judgments.
To make this a bit simpler we've attempted to summarize contributions in three key dimensions:
Anticipated interest from our audience: the more people will benefit from an appliance, the more valuable it is. Unfortunately, we don't have a TurnKey crystal ball (yet), so we can only make educated guesses. Mostly we sampled data from various public resources provided by Google (e.g., Google Trends, the number of search results for a given name, the page rank of a project's web site, etc.)
Grades: minimal (), modest (), large () and huge ()
Integration effort: an appliance saves users the trouble of finding the right components, integrating them into a working solution and testing it themselves. Hard appliance integrations are more valuable because they save users more trouble.
Examples of factors we took into account when we evaluated integration effort includes:
- how well aligned the integration is with a well defined need
- the number of integrated components
- whether or not pre-installation (e.g., seeding databases) was required
- approximate testing difficulty
- added value such as custom glue scripts
Grades: simple (), involved (), challenging () and brilliant ()
Documentation: A pre-requisite to adding an appliance to the library is that we understand what it achieves, how it does it and why. Good documentation makes all of this easier for us, and also serves to educate the community and promote discussion. Truly awesome documentation goes beyond that and adds significant value to end-users by making it easier to get started (e.g., tutorials, HOWTOs, documentation resources, etc.)
Grades: minimal (), good (), excellent (), awesome ()
Summary of submissions competing for the gold
|Asterisk: VoIP PBX|
|Alfresco: enterprise CMS|
|Web content filtering proxy: DansGuardian + ClamAV|
|Big Blue Button: web conferencing|
|Plone: Zope-based CMS|
|Bacula: network backup tool|
|Gitorious: Git collaborative repository hosting|
|Mono ASP.NET: IIS replacement|
|Cacti: web-based graphing tool|
|Prestashop: e-commerce / shopping cart|
|SugarCRM Community Edition|
|Tomato cart: ecommerce|
|Status.NET: micro blogging|
|eFront: eLearning software|
|LEMP stack: Linux, Nginx, Mysql, PHP|
|EyeOS: web desktop|
|Foswiki: structured wiki fork of TWiki|
|Fedena: school/campus management system|
|Retrospectiva: agile project management|
|Typo: rails blogware|
- This is not a complete listing of submissions, just those that are most likely to be included in the upcoming release batch.
- I'm linking to the forum posts where the TKLPatch submissions are discussed for future reference and so anyone who wants can make up their own mind.
While the vast bulk of contributions came from Basil and Adrian, there were a few sporadic contributions by other community members. Here too we're interested in feedback from the community on who should win third place, or alternatively whether we should just eliminate third place and merge it with second place. Or something else...
- Bilal: contributed a barebones Citadel appliance, and a partially completed JBoss appliance.
- JedMeister: contributed a partially finished KnowledgeTree patch, researched possible integration details for the TurnKey Core Client and provided encouragement, feedback and moral support throughout the contest to all involved.
- Neil Wilson: contributed a patch fixing various issues with the TurnKey Core Lucid beta.
- Rik Goldman: contributed an IEP-IPP appliance, that could make it easier for school to use open source software to track students with special needs. Before the contest Rik and his band of merry students were our most prolific community appliance developers (Ampache, LimeSurvey, Elgg). Rik also contributed excellent supplemental documentation on the TKLPatch development process.