GRAMMYs
Android
This official app of the GRAMMYs uses a lot of cool technologies including Facebook APIs, Twitter APIs, and Admarvel APIs in addition to calling web services for loading the feeds. The twitter section uses Commands to queue actions, allowing the user to interact with Twitter as if logged in even before so. The application is multithreaded and based around MVC.
Tap Counter
Android
I wanted to show a strict MVC example in Android rather than the View-Controller approach that is unfortunately common in Android development. The Views (Activities) properly send messages to the Controller. The Controller interprets the messages and updates the Model or sends a message back to the View. The View remains “dumb” and simply binds to the Model and does what the Controller tells it. Interestingly, the Controller implements a State Pattern to handle the message behaviors based upon the Model’s state. And for the persistence of the Model, the DAO (Data Access Object) approach is applied. With this approach, the architecture is very clean, follows good OOP, and shows that a View-Controller is not necessary in Android.
Do Not Disturb
Android
Another personal project inspired by too many people calling me at 5:30 AM. The Android app uses the Alarm Manager, Contacts API, and Databases.
Zizilio
Android
This was a personal project of mine where I wrote the Android App and PHP Backend. The Android App is MVC and makes use of sessions, URL Requests, and Databases among others.
The PHP backend retrieves a user’s records from a database and outputs it to a view which is understandable by the calling application. In the case of Android, XML and Android-formatted text. While many Value Objects have built in methods like toString() and toXml() I opted to use Adapters as 1) it isn’t the responsibility of the VO to assume the conversion type and 2) the text format in XML required by Android is different than that of the iPhone or AIR. The adapters allow for the Open/Closed Principle to be liberally applied to support any type of client application.
Flash Factory Editor
Flex, Actionscript 3.0
This is a subset and a small example of the larger project of Flash Factory. It demonstrates customizing a website.
Flash Factory
Flash, Flex, PHP, MySQL, XML, UML, OOP, FMS, BlazeDS, AMFPHP
The general concept or to allow users to build their own flash website (SEO friendly) using a set of online editors and tools. Through the use of a CMS, the user can upload photos, music, video, change colors and layouts, and add any text he or she chooses. The parts I worked on include the Actionscript code library, Flex editor, Flash templates, data persistance and renderering, MySQL database structure, as well as being responsible for deployments and minor linux administration.
Dig It Music
Flash, Actionscript, XML, PHP
The application allows the user to search for music stored in a database by selecting words from the grid which is populated by an XML document. Flash then receives the results from PHP and displays them in a scrollable area. The user can click on any of the results to play a music file. Depending on the states of the player, the same button can have multiple functionality. An admin panel (not shown) was also built for the client.