Last month Thessaloniki welcomed the first Droidcon in Greece. It was also my first time in Greece, and I was fortunate to be invited as a speaker. Aside from the high quality of the conference itself, the organizers (special thanks to Eliza Camberogiannis ) did a great job of spoiling us. It started at the airport, where a taxi was waiting for me. On Droidcon Eve, the other speakers and I were given a bus tour of Thessaloniki.
We stopped at a Bougatsa shop around the Byzantine Walls and tried both the salty and sweet versions of the pastry; my vote went to the sweet Bougatsa with cinnamon, pictured below :
Before lunch, we visited a local market and tried some mezze (ham, cheese and the biggest olives I’ve ever seen.) Then we were treated to a seafood lunch where, again, we experienced that extremely good Greek hospitality and cuisine.
The talks I liked the most
Droidcon took place at Noesis ( ΝΟΗΣΙΣ ), a science park on the outskirts of Thessaloniki. All of the talks were interesting, but these takeaways were the most memorable:
All the talks were interesting , some were more memorable.
Damien Mabin, Google developer advocate and former game developer , gave advices for game monetization :
- Even if an user spends st 1$ in your game it’s still more than what you would get from him watching ads in your game/app. As soon as the user spent money on your app, remove the ads, he gave you enough money. The whales (big spenders) still generate more revenue the average user who spends less than 5$. Duet cleverly uses this strategy.
- Damien also noted that time-constraint challenges incentivize players to spend more time in the game; these challenges generate a nice surge in traffic from the same users. (This point applies to non-game apps as well.)
Developer and evangelist Svetlana Isakova of Jetbrains (editors of Android Studio) demoed Kotlin, Jetbrain’s homegrown programming language. Nicknamed “the Swift of Android,” Kotlin is considered to be less verbose but more readable than Java, and it supports immutability, nullable types and lambdas. The easiest way to start using it is by automatic conversion of Java file to Kotlin file, done with an Android Studio/IntelliJ plugin. Java can interoperate with Kotlin methods and vice versa. In one of my pet projects, I’ve found Kotlin to be very concise for POJO classes with setter and getter methods.
Josh Skeen, an instructor at Big Nerd Ranch, led a workshop on RxJava — something I was really looking forward to. Rx stands for Reactive, and you may have heard of Retrofit + RxJava in combination. Josh explained the fundamental concepts of Rxjava, a library for composing asynchronous and event-based programs by using observable sequences. We tried to solve his RxJava Koans in order to reach RXJava enlightenment.
Savvas Dalkitsis from Shazam discussed how aspect-oriented programming can isolate code related to analytics and ads from your business logic. It reminded of our code base at Zalando, which uses a similar technique (tracking) for analytics.
Special kudos to the most productive speakers : two French men. Damien Cavaillès presented three talks and Damien Mabin did two talks.
As for my own talk (my second Droidcon presentation — I got to speak at Droidcon Berlin earlier this year), I focused on “App Fails and Retrospectives.” The topic didn’t quite fit the SDK track, which was where I appeared, in that it mostly offered failure-related anecdotes based on real-world Zalando experiences. Judging by the audience’s reaction, our “best” failure was the time our app was about to become the Editor’s Choice on Google Play, and on the same evening I had to revert to the previous app version because of an untested crash that was going to affect millions of users.
I came up with the idea of “epic fails” from an active Zalando group chat called “#guild-fuckup,” one of the most active of Zalando Tech’s +100 guilds. I found inspiration there the day before the Droidcon Berlin deadline, submitted the talk … and was accepted without sponsorship! I couldn’t offer expertise on trendy topics: Internet of Things, wearables, Android Auto, but failure and mistake-making was something I thought every dev or dev team could relate to, big company or small startup.
All Good Things come to an end
After the very last talk, we took a “family” photo and finished the event with a Greek dinner (of course).
Before leaving Greece, I bought a Terkenlis chocolate cake (tsourekia) for my team in Berlin. A Greek colleague recognized the cake and thanked me for bringing the best back from Thessaloniki. I thought it was the least I could do for all the hospitality I enjoyed there! It was definitely worth the trip.