Creating software applications that run on a mobile device which utilizes a network connection to work with remote backend services and resources such as data access with an API.