Developer Aspirations

YAPB - Yet Another Programming Blog

Tuesday

17

October 2017

Avoiding Private Inner Classes in Java

by Colin Miller

Private inner classes. Used by many people as a quick and convenient way to encapsulate some methods and data that really seem to only be useful in the context of the parent class. They can read and write to variables of the parent, and even call methods of the parent which seems really convenient. The best example I can think of where I use them is OnClickListeners in Android: Button…

Tuesday

03

January 2017

Android and the use of the 'm' prefix

by Colin Miller

Thousands of Android apps, including most of the ones I've commercially worked on, use an 'm' prefix in front of private member variables. A lot of people seem to view it as "The Android Way" and how you're supposed to name your variables in an Android app. When pressed as to why, one would be pointed to the Android Code Style for Contributors page for the Android Open Source Project.…

Wednesday

13

January 2016

Don't Use an EventBus on Mobile

by Colin Miller, on Android, development, EventBus

A practice that I've noticed infecting some mobile developers is attempting to use an EventBus in replacement of method calls. The idea being to introduce high levels of decoupling where publishers of events need to never know who will be consuming them, and for consumers to not require knowledge of the producers. While this sounds great in theory, in practice it can suffer from overly engineered and complicated code that…

Wednesday

10

June 2015

Starting @ Facebook

by Colin Miller

Several of my friends have asked me how my time at Facebook has been so far. This is my second week and I'm just starting on bootcamp. Prior to this I worked at LinkedIn for 4 years as a backend engineer and later on as an Android developer. I've also worked at Yahoo! and the New York State Government which gives me some idea of both different Silicon Valley companies…

Wednesday

03

June 2015

VIMtastic - Settings

by Colin Miller

A lot of the amazing things that Vim can do do not require plugins but are built in by default. Many of these things are enabled through various settings. There are dozens of useful settings you can use in Vim. Rather than typing them in each time you start it up, you can set your common configuration in your ~/.vimrc file. Here are some of the settings I personally use…

Tuesday

23

December 2014

SimpleNoSQL 0.5 Release

by Colin Miller

I've released version 0.5 of SimpleNoSQL today. It is a local data framework for Android that avoids direct use of databases (though one is used under the hood), and allows you to store and retrieve objects with incredible ease. A full description can be found in my initial release blog. The library is now completely independant of AsyncTask and instead runs on it's own set of dispatcher threads similar…