Neto: "Ever since I mistakenly bought hundreds of those WS2812 *SMD* RGB LEDs believing I was buying a wide LED strip, I constantly try to find any use for them. Therefore every time I think of making something, I always think: let's put a RGB LED on it.
As I'm currently employed as a software developer, software testing is (or should be) part of my work. For that, I'm lucky to have a good mate, Gustavo Godoy, who happens to be a professional Software tester and expert on testing automation. Since he's new in the easy-electronics-with-arduino's field, we though of making a hello-world DIY project focusing in Test Automation so both of us would had something to share and learn from. I would handle the hardware and its casing, he would handle all the software and we would apply it and take advantage from it within our daily tasks at work ... and we were going put RGB LEDs on it ;)
Our inspiration was the continouslava project and the shape of a Semaphore came up naturally when you try to mesh it with RGB LEDs. I got enthusiastic about it when I could not find any Semaphore design at ThingIverse, so its drawing would also be a challenge (I did it using OpenSCAD). The project's concept itself has been vastly used (here, here, here, here and etc), but this trip is all about the journey, not the destination."
Gustavo: "Why do we need to have a live continuous integration display for our job? As I've been working with software quality assurance for quite a time, one of my concerns is to deliver status for all team. Email messages, instant messengers, SMS and even bug-tracking tickets are not always effective since the assignee can just ignore the issue, but what would happen if you put that information widely available for everyone? In my last job, I implanted a full screen monitor in the corridors, with a Jenkins plugin showing the current status of some jobs. A red background would signalize a broken build, yellow a testing failure and green meaning that everything is running well. The result? A massive concern and rush to get the screen always 'green', since nobody wanted to see their job being published as problematic to everybody else.
I don´t pretend to be so mean to other team members, but quality became natural and easy to achieve when everyone live with it.
When Neto and I begun working together, we shared the same ideas: learn, share results, have some fun. And then I begun playing with Arduino, PHP, electronics and broken builds.
The idea of the semaphore, as Neto said above, came from lava lamp, my whistle-blower TV and the automation process that we are deploying together.
The code I wrote is simple, naive and bug friendly, but it works. I have written a PHP script that gets the last build api xml from Jenkins jobs, parses and writes the result in the serial port, which is connected to Arduino: SUCCESS (green), UNSTABLE (yellow) and FAILURE (red). When the job is on progress, all leds blink, indicating there are tests running!"
Comments