A year of Poznan Scala User Group

This text should begin with something like: “The first meeting of Poznan Scala User Group was organized on January 14, 2016”. Then I should mention that the group has 187 members and we have already organized 9 meetings. Fortunately I quickly realized it is a little bit too formal and boring. I don’t want you to fall asleep in the middle of the first paragraph ;) So let’s move directly to the interesting part.

Lessons learnt

It can begin with a tweet

At the time we regularly had Scala-related meetings at the office, hence the idea was not very revolutionary, just slightly different.

Unfortunately, the Scala developer mentioned in the tweet disappeared somewhere and I either don’t remember who she/he is or I have never met that person.

Corporate attitude does not help

Jacek must have been terrified during our first Skype call. Definitively, I was terrified after the call because I realized how many corporate behaviors I managed to incorporate in my private life. I am not sure how many times during that call we said something is impossible because we are still waiting for an email response, someone else’s decision, etc. Busy waiting is a thing in real life too!

You do not need to be an expert

I am not sure if anyone still remembers about that but the group (and probably all user groups in general) was created so that we can learn together. The first topic (ReactiveX) was chosen because of hype driven development and a desire to use it at work ;)



Therefore you should not be afraid of speaking at a meetup, because what really matters is showing some results and commenting what you have learned. What if you tried something and failed? That is even more interesting! Especially if you remember your mistakes and can tell us about them.

In my opinion, you can even try choosing a very difficult topic to ensure that your level of proficiency does not matter because people listening to you know even less ;) I have to check whether it is really possible…

You do not need to take good pictures either ;)

The first PSUG picture ever taken. The room was not empty, but I was not paying attention to the "marketing" value of the pictures. The fact that the photo looks terrible has been pointed out to me on multiple occasions, you don't need to do it again ;)
The first PSUG picture ever taken. The room was not empty, but I was not paying attention to the "marketing" value of the pictures. The fact that the photo looks terrible has been pointed out to me on multiple occasions, you don't need to do it again ;)

You cannot have too many pizzas

Two or three times we ordered enough pizzas to feed a small army. Obviously, it is not a problem anyone should worry about. If you have redundant pizza someone will take it. It may be the next group having a meeting at the same location, people working there or you can have a pizza raffle ;)

I would like to mention that pizza is mandatory. We tried to substitute pizza with chips and sweets only once and we will never do it again ;)

So many pizzas! ;)
So many pizzas! ;)

You can have a great meeting even if only three people show up

In the summer we wanted to meet at a bar instead of organizing a talk, mainly because it was difficult to find a speaker at that time. Three people (including two organizers) is not a group big enough to announce a success and post pictures of programmers drinking beers. Despite that no one was disappointed, we had some interesting topics to discuss and the beer was awesome ;)

Location matters

If you want to gather a lot of people in Poznan, organize your meetup at Poznan University of Technology. I wonder whether we will ever gather so many people in any other location.

Nevertheless now we organize meetings in the HolidayCheck office. Not only the office is awesome, but also if you want to commute by a tram there is no better location.

So many people! ;)
So many people! ;)

Talking is not everything

When I was preparing the presentation about Akka Persistence I realized that even I get bored by it. It was necessary to change it dramatically. Attempting to facilitate a workshop about a freshly learnt topic was not an option. Additionally, I made the decision about replacing a major part of the talk with a more practical exercise two days before the meeting hence I did not want to announce any changes. Because of that a low-tech version of a workshop was created. Instead of using their computers and writing code, attendees had only a white board and everything they managed to memorize during the introduction.

I am not sure if everyone has a similar opinion, however I think it was quite successful and significantly better than two hour long talk in which the speaker tries to show everything and explain even the slightest details.

I wanted to check what happens when I prepare a short introduction and let people work on solving a "toy problem."
I wanted to check what happens when I prepare a short introduction and let people work on solving a "toy problem."

Cancelling a meeting is not the end of the world

It is not the end of the world but I have learnt that there are correct ways of cancelling a meeting and my way of doing it. It turned out not everyone received the message and some people showed up just to see an empty room. Probably in case of canceling an event it is better to risk spamming people and send more messages than necessary.

Things to improve

Talks for beginners

When we ask attendees what topics they expect, there are people who want to hear something about advanced functional programming concepts, many want to listen to a talk about data processing and “big data”-related concepts, but the most desired topic is a beginner-friendly introduction to Scala. Preparing such talk (or a workshop) seems to be tough not only because it is difficult to decide which concepts are truly basic or what can be omitted, but also because effective teaching is more demanding than sharing own experience.

I am sure that a single introductory talk is not enough and we need a series of meetings. Even though preparing them will be challenging, such talks may significantly increase the number of people coming to our meetups.

Organize a workshop

We keep saying that it is time to organize a workshop. If the “introduction to Scala” is supposed to be useful it has to be a workshop. We can’t postpone it any longer…

See you soon!
See you soon!

Remember to share on social media!
If you like this text, please share it on Facebook/Twitter/LinkedIn/Reddit or other social media.

If you watch programming live streams, check out my YouTube channel.
You can also follow me on Twitter: @mikulskibartosz

If you want to hire me, send me a message on LinkedIn or Twitter.


Bartosz Mikulski
Bartosz Mikulski * big data engineer * conference speaker * co-founder of Software Craftsmanship Poznan & Poznan Scala User Group