Here are the slides from my talk on Flow Based Programming that I presented at OpenWest 2015 at UVU in Orem Utah.
Ioflo is now at version 1.0. The framework features have been pretty stable for some time at 0.9.X so we decided now was a good a time as any to go to 1.0.
Also coincident with the version is a change in the license. We decided to switch from MIT to Apache 2.0. The motivation for the switch is that big applications of Ioflo are RAET and SaltStack and they both use the Apache2.0 license. This provides a consistent licensing. Also Apache2.0 has specific provisions for user contributions that clarify intent as well as CLAs.
The o in the logo was designed to show one of the core capabilities of IoFlo, that is, effortless implementation of feedback loops with the four phases of sensing, reasoning, actuating, and responding. The blue is for flow, as in flowing water. We also like primary colors. Each letter is an arrow showing movement of data through the system as in Data Flow. So can we help it if we like meaningful symbolism.
Coming from academia, it’s common to invent some obscure but clever acronym for a new technology platform or algorithm. This sounds all very impressive and necessarily esoteric but not very accessible. So something like Hierarchical Action Framework or HAF is descriptive but not memorable.
So we decided to combine a couple of core features into a name that would, we hope, be more accessible and memorable, and also, by the way, be a name for which the associated domain names were available. So ioflo was born. IO for *input output and Flo for flow which captures the internet of things, sensing (input) and actuation (output) effortlessly flowing through the system like water. Flo also evokes the Flow Based Programming aspect of the framework. So there you have it ioflo.
IoFlo is configured in a convenient user friendly scripting language called FloScript. FloScript documentation is available, including an architecture overview and FloScript guide can be found on the downloads page.