5 Android libraries I must remember to have

This blog post is written in response to the Top 5 Android libraries every Android developer should know about by Dario Penić. He gave 5 libraries for features that every Java developer, not just Android developers, should import into his/her applications to ease development. However, I want to make some modifications to his list to suit my own and include one or two libraries which others may find more to their styles or needs.

  1. Gson – Passing information between clients and servers using JSON is kind of the standard now and Gson is just the library to convert Java Objects into their JSON representation.
  2. Retrofit – If you are dealing with REST API, this library will turn it into a Java interface for calling with parameters filled.
  3. Otto – I find Otto slightly easier to use than EventBus recommended by Dario and since it is by the developers of Retrofit too, it makes it easier to ask questions as a whole when needed.
  4. Realm – I list Realm, a database ORM, here even though it is an iOS library is because the developers said they are launching the Android version soon. So for developers building on both platforms, they may not have to learn an additional API.
  5. Picasso – Even though Dario said that Picasso lacks customisation that Universal Image Loader provides, I don’t find it a deterrent as I don’t think most developers will need that. Besides, Picasso comes from the same developers as Retrofit and Otto and I like my libraries to be from the same family. Makes it easier to deal with them.
Posted in Application Development | Tagged | 3 Comments


I have bought the ASUS WL-330NUL, a wireless-N150 combo USB adapter, for a long while now and I had not get it to work with my MacBook Pro… …until now. The manual doesn’t illustrate fully some of the alternative steps and I am recording what I have done, in proper sequence, to make it connect to my ASUS RT-AC68U dual-band wireless-AC1900 gigabit router.

  1. Download WL-330NUL manual and scroll to the section for MAC OS X users, specifically Mode 4.
  2. For Yosemite, you need to update the adapter’s firmware. Log into the adapter from another computer using the instructions given in the manual and update the firmware downloaded.
  3. Connect the adapter to your MacBook and log into it via the new url http://router.asus.com.
  4. My router is set up with mac address filter for security so in the adapter under the “MAC Clone” tab, clone the mac address. It should show the mac address of the adapter in the text field and add it to the router’s filter list.
  5. Save all settings.
  6. Under the “WAN” tab, scan for your router’s SSID and connect to it. A prompt would ask for your router network’s passkey. Fill that in and save.

You should be able to surf the internet now and this mode is particularly useful for my case where my laptop’s built-in wireless is faulty.

Posted in Uncategorized | Tagged | Leave a comment

Small Java Programming Quick Tips

  1. Build Java class starting from the default scope before making way up to the protected scope and then the public scope.
  2. Use small short-lived immutable objects as opposed to large objects as much as possible.
  3. Restrict the use of getters/setters and if one is provided, ensure the attribute get/set is immutable and not modifiable via reference (eg. elements in a collection).
  4. Methods should return either a value or an exception. Returning a null object is not recommended and should be limited to checking that a variable has been removed/cleared/nullified.
Posted in Program Coding | Tagged | Leave a comment