Between the trials, tragedy and the triumph, the 8th instalment of Atlassian ShipIt Day came and went. 49 projects were submitted in the biggest and the best one yet! Projects spanned the entire gamut; from playing shiny new toys like Skitch, EC2, Groovy to parallelising Maven downloads and adding supportability to our products.

ShipIt days have been a regular Atlassian event since 2005 and it’s still going strong. What the hell is it? If you want to find out more, read Mike’s inaugural blog about ShipIt. For more information on ShipIt 8 check out our page on Confluence

The Best


Tom Davies, formerly a Confluence developer and now a Cenquan, took out the coveted ShipIt trophy with his NNTP Server for Confluence. Tom tried to solve the problem: “How do you keep up with recent changes from a Wiki without being overwhelmed, but without missing things you want to see?” He decided that RSS wasn’t the way to go, and NNTP’s threading (amongst other things) made it a winner. Tom’s presentation also impressed the inner geek in all with hist cool retro newsreader.

“I’m shocked I made it through”, Tom announced. “I put my win down to the quality quantity of jokes I made in my presentation – and people’s reluctance to hand out back to back wins to Matt Ryall.”

The winners of the previous two ShipIt, Matt Ryall and Adrian Hempel, as well as the team of Per Fragemann and Chris Broadfoot also made it through to the finals.

Runner-up was Adrian’s Elastic Bamboo that allows you run your distributed Bamboo agents in an Amazon Elastic Compute Cloud (EC2). He created EC2 images that let anyone instantly start up a Bamboo server and any number of Bamboo remote agents in the cloud. It also allows you to add or remove remote agents on the fly, utilising Amazon’s (just about) boundless computing power by simply updating a text input field!

Matt Ryall has hit a winning formula on how to consistently make it to the final table of ShipIt voting. His Expert Confluence console combined a nostalgic appeal to all those hours spent playing Doom, nice Web-2.0 transparency effects and even useful functionality! With his console, virtually all of Confluence’s RPC methods can be simply accessed through a simple press of the tilde (~) key. Everything from basic search, simple go-to. It even has history for even easier usage.

Ever wanted to turn Confluence into Slashdot? Now you can with Chris Broadfoot’s Confluence Karma! You can moderate a comment up or down, see a poster’s overall Karma and all that jazz. Per joined forces with Chris to implement a comments slider. The “Sexy Slider” lets you hide and show comments based on the posting date, so you can quickly hide old or poorly moderated comments.

For more details on the finalists, check out their projects’ Confluence pages.

  1. Tom’s NNTP Server
  2. Adrian’s Elastic Bamboo
  3. Matt’s Expert Confluence Console
  4. Per & Chris’s Sexy comment slider & Karma


The Rest

With some 49 ShipIt projects submitted for ShipIt 8, many cool projects missed out on the finals. You can see details of many of the projects on the ShipIt 8 Confluence page.

My personal favourite project for the day was Chris Owen’s Macro AOP plugin. This allowed you apply an aspect across all macros in a Confluence instance or space. For example, you can replace the entire content of a particular macro between 430pm and 500pm each day with just a single AOP expression. This was seriously evil.

Product installation was also in vogue with Brenden Bain, Samuel Le Berrigaud and Matt “Viking” Jensen all taking a dip. Brenden used apt-get, Sam attempted an Atlassian Uber-Installer and Matt Jensen wrote a GUI front end for the Atlassian Application Manager.

On the testing front Brendan Humphreys began working on “Quiver – a Mutation tester for Clover 2″. The idea was to use Clover’s per-test coverage data to find which classes were hit by a particular test, and vice-versa. You can then use this information to find the subset of tests that will exercise a given mutation. This avoids the need to rerun the entire test suite, giving you a much more efficient mutation testing framework.

Don Brown ventured into the world of Grails to write a server monitoring application. Co-Founder, Mike Cannon-Brookes revisited his love hate relationship with GWT for a cross application embedded chat client. Despite a lot of swearing early on, he did come out the other end glowing about GWT. Other interesting bits an pieces was Nick Pellow’s Skitch slap application that allowed you to automatically upload Skitch images to Jira. Pete Moore’s project allowed you to open any file in Fisheye using IntelliJ IDEA’s Ctrl+Shift+N shortcut.

Chris Mountford, to much applause from Ian (Jira support lead), made the “Jira Modz Detector”. This extension to Jira allows our support engineers to identify any modified files / JARs in a Jira instance immediately. Brad Baker also worked on a hodge podge of useful support & plugin resource improvements. On the resources front, you can now including minifiable web resources (so plugins can have minified CSS & Javascript files) as well as optionally include a JS file at the bottom of the page rather than the top of the page for performance reasons. For support, Jira can now produce Apache CLF formatted logs.

Overall, another enjoyable day for the developers and congrats to all for delivering so many cool and useful projects!

ShipIt VIII – NNTP FTW!...