We recently accepted the NYC BigApps 3.0 challenge organized by the City of New York and applied for its competition. The challenge was to enhance New Yorkers’ everyday life by finding a better use for city’s raw data sets available online. Our candidate on the competition was Lend a hand!, an Android application that makes it easier for people to browse open volunteering positions throughout the city and apply to them.
The idea was actually one of the awarded NYC BigApps Ideas, a competition that was held solely to gather interesting ideas for the main challenge. All ideas there are free to take by anyone and implement in any form of application. So, we teamed up (a gang of four: three developers and a designer), made a lot of coffee and started working.
We decided to make the application compatible with Android 2.2 and above, what made us somewhat limited in terms of SDK capabilities. In addition, Google had recently released Android 4.0 GUI guidelines, which we adhered to as much as possible. Given the target platform limitations, most Android 4.0 graphical elements we used had to be made from scratch.
There are three main screens in the application: the list view, the map view and the details view. The first two are mutually interchangeable and they simply provide two ways of active data presentation. For example, the user picks a category in the list view and switching to the map view will show the same items placed on a map with user’s current position in the map center. If some particular job position looks appealing to the user, choosing it moves the user to the details view with much more information about the item.
The list view provides standard ways to modify and reform the active data (sub)set: text search, categories and various sort/filter options. Applying these options makes it possible to customize the active subset to match user’s personal preferences. A particularly interesting item can be starred as a favorite, which are listed in a separate section.
The map view has some limitations and text search is the most prominent one. Since there is no textual information in this view (all items are represented by map pins), it would not be obvious how text search works. We felt that this feature would confuse the user.
If the user finds an interesting job opportunity, selecting “Get directions” in the details view switches to the map view, where the route from user’s current location to the corresponding address will be shown.
Upon the first run, the complete data set is downloaded, parsed and stored in the device database. The latter fact enabled us to do SQL queries over the data set and consider only items that the user would want to see. This approach turned out to work nicely and without and noticeable glitches. Afterwards, the data set is updated on a daily basis, because it doesn’t change too often.
The development process took a few weeks in a really tight schedule and along with our day-to-day obligations. In parallel, a promo video had to be made as well, so the deadline was just met.
Unfortunately, the application didn’t win an award in the competition, but has definitely made us eager to do even better job next year. Happily we can claim that the end product looks very slick: it has modern design, fluent interface and it’s easy on the eyes.
So, what are you waiting for? Go and use it! :-)