The UPOD ("Universal Programming Of Devices") project is an academic research collaboration centered at Brown University. We aim to fuse techniques from human-computer interaction, end-user programming, and machine learning to enable users to control their Internet of Things devices more accurately and more expressively.
The UPOD project has been active in some form since 2010, first at Rutgers University. The first incarnation of the project, aimed at making physical devices controllable by the Scratch programming language, was Scratchable Devices. Subsequently, Michael moved to Brown University, bringing the UPOD project with him.