3 Heuristics for Decision Making - Naval Ravikant

There are infinite choices that we’re making all day long and trying to apply some rule to all these choices is difficult. These rules don’t apply to everything. Be intelligent when to use them. 1. When faced with a difficult choice, if you cannot decide, the answer is no. Some decisions can be really long lived. It’s really important to only say yes when you’re pretty certain. You’re never gonna be absolutely certain, but you can be very positive.
READ →

Under The Hood: #1 Android Process

Android is a system that can run more than one application at the same time. When you play games, you may get an email notification or a DM on Twitter or your apps might be updating in the background. To enable this, memory and CPU time need to be divided among multiple applications.
READ →

Domain Driven Design for Android Developers

I was exposed to Domain Driven Design in 2014 or so, almost 10 years after the book was written by Eric Evans, on one of the major products I was working on back then. I’ve found it quite beneficial for figuring out the problem domain and writing maintainable Android apps.
READ →

Android Gotchas: Mystic Debounce

So debounce is a pretty cool operator in Rx. When you want to emit an item only after a certain amount of time has passed, debounce does that in a pretty simple way..
READ →

Android Gotchas: #2 View.GONE layouts

Lazy inflate hidden views! #perfmatter. Toggling Visibility.. I’ve always had to deal with layouts that are GONE by default and are made VISIBLE based on certain conditions.
READ →

Android Gotchas: #1 Setting a Drawable on a TextView programmatically

Android Gotchas is a mini-series on the quirks and idiosyncrasies of Android app development.
READ →

Object Oriented Tricks: #6 SLAP Your Functions!

Make sense of that long function. SLAP it! (Single Level of Abstraction Principle)
READ →

Object Oriented Tricks: #5 The Boy/Girl Scout Rule

Leave the code cleaner than you found it.
READ →

Object Oriented Tricks: #4 Starter Pattern

Use the Starter Pattern to simplify Activity launches
READ →

Object Oriented Tricks: #3 Death By Arguments

Use this simple trick to make your functions easy to comprehend!
READ →