A very Android afternoon
All of our teams care about sharing knowledge, so Team Android got together for an educational afternoon.
All November Five teams love to take time to discuss the latest news and the best tips and tricks. The Android team is no exception, which is why we get together every 3 weeks for our Android Talks.
During these mini-events, we grab some lunch and watch interesting videos while eating. We then go over any new things we tried or issues we encountered, and sometimes we even have a small workshop.
These meetings make sure everybody knows what everyone else is working on. However, we felt that we needed something extra. So last Thursday, we gathered for our first Android Afternoon, featuring the same concept: Presentations & Food.
Phrases for all
We started off with a presentation to recap the previous year. The way we work has actually changed a lot recently, but these new tools already feel familiar – we’d almost forget they weren’t around for ever.
A good example: the copy (aka: the text the user sees) we use in our apps. To make sure an app has identical copy on Android, iOS and Windows, we keep all text in one location.
In the past, this location was a simple spreadsheet, which could be edited by our clients. When they made changes, they had to mark it in a color so we knew we had to update this in our apps. As you can guess, this worked, but led to stupid mistakes from time to time.
Today we use a tool called PhraseApp: a web platform to manage our translations more efficiently. It even has a command line tool. And we love to automate stuff. Today, when a client updates a translation, all our apps are updated automatically – no developer needed.
Developer optional, Robot(ium) included
Next up: my own presentation, on speeding up development and writing higher-quality apps. This time, we automated the setup of a new application. The process of creating a new, blank project used to cost us almost an entire day. Everything was done manually, including adding our most-used libraries, beta builds, etc.
We can now perform the entire setup in less than a minute, which is a great time-saver when we start a new project.
After that, we discussed one of the more common design patterns: Model-View-Presenter. We’ve tested out a lot of patterns, but most of our team feels like this is the one that works the best on Android.
We then moved on to talk about automated testing. Benoit has been spending much of his time writing automated tests for his projects. Of course, most of us know how to write unit tests, but our newest developers didn’t have much experience with it yet. So to ensure that everyone is up to speed, he started with an introduction to unit testing.
He explained how to write a simple unit test and why this couldn’t cover every line of code we write. He also presented Robotium as a great tool for testing. And course he shared a bunch of tips and tricks he’s learned along the way.
Lots of Java
We continued with a short introductory presentation to RxJava. Reactive programming really changes the way we think about software development.
Such changes aren’t easy to learn, so since Christophe has mastered this way of thinking, he explained the basics to the rest of our team. Once we had the important aspects covered, we were put to the test. We had a small workshop where we had to solve 15 smaller tasks. When most of the team figured out how to solve a task, we discussed the solution with everybody. In the end we applied what we’d learned in a small Android application.
For our final presentation we moved to our cinema room, where we have some cozy couches and a bigger screen. Because our Android Talks usually include a video presentation, we selected one this time, too. We watched a video about Android development in Kotlin. Kotlin is a programming language developed by JetBrains. Version 1.0 was released only recently, but the language is already on the rise in the Android development community.
Developing in Java 6 or even 7 can be frustrating, because they’re quite dated. Here, Kotlin can provide a much more modern alternative. Of course, the recent announcement that Android will move to Java 8 will definitely shake up this move towards Kotlin. We still think it’s useful to know the details of this new language, though.
And because our team meetings always include food, we moved to an Italian restaurant nearby after we wrapped up all our presentations. We had some pizza with the team – we were even accompanied by one of our designers and iOS developers (see - no hard feelings here!). In the end, some of us had to run to catch their latest train, but we were glad with our new afternoon format!