- Wednesday 4G
Convener: Bruce Conrad
Notes-taker(s): Bruce Conrad
- Tags for the session - technology discussed/ideas considered
Discussion notes, key understandings, outstanding questions, observations, and, if appropriate to this discussion: action items, next steps:
A pico is a "persistent compute object" and they've been available for about a decade. We are working now on an easy-to-install pico engine running in node JS, as an open source project located at github.com/Picolab/node-pico-engine for which documentation can be found at picolabs.io which will lead to the wiki page at https://picolabs.atlassian.net/wiki/display/docs/Pico+Engine+re-write
We had a great discussion, with Phil describing a live and functioning applications implemented with picos, and Bruce demonstrating the node pico-engine and showing how a registration system could be constructed, that would scale into thousands of picos with hundreds of thousands of interconnecting channels.
Some basic description, including: Each pico persists it state, and provides lock-free concurrency. It is a "first-class" Internet citizen, receiving and processing events which may affect its internal state and/or cascade to further events, and responding to queries about its internal state. When an event arrives for a pico, the pico engine selects the rules which apply by using declarations called event expressions. Rules may conditionally take actions and update the state of the pico.
Several application spaces were discussed. Objects which don't have any silicon at all can be represented by a pico in the cloud, as a kind of disembodied, state equivalent surrogate, allowing that object to participate by proxy in the IoT.
We invite contributions, consumption, and/or competition.