Demonstrating our ideas is fundamental for us, and the most effective demonstration is the one that people can touch and see. This is why we sometimes resort to physical systems to explain some key concepts. To this end, a little hardware can go a long way.
As a side effect, our drawers are crowded with objects that you wouldn’t expect from a software-oriented business: Lego bricks, electronic components, nuts, bolts, and citrus-flavored hard sugar candies (thanks, Patrizia!)
With such plenty of hardware, there comes a time when some of us feels a simple need (say, he would really like a clock on his desk) and decides that the best course of action is to build it himself. This guy’s reasoning goes like this:
(A) The most natural clock in the world is the sundial (a perfectly legit assertion.)
(B) I like nature (who doesn’t?)
(C) Therefore: the clock on my desk must be a sundial.
Aristotle himself would agree that (C) logically follows from (A) and (B). The trouble, however, begins when a few subtle shortcomings of sundials must be addressed. At that point, Occam’s Razor is swiftly abandoned in favor of Rube Goldberg ; the drawers are opened and the contraption spree begins.
For example, as we all know the Sun is a rather inconstant source of light, even more so from inside an office; better replace it with a high-brightness LED. The main difference between an LED and the sun, however, is that the latter moves (albeit apparently), while an LED does not, unless forced to. Therefore, the LED will be mounted on a drinking straw stitched to a servo with a length of copper wire, and the servo is driven by an Arduino microcontroller.
After solving a series of challenges, the prototype is finally and proudly sitting on its creator’s desk, although its upcoming withdrawal for some modifications has been announced (its creator says that what he really needs is an alarm clock). Below you can see a video of the current prototype incarnation.