Duncan DeVore

Duncan DeVore specializes in the design and implementation of distributed systems using the tenets of the Reactive Manifesto with Scala, Akka, and the Typesafe stack. Duncan believes in responsible design through functional programming with an abundance of test coverage. He loves to code, present, and help others work through the challenges of distributed computing. Duncan’s open source projects include journals for Eventsourced and Akka-Persistence based on the theory of Eventsourcing and CQRS. His specialties include distributed computing, microservice-based architectures, cloud computing, event sourcing, and CQRS. Duncan is the co-author of Reactive Application Development.

How reactive applications adapt

The principles of reactive applications facilitate adaptation.


One of the fascinating things found in nature is the ability of a species to adapt to its changing environment. The canonical example of this is Britain’s Peppered Moth. When newly industrialized Great Britain became polluted in the nineteenth century, slow-growing, light-colored lichens that covered trees died and resulted in a blackening of the trees bark. The impact of this was quite profound: lightly-colored peppered moths, which historically had been well camouflaged and the majority, now found themselves the obvious target of many a hungry bird. Their rare, dark-colored sibling, who had been conspicuous before, now blended into their recently polluted ecosystem. As the birds, changed from eating dark-colored to light-colored moths, the previously common light-colored moth became the minority, and the dynamics of Britain’s moth population changed.

So what do moths have to do with programming? Read more…