Functional programming as an alternative (additional) paradigm to OOP

Prague Software Craftsmanship
Prague Software Craftsmanship
Public group
Location image of event venue


It is very easy to get stuck in one way of doing things. This is as true of programming as it is of life.

Although a programming paradigm represents a set of stylistic choices, it is much more than this: a programming paradigm also represents a way of thinking. Having the only way to think about problems is too limiting. As Émile Auguste Chartier noted, there is nothing more dangerous than an idea when you have only one idea. Perhaps even more problematic than being stuck with a narrow view of paradigms is being stuck with a dysfunctional view of each paradigm.

For more than 25 years OOP has been considered as the dominant paradigm for describing real-world objects and processes and it became too easy to abuse. For instance, many developers working in languages and frameworks that support object orientation have a strong idea of the principles of interaction, data abstraction, and granularity that support an effective view of OO, and instead surround themselves with manager objects, singletons, and DTOs.

On the other hand, functional programming was and still is treated as a paradigm for solving scientific, mathematical problems, which are, sort of, far away from the development of business applications.
During this session, we will explore the weakness of OOP and the strength of FP with examples in different languages and the opportunity for discussion.

Mikhail Smal is a software engineer with more than 10 years of experience. His main focus has always been web-programming in .NET and JavaScript. A couple of years ago, when he moved to the Czech Republic he fell in love with functional programming. F# became his "number one" language. He is actively participating in the F# community since 2018, talking about F# and Fable at meetups and conferences and to put effort to F# OSS projects.

7pm registration
7:10pm start of the talk
7:50pm questions/discussion
8:10pm networking