Posts

Showing posts from 2015

Thank You Traveloka

If you read my blog you'll notice that I joined Traveloka around 9 months ago. It was my first time working for a product company and it was a great experience. I've always worked for a service company before that. Traveloka is an amazing company and the growth is staggering. I learned a lot about working with app at scale and the mobile app landscape. The experience gained is invaluable. Around 4 years ago I had this idea about a social shopping app called nawaran . I built it in 3 months and launched it but the ecosystem wasn't ready. So I decided to shut it down. A few months back I had a chat with some friends with a similar idea. They are building something similar and I thought that it's about time I chase that dream. This is when I decide that it's time to move on and so I joined them. Fast forward a couple of months and here we are, on my last day as a Traveloka employee. Thank you Traveloka, for giving me the chance to get exposed more to the prod

Everything Happens For A Reason

Image
Everything happens for a reason. I know it sounds cliche but it's true. You may not realize what the reason is now. But there's a big chance that you'll know it later. I've always dreamed of being a pilot as a kid. I grew up with that dream and took a good care of my eyes. When I was 18 and about to graduate from highschool, my Mother disapproves of my dream. So, I moved on and took computer science. One thing stayed. I always take a good care of my eyes, until this day. I got married when I was 24, had my daughter when I was 25 and had my son when I was almost 27. Now I had a second daughter at 31. When my son was about 1 year old, we realized that something wasn't right with his right eye. We went to the doctor for diagnosis and teatment. The doctor said that we'd have to wait until he's 2 years old for futher treatment. The diagnosis was Strabismus . When he was 2, we went to the ophthalmologist. He had his first pair of glasses because his right eye

Android TDD Using JUnit, Robolectric and Mockito

Image
Android now supports unit testing. Android unit testing runs on devices or emulators that adds extra time during development. I'm a big fan of TDD and the way android testing is done does not help me much. However... Thanks to Robolectric, headless testing is now possible by leveraging gradle. I wrote this post as a result of trying out several different approaches that confused me. Hopefully this one will help you set it up better. How? First, current common Android development projects are tightly coupled. Most stuffs are done in the Activity or Fragment, blame the tutorials. This makes it hard for us to actually do unit testing since a unit test should be isolated. The tight coupling makes unit testing impossible. Then, come this approach called Model - View - Presenter (MVP). MVP aims at separating concerns. The three components involved handles different concerns: Model This component groups all data related concerns. This component handles data que