Progress in software engineering is known to be very rapid. New programming paradigms are constantly invented. At CODEFUSION, we are familiar with many of them. We started a dozen years ago with object-oriented programming, where the representation of reality is made up of abstract entities combining state and behaviour – objects. Those were the times when we were using objects to replace software produced in the procedural model (where pieces of code – procedures – without special care for its structure simply performed certain functionalities). For some applications, we used functional programming, which is ideally suited to calculative tasks (everything in it is a function that always returns the same value in a declarative way for the same input parameters). We still very much use aspect programming to inject certain dependencies into the software we develop without mixing functionality. For some time now, we have been entering more and more strongly into the world of reactive programming, where loosely coupled functionalities talk to each other via events to which we react. The messages, queues and kafkas of this world – beware! We are sure that this is not the end of our adventure with software paradigms. If they are useful in our day-to-day work then we are eager to learn about them and will not hesitate to use them!