World Congress 2023 β€’ Sep 27, 2023

Tackling Complexity With Functional Programming And Kotlin

Georg Dresler

Ditch brittle exception handling and endless boolean flags. Discover how practical functional programming concepts in Kotlin can transform complex business requirements into readable, maintainable, and compiler-safe systems.

Pause
Mute Enter Fullscreen
#1 about 5 min

Navigating complex customer requirements in software projects

Real-world examples of highly convoluted feature requests demonstrate the need to systematically manage application complexity.

#2 about 3 min

Analyzing the drawbacks of standard exception handling

Relying on extensive try-catch blocks forces developers to compromise between precise debugging capability and overall code readability.

#3 about 4 min

Replacing exceptions with the either type functional pattern

Utilizing a generic sealed class to explicitly represent success or failure states eliminates unpredictable runtime crashes.

#4 about 4 min

Chaining functional operations using flatmap and fold

Higher-order functions process sequential logic cleanly and route isolated errors to appropriate logging or messaging workflows.

#5 about 4 min

Enforcing data validation with private constructors and operators

Restricting object creation behind a companion object ensures models are implicitly validated before entering the core business logic.

#6 about 3 min

Recognizing the structural pitfalls of conditional boolean flags

Depending on unstructured boolean properties to track partial input states introduces fragile conditional checks across downstream functions.

#7 about 3 min

Controlling state complexity through algebraic data types

Implementing pure sum and product types allows the compiler to reject invalid structural transitions without relying on manual guardrails.

#8 about 3 min

Combining functional data abstraction and explicit validation

Merging encapsulated type structures with functional operators produces safe execution pipelines from raw drafts to validated domain artifacts.

#9 about 4 min

Summarizing architecture benefits and answering audience questions

Final reflections touch upon functional ecosystem tooling like the Arrow library and managing functional composition at scale.

Matching moments

1:43 min

Summarizing the practical engineering advantages of writing Kotlin

Iris Hunkeler Β· LIVE

1:33 min

Configuring runtime Java and Kotlin interoperability protocols

Iris Hunkeler Β· LIVE

4:21 min

Navigating Kotlin Multiplatform beyond the happy path

Andrea Della Porta Andrea Della Porta Β· WWC Europe 2026

2:23 min

Taming declarative complexity with Kotlin Coroutines

Matthias Falkenberg +1 Β· WWC 2022

2:54 min

Live coding demonstration of Kotlin null safety

Iris Hunkeler Β· LIVE

4:43 min

Architectural boundaries and the Kotlin Multiplatform survival kit

Andrea Della Porta Andrea Della Porta Β· WWC Europe 2026

Upcoming sessions on this topic

Open session

World Congress 2026 North America

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

How to generate business value through performance optimizations

Nikolai Sidiropulo

Software Engineer at Meta

Nikolai Sidiropulo
Open session

World Congress 2026 North America

From Guesswork to Governance: Data Contracts Bring API Discipline to Apache Kafka

Sandon Jacobs

Senior Developer Advocate at IBM

Sandon Jacobs
Open session

World Congress 2026 North America

Full Stack with Flutter - are we there yet?

Nemanja Stoőić

Senior Flutter Developer

Nemanja Stoőić
Open session

World Congress 2026 North America

Offloading IoT State: Solving the Memory Crisis on Legacy Hardware

Pravin Nagare

Senior Software Engineer, Roku

Pravin Nagare