The UPOD ("Universal Programming Of Devices") project is an academic research collaboration centered at Brown University. Long-term project members include Professor Michael Littman and Blase Ur, and we are fortunate to be joined currently by a number of Brown University undergraduates and graduate students. The UPOD project aims 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.
To get a sense of our work, please check out our CHI '14 paper on the usability of trigger-action programming or our forthcoming CHI '16 paper analyzing all 200,000+ publicly shared IFTTT ("If This Then That") recipes. For the latter paper, we have released our dataset to fellow academic researchers to encourage further analysis of trigger-action programming in the real world.