Clojure Journey is a mini-series on my experience and the fun that ensues from learning the Clojure programming language. On Day 1, I try to wrap my head around basic functions.
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.
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.
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.
debounceis a pretty cool operator in Rx. When you want to emit an item only after a certain amount of time has passed,
debouncedoes that in a pretty simple way..
Lazy inflate hidden views! #perfmatter. Toggling Visibility.. I’ve always had to deal with layouts that are
GONEby default and are made
VISIBLEbased on certain conditions.
Android Gotchas is a mini-series on the quirks and idiosyncrasies of Android app development.
Make sense of that long function. SLAP it! (Single Level of Abstraction Principle)
Leave the code cleaner than you found it.
Use the Starter Pattern to simplify Activity launches