Dashboard > GeekNight > ... > GeekNightSydney > Pair Programming Competition
Pair Programming Competition Log In View a printable version of the current page.

Added by Ben Hogan , last edited by Ben Hogan on Sep 08, 2004
Labels: 
(None)

PairProgramming Competition

Hosted by DarrenCotterill

Objectives

The principal objective is for everyone to have fun on a reasonably challenging programming problem (given the time period). There will also be minor bragging rights to the pair that is judged to have produced the "best" solution, as outlined in the Judging Criteria section.

Process

  1. The domain of the problem will be quickly outlined at the beginning of the night
  2. Pairs will form and work will commence
  3. Development will continue until a pre-determined amount of time has elapsed
  4. The judging criteria will be used to determine the winner

Judging Criteria
The following criteria will be used to determine the overall winner of the competition. The criteria will be assessed in the order presented below.

  1. 100% green JUnit acceptance tests (this is a hurdle requirement)
  2. ''If more than one pair meets criteria 1'', highest overall level of test coverage as measured by JCoverage
  3. ''If more than one pair meets criteria 2'', lowest overall level of complexity as measured by Checkstyle's Cyclomatic Complexity check
  4. ''If more than one pair meets criteria 3'', lowest overall level of duplication as measured by Simian
  5. ''If more than one pair meets criteria 4'', 100% green JUnit optimization tests
  6. ''If more than one pair meets criteria 5'', Arm wrestling by nominated pair partner, best 2-out-of-3 (let's all pray it doesn't come to this)

All these criteria can be measured via Ant tasks supplied with the competition codebase.

Prerequisites
In order to successfully take part in the competition, you will need to be proficient in the following:

  • J2SE (note: no J2EE knowledge needed)
  • Ant
  • JUnit

and have access to a:

  • Laptop running J2SE 1.4.1 or later
  • Pair partner (arranged beforehand or on the night)

Beyond these requirements, all that is required is a willingness to pair on a programming problem in a fairly short period of time (probably around 1.5 hours or so). The problem itself is common enough that no specific domain knowledge is needed.

Download

I'll attach a file to download from here before the night...

Powered by a free Atlassian Confluence Open Source Project / Non-profit License granted to ThoughtWorks, Inc.. Evaluate Confluence today.
Powered by Atlassian Confluence 2.7.1, the Enterprise Wiki. Bug/feature request - Atlassian news - Contact administrators