I revisited Chicago after 13 years, this time to attend my first overseas conference as a speaker - I presented my talk "Identifying Code Smells". This is my review of the conference.
Technically, I have presented overseas before once while working at Ubisoft. There, I attended the Ubisoft Developer's Conference in Montreal, Canada. However, in this context, it does not really count because it was only an internal conference. Also, this was way before I started my real speaking adventure with topics revolving around software development and testing.
On March 27, I was supposed to fly to Chicago via Munich. A few days before, the entire flight was canceled by Lufthansa because there was to be a general strike in Germany on that very date. This affected not only flights, but also rail connections. I had lots of fun going around in circles from Lufthansa's chat bot that suggested me to call the hotline and the hotline telling me to use the chat bot...
After a lot of back and forth, I was finally offered a new flight, which was to go the next day via Frankfurt. I was happy to be able to travel after all.
However, this flight was also canceled the day before due to IT problems at Frankfurt airport.
After using the support chat that magically started working fine again, I was offered a new flight a few hours later than the initial one which I gladly took. There were some more problems with checking in that resulted in some more hours spent in Lufthansa's support hotline but it was finally sorted out.
On Tuesday, I could finally fly to Chicago via Frankfurt. I almost missed my connecting flight because there was no ground crew to unload the aircraft. In the end, the pilot himself unpacked the bags - my personal hero!
I arrived at the conference venue, Voco Chicago Downtown, in the afternoon. This was where I stayed as well so that was quite convenient.
A few hours later, the speaker's dinner took place in a nearby restaurant, the Hampton Social. It was really cool seeing so many people in person that I only knew via zoom or social media before. Unfortunately, I had to drop out a few hours later because the jet lag kicked in and I just could not keep myself awake.
The first conference day started with me waking up at 3am but I was motivated nonetheless.
This was the first time I got to take a look at the conference venue more closely. It all happened in two rooms with a removable wall down the middle. That meant that these two rooms could be used individually for the two parallel conference tracks and without the wall for keynotes.
Also, all audience members could sit at tables which was great for taking notes or having laptops open.
These are the talks I watched:
This was the keynote by Diego Molina from Saucelabs. He talked a lot about the internal organization of the Selenium project and its core contributors. Also he touched on the subject of the wrong perception of Selenium as being a test framework. This is unfortunately misused by framework vendors for unfair comparisons and marketing.
Let me repeat it here once again: Selenium is not a test framework!
Another interesting point was that the actual usage statistics of Selenium make it one of the top technologies used for browser automation. If you look at blog posts and articles, especially on platforms like LinkedIn, a different picture is conveyed here that does not correspond to the facts.
Finally, Diego talked about the most important feature in both Selenium and the WebDriver specification: the bidirectional communication or "BiDi".
All in all, this was a super informative overview of the state of the Selenium project and a perfect appetizer for the whole conference.
Next up was Erika Chestnut with a second keynote. She talked about how to build a quality culture by seizing relevant quality related opportunities instead of neglecting them. She also talked about how people in QA might tend to put themselves into boxes of their expertise which keeps them from breaking out and trying new things.
This was very engaging and motivational and a great follow-up of Diego's keynote.
Since my own talk was not too far away, I did not watch the other ones before it to prepare some more. Luckily, all talks were recorded and are now available so I can rewatch the ones that I missed here: https://www.youtube.com/playlist?list=PLRdSclUtJDYXDEsWI0vwBmJxW17NgsaAk
If you are interested in my talk, you can watch it here as well.
It was great to be able to speak and I was surprisingly calm. Usually, I am way more nervous. I guess this was due to the fact that that I was able to acclimatize well and already got to know many people in advance. So it felt more familiar than starting "cold".
Next up was the talk of the conference for me. Anand Bagmar spoke about quality metrics and that we have to refrain from defining the same metrics for all roles involved in the software development lifecycle. It was great that this was also partly interactive so the audience could give their inputs during the presentation.
The second conference day was again full of talks that were a joy to watch!
Mark Winteringham from Ministry of Testing kicked things of with a keynote about the difference between online test automation resources vs real life. He showed how wide-ranging and diverse the tasks are that automation engineers do daily, weekly, and monthly.
The main message was that there tends to be too much focus on tools. Ministry of Testing wants to change this with an open sourced automation curriculum: https://www.ministryoftesting.com/topics/curriculum-automation
Shi Ling Tai showed her https://untestable.site/ which showcases different buttons that are usable by a real person but untestable by vanilla Selenium. In true live-coding fashin she demonstrated how to get around the various issues and create a framework that can handle these cases with ease.
This was a cool talk that will make me look at my own framework code closer to see if it could cope with the different buttons.
Andrew Knight, Applitools' "Automation Panda", was clearly one of the most experiences speakers of the conference. His talk was about the differentiation of product data and test case data. He showed various ways of preparing meaningful test data and strategies to manage it efficiently.
Unfortunately, this talk was over Zoom and not in person. However, the content of this presentation made up for it easily.
Here, Maksim Sadym demonstated the state of the WebDriver BiDi implementation in Chrome and which features are already usable. Also, he showed the roadmap of this exciting new way of communicating with browsers bidirectionally and why this can be a game-changer for Selenium tests.
After watching some more lightning talks, my brain was overloaded, so I decided to visit Chicago's famous Millennium Park which I last saw 11 years ago. Seeing the "Cloud Gate" brought back some nice memories and made me want to visit this city again with more time to spend.
The next day, it was time to say goodbye already. Luckily, I had 5 hours to spend walking to the Navy Pier and across the downtown shopping streets to prepare for my long trip back.
Finally, I took the Blue Line train back to the airport, together with a group of speakers that were also still there (thanks again, Simon Steward, for giving me a 5 dollar bill to pay my train ticket as my credit card was not accepted...). I was lucky to catch my flight back since the trains connecting the Chicago airport terminals were completely broken and caused a massive delay.
In the end, I finally reached Germany again without any more problems.
This was a great conference! It took place at a nice hotel, had the perfect amount of attendees to be not too large and not too small (there were close to 300 participants) and some great talks. The best thing about being there in person, though, were the many personal conversations I had with some of the key figures of Selenium and the companies supporting it.
Also, thanks to Shi Ling Tai, I got to try something new:
I want to explicitly thank all the organizers, technicians and helpers for making this experience so smooth and enjoyable!
Goodbye, SeleniumConf Chicago! Thanks for having me!