Review: Programming Mobile Applications for Android Handheld Systems

I successfully finished an eight week course “Programming Mobile Applications for Android Handheld Systems” provided by Coursera. It was quite an educational experience. The course consisted of the following subjects.

  • Week #1: The Android Platform and Development Environment.
  • Week #2: The Activity Class and Lifecycle
  • Week #3: The Intent Class, Permissions, The Fragment Class
  • Week #4: User Interface Classes
  • Week #5: User Notifications, The BroadcastReceiver Class, Threads, AsyncTask & Handlers, Alarms, Networking
  • Week #6: Graphics & Animation, Multi-touch & Gestures, MultiMedia
  • Week #7: Sensors, Location & Maps
  • Week #8: DataManagement, The ContentProvider Class, The Service Class

Each week I had to complete a lecture part (watching/listening) and a quiz. I also had to finish a programming assignment which covered the subjects of that particular week, run tests provided by Coursera and upload the filtered log output. Week one through four were quite doable. Week 5 through 8 separated the men from the boys as the content became more complex and the workload intensified.

Though I really appreciated the setup, I missed one essential thing. Testing. The aforementioned tests were the only – sort of implicit – lesson about testing. But not going in on testing in all its shapes and forms in Android was quite an omission. Nevertheless, I think this course was helpful. I not only learned about Android and programming, I also learned which behaviors need to be programmed and therefore explicitly tested. For example, I run an app and have my phone in portrait mode. I then turn my phone 90 degrees in order to get it in landscape mode. This behavior can be programmed in two ways and both have their (dis)advantages!

Here’s my 97% score certificate.

Leave a Reply

Your email address will not be published. Required fields are marked *