Object-oriented programming: What does that even mean?


Details
This month we welcome Mathias Laurin to our user group. A long time open source contributor, Mathias became a software developer after an academic career as a physical chemist. He currently writes a cryptography library for Python on his spare time and enjoys reading
about clean code and agile management, personally tending
more towards XP and lean than SCRUM.
Abstract: Object-oriented programming (OOP) seems to mean different things to different people. Well, either the concept is largely misunderstood or it is not well defined.
It is indeed hard to find a simple definition of OOP. For example, SOLID are guidelines but not a definition. The big three "inheritance, encapsulation, and polymorphism" are not satisfying either: Inheritance is a language feature, and encapsulation and polymorphism can be achieved in non-OO code.
Starting with an historical approach, we aim at discovering this small and clean definition struggling to get out. Then, we show several ways to accomplish proper OOP in C++.
Sponsor: Brainlab AG
Schedule:
19:00 -- Registration, Refreshments & Food
19:30 -- Welcome to Brainlab
19:35 -- Lightning Talk
19:45 -- Main Talk by Mathias Laurin
21:00 -- Networking & Brainlab Insights
21:30 -- Official end of event

Object-oriented programming: What does that even mean?