On November 12 and 13 I was at the inaugural EuroBBQ in Amsterdam: the first Big Android BBQ Event held in Europe.
As an android developer, I have had the chance to attend a few of these events (like DroidconIT 2014 & 2015, DroidconUK 2014, DroidconNL 2014, GDG Dev Fest NL 2015). Every time I missed one of them I always felt a bit sorry for the lost opportunity to enjoy the talks and learn new things first hand.
This year I could not attend the Droidcon UK but thanks to Joe Birch, who was there and found the time to write a blog post about his experience there, I felt a bit closer to the event. It was nice to know what was happening in London through his post and to read up on the interesting links and slides presented at the event.
Because of this, I decided to write about my experiences at the BABBQ in Amsterdam, which I hope could be interesting for some android developers who could not attend it in person.
If you are interested in all the videos, links, GitHub repos, slides and fun facts happened during the event, then you can find them on my personal blog post via this link, for the first day, and this other one, for the second day.
In this post I will briefly talk about my favourite talks of this two days event.
Working in an effective team, by Filip Maelbrancke consultant at AppFundry (slides).
Filip talked about how their developers follow all the latest techniques to be as efficient, productive and collaborative as possible. I have found this talk particularly interesting because at Coolblue we are also trying to be on the crest of the latest development trends while trying to cope with an IT-department which is growing like crazy. It is not always easy to do that or be sure that we are following the right path. So whenever I see another company adopting similar practices as we have, it’s always interesting to see how they do it. Filip has talked about their agile way of working (based on the lean startup), their prototyping techniques, A/B testing using optimizely), staged rollout, code review techniques, peer programmings, TDD, testing as documentation, and many more. Other tools successfully used at AppFundry and worth to check-out are the Atalassian products, for scrum stories and issue tracker, Invision and Zeplin for better prototyping and communications between designer and developers, AWS Device Farm for cloud testing, Jacoco for static test metrics and dashing for fun 🙂
At Coolblue, we use the alpha and beta channels of Google Play for A/B testing and we are gonna try optimizely too. For automated tests instead, we have built our own device lab connected to a Teamcity build server and to our GitHub repositories. From what I have seen at the presentation, the AWS Device Farm looks like a valid alternative to save on time for managing the device lab and money for extending the device lab with new handset. It is definitely worth trying.
Custom Lint rules – A journey towards cleaner code, by André Diermann, from Germany (slides)
I have read and used Lint and I already thought that it could be quite useful if used in a systematic way. However, because of its complexity and lack of documentation from Google, people tend to forget about lint. André brought it to the next level, he made custom Lint rules! You know what that means? All the custom guidelines and style guides that we usually create in every company to facilitate the work of reviewers and to improve the code quality can all be automated. That’s really cool. I already see myself implementing Lint rules to help out mobile team to follow our code guideline.
Expressive functional testing with Espresso, by Maciej Górski from Poland
Maciej is also worth following on Twitter .At the conference he did some live coding, which is always risky. Despite some technical problems with the bad network connection, he managed to write some nice UI automated tests in Groovy with Espresso combined to Dagger. If you have never used the Groovy programming language in your android project, then make sure to learn this because it can make your tests more readable and faster to write. For the newbie, Espresso is a test framework by Google to automate UI tests of your apps, and Dagger is a dependency injection framework created by Square, and now further developed by Google. If you are serious about testing and you never heard about them, I recommend you to dive further into it.
I put a lot of focus on writing and automating tests, however I have never used Groovy for that. After this talk I am definitely going to learn that language too.
This first Big Android BBQ in Europe was in general a good event. Perhaps the location could be improved next year and an expo area extended, however, there was for sure a lot to learn thanks to the great speakers. I am looking forward to a second edition of the event in 2016.
Last but not least, a pic from Twitter about the world’s largest marshmallow sculpture built during the BABBQ.