BlogtechnicalFunctional Design

Functional Design

Learn how to write simple functional solutions to everyday business problems, without jargon and without type classes.

19 April 2020# courses# scala# functional programming

Date: 27 - 28 April 2020
Location: Online Only

Capture the benefits of functional programming techniques across your whole application, in a way that’s highly accessible to the whole team and new hires.

Functional Design by John A. De Goes

Although functional programming theory is useful, most day-to-day functional programming does not require any category theory or even any type classes. Most problems can benefit from a domain-specific model, constructed using immutable data types and operators. Such functionally-oriented solutions are simple, composable, type-safe, and testable.

In this course, developers will learn how to write simple functional solutions to everyday business problems, without jargon and without type classes. Developers will learn how to construct type-safe and composable solutions to domain-specific problems, and how the single responsibility principle of object-oriented programming translates into orthogonality. When developers leave, they’ll have newfound ability to directly benefit from functional programming techniques across their whole application, in a way that’s highly accessible to the whole team and new hires.

blog-image

Topics

  • Functional domain modeling
  • The essence of composability
  • Measuring the orthogonality of operators
  • Achieving both minimalism and expressiveness
  • Using types to enforce business constraints
  • Generalized algebraic data types for advanced modeling
  • Principle of least power applied to functional design
  • Design techniques used in the ZIO library and broader ecosystem
  • Functional approaches to internal domain-specific languages
  • Translating between different domain-specific languages

Register

Related Posts

Functional Design

Functional Design by John A. De Goes Although functional programming theory is useful, most day-to-day functional programming does not…

See More
19 April 2020

Functional Scala 2020

Functional Scala 2020 Functional Scala 2020 returns for another year of great talks, familiar and fresh faces, and positive energy around…

See More

Stream Processing with Scala

Stream Processing with Scala by Itamar Ravid Stream processing is a computing paradigm that can radically simplify many aspects of modern…

See More
Subscribe to our newsletter