Although the Arduino is perfectly at home in silly projects like the infamous useless machine, it can serve as a serious tool too. Instructables user Matthias Faust has demonstrated that admirably with his latest project: The Maven Box, a physical controller designed to make software development run more smoothly.
Based on an Arduino Uno in an attractive box and communicating with a JavaFX server running on the desktop, Matthias' Maven Box provides physical inputs which act as shortcuts to speed his workflow. Selecting options with a physical knob and switches, plus some attractive push-buttons, Matthias is able to select branches from various GitHub projects, stash changes, pull changes, trigger a build in Maven, and display the status of six automated tests on built-in notification lights.
For a software developer, the project makes a great introduction to the world of hardware development. "This Instructable aims for Java developers who would like gain some experience with the Arduino," Matthias explains. "It does not explain in detail how to build this exact controller box but should give tips how to handle the major obstacles and where to find additional help."
From the basic wiring through to the creation of the attractive control panel - printed onto paper then sealed with a layer of adhesive cellophane to prevent wear and give the control box a polished appearance - Matthias' project is a great example of what a handful of components and some ingenuity can do to ease your workflow.
Every job has it's routine. I am a software developer who works with a Git/Maven based workspace everyday. So when I start working, my daily routine is to update and build my local workspace, pulling changes from GitHub, execute a Maven build and execute the updated software. Usually I get my first coffee after that, but because I love coffee so much I thought there must be a faster way to get my system updated and running. That's why I built the "Maven Box".