We have some exciting talks at this month's London Scala User Group! Join in to find out more about combining BDD and DDD with Scala, and immutability for scale and reliability!
The functional paradigm has been influencing mainstream languages for decades, making developers more efficient whilst helping reduce maintenance costs. As we are faced with a programming model that needs to scale on multi-core architectures and distributed environemnts, concurrency becomes critical
In these concurrency models, immutability, a key feature of functional programming paradigm will become even more evident. To quote Simon Peyton Jones, future concurrent languages will be functional; they might not be called functional, but the features will be. In this talk, we explain why!
Founder and CTO of Erlang Training & Consulting, Francesco Cesarini is an Erlang expert with over 15 years experience applying Erlang on projects in the real world. A well-know international speaker, Francesco is also the author of the forthcoming bo
“Functional and Reactive Domain Modeling” by D. Ghosh combines classic object-oriented DDD with functional programming in Scala. Although powerful, the book’s methodology leaves key questions unanswered, such as “How to choose a particular model among alternatives? How to split a model into parts? How to decide upon the modelling granularity?”
This talk attempts to solve these questions by combining the DDD methodology with Behaviour-Driven Development. First, the example domain — the design of pharmaceutical experiments — is introduced. Next, key concepts of BDD are adapted to functional programming, and a visual BDD-style model is developed for the domain. This model is then used to drive functional domain-driven design. Finally, we discuss the costs and benefits of the combined BDD/DDD approach for software development in complex domains.
Oleg Volkov gained a PhD in mathematics from QMUL. He founded a startup, XITIFIC, aiming to improve pharmaceutical R&D. He developed mathematical software for over a decade, and for the last two years has been working in Scala. His particular interest is in applying domain-driven design and functional reactive programming to develop interactive scientific applications.