Published Sep 3, 2019

SE-Radio-Episode-249:-Vaughn-Vernon-on-Reactive-Programming-with-the-Actor-Model

Vaughn Vernon delves into the intersection of reactive programming and the Actor model, exploring their historical roots and their resurgence in modern applications. He elucidates on the integration of messaging patterns and domain-driven design within this framework, offering insights into how these approaches enhance software architecture by improving scalability, concurrency, and alignment with business needs.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Origins

    Reactive programming, though gaining popularity today, has roots dating back to 1973 with Carl Hewitt's Actor model. explains that while the computing power of the time wasn't suited for parallel processing, Hewitt's model laid the groundwork for future developments 1. The resurgence of reactive programming aligns with advancements in modern technologies, making it relevant for both server-side and client-side applications.

    Reactive programming, let's say on the server side, is going through repopularization now or becoming popular on the client side.

    ---

    Vaughn notes that even in the 1980s and 1990s, developers engaged in reactive programming through GUI applications, although it wasn't labeled as such at the time 1.

       

    Server-Side

    On the server side, reactive programming is gaining traction by utilizing principles similar to those in client-side applications. Vaughn describes the Actor model as central to this approach, where actors serve as primary computational units that react to stimuli without concurrency issues 2. This model allows for asynchronous message handling, enabling efficient processing and communication between components.

    Actor model focuses on an actor as the central and primary unit of computation.

    ---

    By adopting these frameworks, developers can achieve more responsive and scalable server-side applications, enhancing overall system performance 2.

Related Episodes