Back to [[conference:committee:2014-proposals]]\\ \\ **Title**: It's Time to Light The Lights\\ **Proposer**: [[2014:Duncan McGregor]]\\ **Proposer**: [[2014:Richard Care]]\\ **Type**: Preconference Tutorial\\ **Duration**: 360 mins\\ **Description**: \\ Working on embedded systems, we noticed that slow deployments and limited debugging facilities affected the way that we develop code. Unit tests are critical, but so are functional tests of the target architecture. Some code just can't run on development PCs, so that mocks and stubs play a large role, but in the end the code actually has to perform correctly when deployed.\\ \\ This workshop uses Raspberry Pi's as embedded systems, and challenges teams of 2 developers to implement a control protocol used in remote radio frequency mains switches. Successfully implement the protocol and you can light the lights.\\ \\ We provide the Pi's, transmitters and switches. The first part of the session takes the teams through deployment of Python or Java onto the Pi, and then on to GPIO programming to control the transmitter. Then we publish details of the protocol and step back.\\ \\ At the end of the session we look at the code and try to spot patterns and learn lessons.\\ \\ We ran the session as a competition at SPA 2013, and at Software Craftsmanship 2013. Both times we had about 4.5 hours. Looking at the way they went we're going to try removing the competitive element for XPDay in November - this should allow us to give more help to the teams and improve their chances of success.\\ \\ \\ \\ \\