The vision of small independent service agents talking to each other to realise cool and helpful stuff for people in their everyday lives go way back. Some of my (Greger’s) early inspiration in this area came from the time at SRI Consulting, a subsidiary of SRI International, after reading about some crazy (at the time) research work done there with automatic agents talking to each other to automatically notify your hotel that you would be late if your flight was delayed. And meeting and working with Douglas Engelbart, a pioneer of everything computers and Internet, was definitely an experience that got me started on exploring how to move beyond the Internet as we know it for humans (ask me about the forgotten story of how the computer mouse got its name…).
The work on the Acting Web specification has been on-going since 2007 with some of the early concrete, technical ideas going back even to 2005 when I was CEO and CTO of a startup named AxxessAnywhere. AxxessAnywhere had a Service Delivery Platform for telcos, and we had found a way to deliver cheap, pay-per-month services to the laptops of the employees in the business customers of our telco partners. We didn’t get the go-to-market right, the services were too cheap for the telco sales people to bother, so we tried various ways of pivoting. One approach was called a Service Orchestration Network (SON), and the idea was to build a generic service backbone for secure, operator-backed services based on light-weight applications and Internet standards.
Timing is everything, the SON didn’t find an industrial backer, and AxxessAnywhere was instead bought by TANDBERG, the video conferencing company, which again was later acquired by Cisco Systems. I felt strongly about the idea of a Service Orchestration Network, but realised that I had to take the telcos out of the equation to get anywhere. Hence, in the few months between AxxessAnywhere and TANDBERG, I pulled together a draft specification of the “ActingWeb” and published it under Creative Commons license on actingweb.org.
Well, although the ActingWeb specification was fairly complete back in 2007, it was hard to prove that it would work without doing a full implementation. And of course, the proof is in working code. So, in 2007, I had a specification, a theory, but there was no Internet of Things, OAuth had just about started in 2007, and maybe more importantly, cheap cloud computing for small applications was just a dream. Amazon Web Services had opened shop, and Google App Engine was in its infancy, but the cost was sky-high, even for “serious” applications. The economics of deploying tiny, mini-applications to do very specialised things simply didn’t work out!
While working at TANDBERG and then later Cisco Systems, in the Collaboration Technology Group, I was focused on video conferencing while I tinkered a bit on implementing the specification. Then, Internet of Things started to get big and Cisco started its Cisco Spark collaboration platform initiative. I decided to do a full implementation of my specification in the form of a python library, and make a demo app for Cisco Spark in my weekends and personal time. Cisco allowed me publish all the code as Apache 2 licensed open-source projects and blog about it. Later, I left Cisco, got some time to complete the library implementation, as well as update my old 2007 specification to the realities of real code. Finally, at the end of November 2016, I could release the first end-to-end code-validated ActingWeb specification together with the Apache 2 licensed python reference implementation! (Later, Cisco allowed to convert to a BSD licsense, so the reference implementation is now BSD licensed.)