Course Review – Programming Cloud Services for Android Handheld Systems: Spring

Here is my review of Jun-Jul 2015 Coursera offering of Programming Cloud Services for Android Handheld Systems: Spring, which is the last but one course in
Mobile Cloud Computing with Android Specialization. It is ranked 4 out of 5 (good), while I passed with 100% grade. The course migrated to a new platform since then.

Technologies and Material. The course provides extensive introduction into building REST API client-server apps. Students learn how to divide responsibilities between parts of code, how to seamlessly and efficiently integrate data processing within the server the Android client. The server is implemented with Spring MVC controllers launched by Spring Boot and compiled with Gradle. Data handling on the server side includes either JPA or NoSQL databases such as MongoDB and DynamoDB. Android client is implemented with Retrofit, while data processing on the client is done via Content Providers, Content Resolvers, and SQLite. Homework is hard and requires a lot of time, since specifications for the client and the server are extensive and approach the complexity of the real-world apps. Like in the real world, the homework apps are gauged by their ability to work correctly and not crash. Three homework assignments are (1) building a working client to a given server; (2) improving a server to add functionality; (3) building a working client-server pair. I tested all code with a client on an Android 5.0 phone connecting via WiFi to a server on a Windows 8.1 laptop.

Instructor/lectures. The course is taught by 2 professors: Dr. Jules White (Vandelrbilt) and his senior colleague Dr. Douglas Schmidt. Jules uses a new technology called a Lightboard – he faces the audience, writes with a marker on a transparent glass, and students can see both him and text. The professors deliver different material: Jules concentrates on API + basic principles, while Doug talks about patterns, structuring the code + advanced data handling in Android. All examples are posted on Jule’s GitHub page. A lot of optional material on patterns and his ACE server is provided by Doug.

Leave a Reply

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