iOS Portfolio

Employer Apps

iTriage - iPhone and iPad Universal App - iTriage LLC


iPhone Screen Shots



iPad Screen Shots

Product Page

Travisa Passport and Visa Service - CoreTechs Consulting


The Travisa Visa App allows you to access detailed information on travel visa requirements for over 200 countries and passport services directly on your iPhone or iPod Touch.

The app makes scheduled database updates from the web service to maintain the most up to date travel requirement information stored in a local SQLite database.


Product Page

SurroundLab Mobile - Seacoast Laboratory Data Systems


SurroundLab Mobile provides mobile access to medical laboratory reports. Privacy requirements ensure all patient information and lab report PDFs are encrypted for download and within the Core Data storage on the iPhone. This data remains encrypted at all times except when displayed following a valid user login.

Data is accessed from an C#/ASP.Net web service and transmitted in an encrypted JSON data format. New reports are pushed to the app using the Apple Push Notification Service.

It is distributed as an Enterprise App customized for each client laboratory. All graphics within the app are fully customizable allowing each client to have their own branding.


Product Page


Sonic Automotive Inventory iPad App - Lextech Global Services


The Inventory app provides Sonic Automotive sales people with a powerful visual database of all vehicles available from all Sonic dealerships. Sales people can quickly search for vehicles matching a customer's requirements by dragging search icons into a search bar. The resulting list of vehicles can be limited to the specific dealership, all Sonic dealerships within a given radius of the current location, or all Sonic dealerships nation wide. This gives the sales person the opportunity to make a sale even if the perfect car isn't on the lot.

The source data is composed of a large data file updated multiple times per day and is combined with several gigabytes of car photos. The sales people needed to have the app fully functional even during large data updates and needed to have car photos available immediately even though there was not enough storage on the iPad to pre-load all images.

The requirements for app responsiveness and immediate image availability was accomplished by making the app heavily multi-threaded. All data loads were done on a background thread requiring steps to be taken to overcome Core Data's limitation of not being thread safe. A heuristic algorythm based on the current search terms and items displayed on screen was applied to anticipate images that might be needed prior to the selection of the screen displaying them. This allowed for immediate availability of vehicle images to keep the customer engaged in the sales process.

The app pre-dates the availability of GCD and block as a threading option, so the NSOperation approach to threads was applied instead.

The app is distributed as an Enterprise app.



LexStudio - Lextech Global Services
2010 iOS Dev Camp Hackathon


Awarded "Most Monetizable"

Produce a live event, send streaming video to a wide audience and switch between multiple video inputs, all from an iPhone.


iOS Dev Camp 2010 Winners


Zachary Arnold Software Apps

Radio Netork Apps

I have two internet radio network apps built upon the same code base. They display the network schedule for their respective networks and provide audio streaming of the network's live audio feed as well as on-demand streaming of the podcasts for each individual show providing a podcast feed. The differences between the two apps are maintained through the use of an XML app configuration file and an XML network definition file. iPhone users have a call-in button within the app which activates during each live show that takes calls.

The app originally used a generally well respected audio streaming library, but it proved to be unable to seek properly within an audio stream or handle the wide range of podcast feed formats used by the various shows. I have now written my own audio streaming library with the feature set and reliability required. The version 2.3 release of the radio apps roll out the new audio streaming library with all podcast feeds now supported.

GCD and blocks are heavily utilized to provide separate threads for buffering and playing audio, parsing XML data feeds, and storing network data playback state of podcasts. Core Data is used for data persistence requiring steps to be taken to overcome Core Data's limitation of not being thread safe.

Ron Paul Radio


Not currently available in the app store


Liberty Radio


Not currently available in the app store



Other Apps

Liberty Quotes


The Liberty Quote app provides a set of liberty oriented quotations which are periodically updated through a XML data feed. The quotes can be searched, sorted, emailed, and flagged as favorites. There is a quote of the day and random quote feature. A link to the quoted individual's mobile Wikipedea page is displayed with each quote allowing the user to lookup more information about each quote.


Not currently available in the app store


Silver Calculator


Silver Calculator is a port of an Android app of the same name. An attempts was made to maintain much of the Android app's look and feel while changing essential elements to make the app feel like a proper iPhone app.

The app maintains a database of various silver coins and their silver content. The current price of silver is accessed from a public data feed allowing computation of the current dollar value of different combinations of silver coins, or to quickly calculate the combination of silver coins needed to provide a given value of silver.


Product Page