Al Iacovella

The Internet Of Things with Scala – Part 2

This is a continuation of my Internet of Things with Scala posting. In this installment I will go over the assembly of the device that will be used to capture the soil moisture data and send it to an MQTT broker so that it may be picked up by the Scala/Akka based application. The Parts … Read More

The Internet Of Things with Scala – Part I

There has been a great deal of buzz around the Internet of Things lately. The advent of small inexpensive devices and in particular the Arduino has inspired a generation of people with no background in electrical engineering to do some very creative things. I myself was first inspired by the Arduino and had built several … Read More

Data At The Speed Of Life – Reactive IoT Applications in Scala with Angular2

I had recently come off of a three year contract and found myself with some time on my hands. I was interested in working on an application that interfaced directly with some sort of small device. The director of our company, Don Coleman, had done a good bit of work with small devices so I spoke to him about the possibility of building a small application around those devices. He agreed to it and offered to assist from the hardware end. Our director of training, Ken Rimple, was researching the Angular 2 JavaScript framework at the time and offered to build the UI for the application. We eventually decided that we would build a demo to display at our booth at the 2016 South by SouthWest conference. This post explains our approach and some lessons learned.

Order Out Of Chaos – Maintaining ordered processing of messages in AKKA actors

The reactive paradigm is a wonderful thing. The basic idea is that a reactive application, as much as possible, is asynchronous from beginning to end. It should be event driven, fault tolerant, scalable and responsive. Writing an asynchronous application, however, has it’s own set of unique challenges. In this post I’ll demonstrate an approach we took to solve the challenge of maintaining a definite order, specifically when performing database updates in asynchronous code within an actor.