I always like to have a project of some sort. Some big, some small. These are the slightly bigger ones.
Monarch is the implementation portion of my senior thesis at Dartmouth. Here’s the abstract from the paper:
Web browsers have become fast and flexible enough to allow web applications to be viable competition to native applications. Now that the web as a platform has become formidable, it has changed the types of web applications being produced, and the ways in which native applications are being built. This observation leads me to propose the concept of the App Web – a category of the world wide web which increases productivity – and its place in the current application experience. Monarch is a system designed to merge the advantages of native and web applications, improving experiences for both the developer and the user.
Micro ARTificial Intelligence Network (MARTIN)
The goal of Martin is to build a home device system that any tinkerer can deploy on their own home network. Martin consists of a central control server that allows users to manage the devices on their networks from a web interface, and manages communication between devices on the network and between devices and the cloud. If a device has the proper hardware, it will be able to respond to voice commands, perform facial recognition, monitor its surroundings for movement, etc. This project is currently in its infancy, but you can view (or contribute to!) the source on github.
Martin devices are setup to know what they are capable of and can automatically transmit that information to the control server so it can appropriately manage interactions. Initial capabilities include a touchscreen display, listening to audio, playing audio, and recording or streaming video. Capabilities are designed to be independent and extensible in order to support different hardware configurations.
Martin uses zeroconf networking to discover new devices so it is very easy to add devices into the system. The goal is for minimal manual network setup – just connect the device to your home network and enter some basic information on the control UI.