Winners of the EVE Online API Challenge
On February 15th we announced the first EVE Online API Challenge and deadline for entering was on March 4th. Since then a group of us at CCP have been hard at work with our best court dress. We were incredibly happy to see a total of 42 (little known fact, that number was used to seed New Eden) entries into the contest.
Our Process
The first step for us was to fork all entries so that we could ensure we were looking at code submitted before the deadline. With all of the repositories forked and pushed to https://github.com/eve-online-api-challenge it was easy for us to browse the code online and share it with everyone involved in judging. From there we went through and eliminated all entries that didn't conform to rules such as not including the MIT license and having been worked on before the contest started. Fortunately (or unfortunately if you are one of us who had go through all of the entries) this only removed a few entries from the list. From here we went through all of the entries and began the more serious judging which involved trying to get each entry running locally. After a first pass of judging we were able to sort all of the entries by a rough rank. This let us trim the list down to about 15 entries from which we began taking a more serious look at. Finally we sat down as a group and had a number of discussions about the handful of entries we thought were at the top until we had our top three entries in ranked order.
Winners
Without much further rambling here is a list of the winners and what they won.
First Place
Name: Pathfinder
Creator: Valtyr Farshield
Link: https://github.com/farshield/pathfinder
Description: Pathfinder is a desktop application which is able to find the shortest path between solar systems (including wormholes) using data retrieved from Eve SDE and 3rd party wormhole mapping tools. If you are looking to see how it works without downloading it Valtyr has a nice YouTube video showing it off: youtube.com/watch?v=oM3mSKzZM0w
Comments:
- CCP FoxFour: One of the really cool things about this project is not only does it sound like something I could see myself using, I have actively been using it over the last few weeks. It is an incredibly well polished entry that aims to solve a single problem and does so well.
- CCP Bartender: I was impressed by how focused and complete this project was. Valtyr has clearly resisted the temptation for feature creep and the result is a tool which does one thing and does it extremely well with no fuss.
- CCP SnowedIn: Absolutely love the integrations in this app. Very clean and intuitive, does one thing well… great job.
Prizes:
- Classic Tranquility server blade
- Mordus Legion Parade SKIN Pack (Barghest, Orthrus, Garmur)
- 5,000 Aurum
- 5x PLEX
Second Place
Name: Time for EVE
Creator: Batian Styx
Link: https://github.com/batstyx/time-for-eve
Description: A Pebble watch face that uses CREST to display some relevant information.
Comments:
- CCP Bartender: This project is full of fantastic little details for me. The Eve E in the background is a nice touch, and the subtle prioritization of eve-time over local time made me chuckle!
- CCP Tellus: Finally a use for my Pebble! o/
- CCP FoxFour: Simple and to the point with useful information being presented.
Prizes:
- Winners choice of Super Capital SKIN
- 3,000 Aurum
- 1x PLEX
- Signed copy of EVE Universe: The Art of New Eden
Third Place
Name: EVE Fast Fitting Assessment
Creator: Rischwa Amatin
Link: https://github.com/rischwa/eve-fast-fitting-assessment
Description: EVE Fast Fitting Assessment is a Windows desktop application to quickly assess the stats of fittings found on killmails.
Comments:
- CCP Bartender: I'm a big fan of how practical this tool is. It's a tool I can see myself having open whenever I go wandering through lowsec, and I think it will do a fantastic job of lowering the barrier of entry for new PvPers that choose to use it.
- CCP FoxFour: I am terrible at remembering weapon ranges with different ammo and so to me one of the best things about this is being able to quickly get an idea as to the different ranges a target is likely to be able to engage me effectively.
Prizes:
- Sisters of EVE Sanctuary SKIN Pack (Nestor, Stratios, Astero)
- 3,000 Aurum
- Signed copy of EVE Universe: The Art of New Eden
CCP Seagull Choice
Name: EVE Online Contact Manager
Creator: Julian Aldurald
Link: https://github.com/Fijo/evecontacts
Comments:
CCP Seagull: Contact management was one of the first read-write APIs we got working internally with CREST years ago, and we've had test implementations of contact management running internally for a long time. That we have been able to now actually release these APIs on Tranquility and can see the kind of good looking and nicely featured contact management utility app like the EVE Online Contact Manager realized and accessible to players, to me represents one small victory for the vision we had for CREST. That's why this app gets my special price – having this kind of app created by actual third party developers on a fully functioning CREST and authentication stack, instead of internally by us on test infrastructure not actually usable outside CCP – that's what makes this special for me, as I have been involved with CREST development from the very beginning. Congratulations to Julian Aldurald for a well done implementation of some of the potential that the Contact APIs provide!
Prizes:
- 3,000 Aurum
- Signed copy of EVE Universe: The Art of New Eden
Honorable Mentions
- MarketBot: God we love and hate the developer of this. We love him for creating such an amazing application that some of us now have installed our phones and hate him for not including the MIT license and therefor being disqualified. If you have an Android phone we highly recommend checking MarketBot out.
- Reset: For those that fly on NPSI roams this would be a really useful tool. It fetches a list of corporation and alliance contacts and then sets them all to neutral for your character and since character contacts override corporation and alliance you can now go on an NPSI roam without fear of shooting blues! When you're done the website resets your contacts back to how they were before and you get to hope your alliance and corporation diplomats agree that shooting blues is how New Eden life is meant to be!
- Dynamic Exploration Route Planner (DERP): This was a great little entry. It targets a specific task and makes a minimal but very complete tool to solve the problem. Definitely something a few of us at the office will be actively using. This is the first project the author has distributed to the public, and definitely one to be proud of.
- EVE Online Atlas: Atlas uses a really cool technique based on chatlog scraping to allow users to control a browser based information dashboard using chat commands inside the EVE client. This one generated a lot of buzz around the office, and definitely takes the prize for "most awesome hack"!
- pizza-auth-3: This stood out as one of the entries which implemented a planned feature ahead of time, out of client. In this case, the contact groups system. By itself that wouldn't be all too impressive, but it also combines this with the location API to provide location+group aware notifications, as well as providing a LDAP authentication layer for use with other alliance services. It is a highly technical entry, the scope of which would only be useful to a select few who run their alliance IT infrastructure. But if you happen to be one of those people, this app could really tie your alliance services together.
- EVE Fitting Bot: Ever been on your corporation or alliances chat service outside the game and had someone request a fit for a ship? If you were in the game you could just link them the perfect fit you have saved but what about out of game? That is where this bot comes in, if you're using Discourse that is. It allows you to quickly and easily get a list of your fits from game and display them as an EFT fit right in chat.
- OSXNeocom: Neocom is an awesome little OSX app for managing your characters skill queues, PI installations, looking up prices on the market, and a fitting tool. The way the fitting tool splits up modules by slot type is really intuitive, and the way it uses CREST to store and send fittings to the client makes it easier than ever to share/modify fits between your characters. This app has a ton of polish and is definitely worth checking out if you have a mac.
For a full list of all entries see this spreadsheet.
Things We Learned
Setting up/Compiling/Running many projects in different languages and platforms is hard
One of the things we under estimated was how much time we would have to spend trying to get every project to run. While some projects had demo web sites running or pre-compiled binaries/setup files we wanted to be able to run the entries locally where possible to ensure the version we were judging is what was submitted. We tried to run most of them in Vagrantfiles but even then simply understanding how each of the different languages and frameworks works was not a small task. In the future I think we will require that entries include a version we can run out of the box. For web applications this will probably mean a Vagrantfile or Dockerfile and desktop applications needing a compiled version we can just run.
Better define the judging criteria
One of the things that came up during the judging was how we all defined the criteria differently in our heads. This lead to a lot of instances of us having to discuss things that should probably just have been defined better. Things like should technical difficulty be how difficult of a task the application is trying to solve or should it be how much of CREST the application is using since the contest was about CREST. While we were able to resolve this in the end we should have had all of this defined better up front. The other part of this was how slow we were to get into the judging as we all sort of had different ideas of how to do it. For the next challenge we hope to answer all of these questions internally before we announce the contest.
Conclusion
Overall this contest was a huge success. Not only did people have fun participating and some people got sweet prizes but there are now some amazing new tools out there for the community to enjoy. We want to seriously thank everyone who participated in this contest and we hope they all enjoyed spending time on something a little different.
CCP FoxFour