Confitura 2022 Summary

Confitura is definitely about people and community for us. There was a possibility to meet with TouKs (this is our name for ourselves) who work mostly remotely, friends, future co-workers, and also to reunite with ex-TouKs.
To begin with, some numbers. We met after a three-year covid break. Fifteen hundred people attended; a smaller number than in previous years, but this was also the case at other conferences. As usual, there was a Call 4 Papers, and following a Vote 4 Papers, 28 speakers were chosen to present, divided into four paths.

We are very happy that four TouKs were chosen to give their presentations.

Piotr Fus – Jak zacząć z metrykami? (How to get started with metrics)
Maciej Próchniak – No dobra, czas zsynchronizować zegarki… (Well, it’s time to synchronize our watches…)
Dominik Przybysz – OOP revisited.
Monika Ruszczyk – L10n, i18n i t9n w świecie JVM (L10n, i18n and t9n in the world of JVM)

(We will add videos as soon as they are available here: https://touk.pl/talks/.)

It was also very nice to see our former co-workers on the agenda: Jakub Nabrdalik, Grzegorz Piwowarek and Robert Piwowarek.

Apart from our great speakers, TouK took part as a sponsor as well. We’ve been a loyal partner ever since the first edition. We had a TouK and Nussknacker booth. You could hear about our culture, how we work, the projects we work on and our product Nussknacker.

Of course, a lot of TouKs were there to listen to the talks. Here are some of their thoughts.

Tomek Kalkosiński, one of our most experienced developers, wrote:

Microserwisy w rytmie ABBA (Microservices to the beat of ABBA) – Tomasz Sepołowicz
A comprehensive vision of the architecture in the bank, plus a chat about what is most important in this vision. The answer, of course, is people, not diagrams! It was more a story about plans, technology selection processes and the long road ahead rather than a simple presentation about accomplished things. A good opportunity for a moment of reflection.

“Panie, kto tu Panu tak…” – czyli porozmawiajmy o Legacy (“Now which cowboy did this?” or Let’s talk about Legacy) – Artur Skowroński
Arthur vividly summed up more than a year of work with a system that had been in operation since the 1980s. It was finally time to rewrite it, but no one knew how it worked. A very detailed presentation at a dizzying pace! We see every observation, every design decision and every implementation, and the action unfolds like a detective story. An intriguing presenter, lots of memes and hand waving – highly recommended!

Loom: rewolucja czy szczegół implementacyjny? (Loom: revolution or implementation detail) – Tomasz Nurkiewicz
Tomek showed lightweight threads in practice and what they affect. I expected it to be a revolution, but the number of physical processors can’t be fooled. And yet it is an implementation detail for specific cases.

Maciek Brzeziński, one of our interns last summer, was attending Confitura for the first time. He gave his opinion about two presentations he saw.

Loom: rewolucja czy szczegół implementacyjny? (Loom: revolution or implementation detail) – Tomasz Nurkiewicz
System threads in Java are quite heavy for some applications, and we often need quite a few more of them than we can afford. The resources we have are unlikely to allow us to run, say, a million threads. We’d probably run out of memory first or reach the operating system’s thread limit. In this area, Java is a little behind Kotlin and its coroutines, which are much lighter and share a finite pool of threads in an efficient way.
Loom is Java’s answer to this problem. It introduces virtual threads that are much lighter than system threads and can manage thousands of virtual threads using a few system threads. In a nutshell, we can call it Java’s answer to coroutines in Kotlin.

Best practices in practice: things that work for me so well I cannot believe you are not using it – Jakub Nabrdalik
Ex-Touk Kuba Nabrdalik’s presentation was cool. He talked about good practices in Java, mentioned how well-written tests almost act as documentation. He gave as an example a colleague who once agonized all day over a module or application until he got annoyed and rewrote the whole thing… in one day! Asked by what miracle he’d managed to do this, he said that the module was miserably written, but had well-written tests. In addition, he mentioned the advantages of mob review, where a large group, after their daily meeting, sit down together to review an even greater amount of code, so that more can be learned from it. And for me the most interesting thing he said was that if he writes an application, which he will also maintain later for the client, he writes it in such a way that, when something breaks, it is possible to find out without debugging just from the logs. Because, of course, you can write it and then, when it crashes, you won’t know anything without debugging, but when you maintain it later and fix it and have to debug it, you start to look at it a little differently.

Maciek Próchniak, who presented himself this year, commented:

After my talk I decided to listen to the following speakers (sometimes only for a while):

Bare metal Java – Jarek Pałka – as always it was fun, a bit chaotic and very, very technical – I didn’t follow all the details as I came a bit late.

Loom: rewolucja czy szczegół implementacyjny? (Loom: revolution or implementation detail) – Tomek Nurkiewicz – neat, clean, very informative talk about Project Loom. Maybe it didn’t change my view of the world, but for sure it helped to set various pieces of information in order.

3 kroki w tył albo 2 lata do przodu czyli o doświadczeniach po dołączeniu do dużego projektu open source (Three steps back or two years forward – or My experience after joining a large open source project) – Mateusz Gajewski – this, on the other hand, was a rather soft & light talk. Very encouraging as a story of an architect who came back to “hardcore” coding – a lot of observations – also about himself. Quite refreshing.

Business Decisions Management with DMN. How to automate decisions and scale-out SME knowledge. – Marek Bubała – well, I have a bit of mixed feelings on this one. The topic was quite interesting – how to make business logic accessible for subject matter experts (we also do it with Nussknacker!) – but the slides were hard to read, and the whole setting was a bit “enterprisey” – more of a sales presentation from Goldman Sachs than a good conference talk. Nevertheless, I’ve learned some interesting slogans.

Antek Różański focused on the content but also on the form of presentation:

Architektura i architekt AD2022 (Architecture and architect A.D. 2022) – Jakub Kubryński
Nicely presented, you can see that he has experience in giving presentations: he gestures correctly, does not umm or err, it was a pleasure to listen to him. But it also had substance: although the topic was broad, the author chose a couple of issues to focus on and described his experiences working with them in a succinct way; the listener did not feel “lost” or that the topic was beyond him. I really liked the unrelated “titbit” at the end of the presentation when the presenter boasted about his hobby: sports shooting. In his opinion, it deserves to be called “better yoga”, as it similarly calms and forces awareness of one’s body, while at the same time, in addition to the physical dimension, it requires analytical acumen and calculations as to wind speed, etc. A refreshing observation.

Concurrency – Java memory model – nie tylko dla orłów (Concurrency – Java memory model – Not only for experts) – Krzysztof Ślusarski
Nice presentation, of the “show me your code” kind, instead of baffling high-level concepts. The author gave the impression of having a lot of technical knowledge, while being a little worse when it comes to presentation skills, but still ok. It was valuable to show what tools to use in tests to reproduce strange results of concurrent code. The presenter did a good job of showing that many unpredictable results can be the result of just a java or machine version swap, with no changes to the code, and that, moreover, the JVM standard warns us about such cases. He also usefully showed in code how to properly secure multithreaded applications. After the presentation, however, I had the impression that this was a very broad subject and he’d barely scratched the surface in those 45 minutes.

GameDev okiem Backendowca (Gamedev through the eyes of a backend developer) – Robert Piwowarek
It was an interesting comparison of the tools used in the backend and gaming markets. There were some interesting insights into how COVID has affected game production – while most of the IT world can easily switch to remote work, in gamedev this raises problems related to the need for access to, for example, console development environments, which the console manufacturer did not provide in sufficient quantity at the beginning.

OOP revisited – Dominik Przybysz
It was a presentation of value to both newcomers and those needing a refresher on the basics of object-oriented programming theory. A lot of content conveyed in a concise manner.

Jak działają autonomiczne pojazdy (How autonomous vehicles work) – Krzysztof Kudryński
The author highlighted the main issues that need to be solved in order to have a working autonomous car. To better visualize these problems, the author showed the results of his hobby project: an autonomous drone. Overcoming one problem after another when controlling such a drone gives a good insight into what scientists face when developing autonomous vehicles. Much of the presentation was taken up with explaining how convolutional neural networks recognize images from the car’s cameras, which may be an advantage for people new to this topic, but I thought there would be more about other aspects of driving such vehicles. A great added value was the fact that the presenter works for Nvidia and showed the company’s various trained neural network engines, which you can use in your own hobby projects.

Let the final words belong to Adrian:

I’d heard a lot about Confitura, but it was only this year that I managed to attend. What mainly convinced me to attend was the opportunity to listen to practical and up-to-date lectures. To be completely honest, the content of the presentations was so diverse and interesting that it was sometimes difficult to make up my mind. I really recommend that programmers go and see for themselves.

See you next year!