Functional Design (London Edition) by John A. De Goes!

Actions and Detail Panel


Event Information

Share this event

Date and time



Online event

Event description
Functional Design (London Edition) by John A. De Goes!

About this event


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.

Who Should Attend

Scala developers who would like to apply functional programming to any code base, on any problem, without type classes or jargon.


Good working knowledge of Scala, including familiarity with immutable data, pattern matching, basic recursion, and algebraic data types. Developers who have attended ​Functional Scala Foundations​ and ​Functional Data Modeling​ will be well-prepared for this course.


● 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


The training course will take place online.

Daily Structure

4 hours a day starting at 4 PM UK until 8 PM UK.


Attendance to Functional Data Modeling is remote. Attendees will be provided with a link to a remote meeting session the day before the event, in which they can see and hear the workshop, ask the instructor questions, and chat with other attendees.


Attendees will be provided with example code, a course outline, and exercises in electronic form. The workshop is not recorded and recording is strictly prohibited.

About the Author

A mathematician by training but a software engineer by vocation, John A. De Goes has been professionally writing software for more than 25 years. John has contributed to dozens of open source projects written in functional programming languages, including ZIO, a library for asynchronous and concurrent programming in functional Scala. In addition to speaking at Strata, OSCON, BigData TechCon, NEScala, ScalaWorld, Scala IO, flatMap, Scalar Conf, LambdaConf, and many other conferences, John also published a variety of books on programming. Currently, John heads Ziverge Inc, a company committed to solving hard business problems using the power of functional programming.

Share with friends

Date and time


Online event

{ _('Organizer Image')}

Organizer Ziverge Inc.

Organizer of Functional Design (London Edition) by John A. De Goes!

Brilliant solutions for innovative companies

Save This Event

Event Saved