When I joined AsanaRebel, I picked up the project and I started to navigate through the repository, focusing especially on the build.gradle file. Sadly, I had no CI setup to understand how to build the project on one side and, on the other side, I was facing 3 build types and 4 flavors, with not…
Modules, modules everywhere
I have joined asanarebel.com as Senior Android developer at the beginning of February. Asana Rebel is a health and fitness app with workouts for different body and health goals, but all of them are yoga inspired. When I joined, the plan was to increase the team size and raise the code base overall quality, focusing…
Kotlin DSL Gradle files, multiple modules and shared variables
This doesn’t want to be a real article, but more a crash course about Kotlin DSL for Gradle. The crucial point is the possibility of migrating an existing project to the new Kotlin DSL for Gradle, in an incremental, modularized fashion. Below we have a pretty standard root project build.gradle file: https://gist.github.com/hamen/7fa25a3a7ad8452873051f7782c77db5 The parts that…
Being alone is not being lonely
I have started meditating in 2014, thanks to Francesca. I was coming from a very hard year: working in the sport event business is no joke when it comes to stressful environment. However, I was thinking I was doing OK: new year, new job, new city, new work domain. What could possibly go wrong? Well,…
Push vs Pull: air conditioning system
By Ivan Morgillo, Sasa Sekulic and Fabrizio Chignoli This article has been excerpted from Grokking ReactiveX. After a life of imperative programming, switching to a reactive mindset could seem challenging: “Why should I give up all the control and bend to this <data are in control> thing?” Let’s look at it in an everyday life scenario:…
GDG Geneva — July event
GDG Geneva is a small GDG, but we try hard 😊 Last Monday we had our July event, and, despite the tremendous heat, spent more than one hour talking about MVP on Android. I prepared a small Android app to demonstrate how we can create an app that fetches data from a backend and shows…
My week at Droidcon Zagreb and App Builders
Last week was quite intense for me. For the first time I had two conferences in two countries in 3 days. I’m definitely too old for this 😜 Droidcon Zagreb Droidcon Zagreb started like this: The moment they dropped us at the hotel, we got a bag full of gifts and candy! There were plenty of…
Running Android Unit Tests before Git Push
This is a quick note about a Git hook I use to double check that everything is fine before pushing to our remote Git repo. This covers a paranoid scenario, I know, but sometimes a refactoring can go wrong and lose pieces between production code and tests: every now and then, one of my tests…
Android Library AAR and Javadoc
As an Android developer, I’m used to ask Android Studio/Intellij Idea for documentation constantly. I have even replaced the shortcut: now, it’s F1, the old-fashion help key. When I want to know about a method or a class, I hit F1 and the JavaDoc shows up: smooth. How does this works? Story time! The Catapush user…
Installing Git Cola on OSX
There are tons of Git GUIs out there, ready to be installed with a couple of clicks. However, over the years I have always used Git Cola because it seems to be the only one providing one specific feature I use very often: Stage Selected Lines Many GUIs provide only something like this: Stage Diff Hunk Hunks…