Now that Oracle Open World has come and gone, I have some time to go into the details of how this project was conceived and realized, and how it faired at OOW. Let’s start with that last one.
I guess to no one’s surprise, the actual booth with (free!) beer was a crowdpleaser; we blew through the stock of 12 kegs with time to spare.
That’s roughly 4000 pours (we only served small portions, between 2oz-8oz) in 3 days.
More importantly, and impressively, we recorded about 2700 ratings on the IoT Cloud Brewed Beer application I created for this project. That’s a participation rate of almost 70%! I.e., about 2/3 of the people that drank a beer, were compelled to rate the beer in our application.
That’s a participation rate of almost 70%!
When the dust settled, “Open World IPA” narrowly eked out a win over “Dark Side”, a stout brew, here’s the complete ranking:
- Open World IPA – IPA (4.05 average out of 756 ratings)
- Dark Side – Stout (3.94 average out of 683 ratings)
- Hackers Den – Saison (3.72 average out of 632 ratings)
- Belmonter – Kettle Sour (3.42 average out of 618 ratings)
100% Powered by Oracle Cloud
The IoT Cloud Brewed Beer application itself runs on the Oracle Application Container Cloud Service (ACCS). The data (beers, ratings etc.) is stored in a MySQL Cloud Instance. IoT Asset Monitoring Cloud provided the data that was gathered during the brewing process and while serving the beer. The latter was actually used in the application to display the level of beer left in the kegs on tap.
Finally, I used the Oracle Developer Cloud Service to Continuously Deploy my code to the ACCS. This is how it was all connected:
Editor’s note: We forgot to mention Relayr, a valued IoT Cloud Service partner, who provided the device hardware, installed it at the brewery and provided the edge device management, connecting the devices collecting data to the IoT Cloud Service. Here is a more detailed version of the device architecture.
Sincerest apologies for the omission.
The application itself was designed so that it could easily be used on devices of various sizes. That allowed me to create 1 application, yet use it in many different places. For example, one manifestation of the application ran on giant (+18 inches) tablets placed on the kegorators themselves so that people could rate the beer as they were drinking it.
However, we also allowed people to rate the beers on their mobile devices so the same application could be accessed on any mobile phone. The flow would adapt, based on how the application was accessed:
Finally, the same application was also accessible from the official Oracle Open World Application so 1 code base but 3 different use cases.
1 code base, 3 different use cases.
Going forward, the application can also be reused by Alpha Acid (@alphaacidbrewco) at the brewery itself. It comes with a full Admin interface that will allow the brewery to add, remove or update beers as they brew and serve them at the brewery. They can display the list of beers e.g. on a big screen in the tasting room, or on a tablet and let consumers rate the beers, or encourage users to open the application on their mobile devices and collect ratings that way.
The application was created as a Progressive Web App (PWA). This provides some additional advantages over a regular Web App. For example, the application will keep working even when their is no internet connection. This can be crucial when using conference networks that predictably get overloaded and are notoriously unreliable. Furthermore, they can be “installed” by the users, just like a regular, native application. In fact, when they access to Web Application it will prompt the user if they want to install the application, no app store needed! Finally, they look and behave the same way as a native application once installed on the Mobile device (see screenshots above; those are actual screenshots from a mobile phone using the Progressive Web Application).
Editor’s note: For more on this project, check out this writeup at Forbes and the two videos below, enjoy.