When I decided to speak at conferences I took the most naive approach:
- google for "java conference"
- propose a talk wherever the call for papers is open
What were the first hits? Devoxx of course! And - surprisingly - they passed on a speaker with a contested topic and no experience. Shocker! So I started participating in ever more CfPs without much positive outcome.
And then JEEConf accepted my talks within an hour after me proposing them. I was thrilled! But immediately afterwards I started to wonder why they were so eager to accept me. Did I really want to attend a conference that would accept people like me as a speaker? I even doubted whether this really was a professional event.
How wrong I was!
Looking at the program, I found about half of the talks had crazy interesting titles. Want a sample?
- "What Mr. Spock would possibly say about modern unit testing: pragmatic and emotional overview"
- "Implement your own profiler with blackjack and fun" (I wonder whether Vladimir proposed a different title.)
- "Counter Wars, or 100500 ways to shoot yourself in the foot when implementing thread-safe counter"
I settled in for a hard time deciding which talks to attend but then I realized that about three quarter of them were in Russian. While that is absolutely ok, it was still unfortunate for me. There were a couple of talks I really wanted to visit but couldn't understand.
Of the ones I attended, I found these the most interesting:
- "Limits of Complexity in Computation" (Attila Szegedi, stopgap talk without program entry): How many layers of abstraction do we have? Which ones do we need? Where do our systems end and humans begin?
- "The Road to Reactive with RxJava" (Frank Lyaruu): Very thoughtful, funny, and educational introduction on why and how to include reactive concepts into our legacy apps (because are there any other?).
- "Everything I Ever Learned About JVM Performance Tuning at Twitter" (Attila Szegedi): Great to hear how the big guys do it.
(I will update this post and link to the videos of the talks as soon as they are online (in about four weeks). If you don't want to miss that, follow me on Twitter or Google+. Or subscribe to my newsletter.)
▚JUnit 5 and Java 9
And then there were my talks. They went pretty well with unanimously positive feedback, especially the one about JUnit 5. The audience was great and really participated in the interactive part.
It felt like the talk could be a little longer, though. When the video is online you might be able to watch me realize at about 15 minutes in that I already covered over half my slides. Oops. But there were a lot of questions so it went fine.
Talking about questions, I tend to have a round of questions after each section. I think that worked well with JUnit 5 but not so much with Java 9. There I felt that it interrupted the talk, breaking the flow. Something to think about.
I also finally came to the conclusion that my coverage of migration to Java 9 is too detailed and I tend to loose the audience. I could make it even more detailed, add some diagrams and examples, and axe something else. But I think I'll go the other direction: make it much shorter and only give an idea instead of the full story.
You can find the slides and the videos (soon) on my list of past talks.
Many people say that, when it comes to visiting conferences, they come for the talks but stay for the community. I can totally see why one would feel like that! Because now I do too.
I met a couple of wonderful people and, over the course of two days, we established Brownian motion patterns, meeting up here and there, continuing interrupted conversations or starting new ones with ever different participants. Like a decentralized and asynchronous debate club.
And it felt almost surreal to sit at the same table as people who work(ed) at Google, Twitter, Oracle, or JetBrains. I know this sounds stupid, fanboy-y, fake-modest. Whatever, I really mean it! I feel like these devs are not only in a whole different league, I'm not even sure whether we're playing the same sport.
We discussed a wide variety of topics, too many to list, but these are the most relevant to me:
- It was very interesting to discuss Silicon Valley's culture, especially its dark underbelly (founder culture, monoculture, ageism, gentrification, the broken hiring process), with people who actually live(d) there.
- Cadenza lives in a single source tree but is split into about 350 Maven projects. This adds massive overhead: just one more second in each project causes a full build to take 6 minutes longer. So I was thrilled to talk to devs having first-hand experience with single source tree build tools (Bazel, Pants, and JetBrains's in-house equivalent).
- Asynchronous and reactive architecture looks super interesting and conversations with experienced practitioners absolutely confirmed that.
But it was not all work and no play. Roaming around Kiev was a lot of fun as well!
Because Kiev was a killer! Apparently I have a weak-spot for the absurdly monumental and grotesqly grandiose Soviet architecture. But the city has so much more history than the Soviet era and it shows.
And it is alive! (Although traffic is doing its best to change that.) Of the various cool things, this one stood out:
Onuka played this live in a public concert on St. Michael's Square. Nuff said.
I'm an extremely urban guy and staying right at the Maidan gave me exactly what I need (nevermind the sex-shop next door).
But Kiev also offers relief from traffic, noise, and people. The landscape is gently sloped with many parks and the Dnieper, meandering next to the center, is just beautiful. There are even sand beaches that people will soon start to hang out at.
Big Kudos to the organizers! They did a fantastic job and the whole conference felt like a well-oiled machine.
The venue is well-situated, close to the city center but surrounded by parks. It even offers a nice view of the other river bank.
Auditories, hangout areas, speaker lounge, food, drinks, all was great!
I could go on and try to come up with all the other details I liked but that's gonna be boring (yes, even more!). Instead I want to name the two things that I think should be improved:
- Get a lip for those laptop stands, seriously!
- There were exactly zero women giving talks and about 90% of attendees must've been guys. Reinforcing gender stereotypes, this was completely reversed when it came to booth personell. By a large margin, these were young, beautiful women. I'm sure JEEConf can do better and be more inclusive!
If JEEConf will invite me again, I'll check on that next year. ;)
This was my first conference - not only as a speaker but in general. I thoroughly enjoyed it and, as I think that such events will become more important for me, I feel lucky that I had such a great start into a new aspect of my life.
Thank you, JEEConf 2016! And thank you, people who shared your time with me!