You are here

Mobile Applications

Making Smart Mobile Choices

Making core business functions available for mobile devices is a trend that is gathering momentum for enterprise clients. Yet, unlike a lot of other IT decisions, it is marked by an unsettling lack of control, in a bring-your-own device world where the landscape of devices and operating systems to support is constantly shifting.

Developing a mobile strategy becomes a nuanced process, shaped as much by the audience as by the business objectives. Some key questions to ask might include:

  • Do you have a particular device in mind, or would you prefer your applications to be device independent?
  • Do your applications need to rely on frequently updated web content?
  • Is it important that your application also work while not connected to the internet?
  • Do you need to control distribution of your application?
  • Is your application particularly processor-intensive?

At Portland Webworks we specialize in helping companies make considered decisions, and we can help you develop a mobile strategy that provides the flexibility to adapt to this shifting landscape while still realizing the productivity and convenience gains that mobile devices promise.

First, let us understand some of the different options...

Native Application vs. Mobile Optimized Web

A “native” application is software written in the device's native language, installed directly on to the device. Traditionally native applications have been relied upon to provide optimum performance and the tightest integration with device and operating system features like GPS or contacts. Applications that are graphically or mathmatically intensive definitely benefit from this direct access to device processing power. However, given this tight integration, native applications need to be rebuilt to run on different operating systems, and so the development path can get costly when catering to a diverse audience.

As an alternative solution, there has been growth in the development of “mobile optimized” web applications, using HMTL5, CSS3, and custom JavaScript libraries, such as Sencha Touch, to provide a near-native app experience without requiring the installation of any software. Such applications are designed to work on touch-based devices, and can access limited OS functionality, while the extensive library of existing UI elements can facilitate a rapid development. However, the flip side of this approach is that when seeking a unique look-and-feel, such libraries can be constraining by locking the developer into a specific set of tools.

At Portland Webworks we have been working on an alternative solution, combining the flexibility of an HTML5/CSS/JavaScript development approach with a framework called PhoneGap to access hardware functionality, and to “bundle” the application to run on a broad range of devices. This approach combines the “build once, run anywhere” promise of mobile-optimized web applications, with an open design pallette and the tight integration associated with native apps.



Phone Gap LogoAnyone with even a passing knowledge of the smart phone landscape will know that it is marked by intense competition between rival handsets and operating systems. For software developers this can translate into significant duplication of effort when trying to deliver native solutions across all platforms. That’s why Portland Webworks offers a way to cut through the confusion, using the open-source PhoneGap framework to deliver native app functionality than can be developed largely in standard HTML, CSS and JavaScript.

With this approach HTML5 and CSS3 are used for interface rendering, while the application logic is developed in JavaScript - in our case, AngularJS, the powerful MVC-capable framework developed by Google. From there, PhoneGap acts as the wrapper for the app, allowing it to access hardware functionality such as GPS, camera or accelerometer. PhoneGap itself comes in a range of "flavors" based on the native language of the device you're going to be running it on, including iOS, Android, Windows Mobile and Blackberry.

This approach to mobile development allows you to hedge your bets on the future of the mobile landscape by developing a platform-agnostic core for your application, and letting PhoneGap act as the bridge to any of the devices you need to support.

Going Native.

iOS9 LogoWhile mobile optimized web applications can bring significant development efficiencies, there will always be times when a native application is still the best solution. For graphically intense or computationally demanding apps, where performance is key, native applications are hard to beat. Also, if you're targeting a specific device or operating system, it can make sense to develop using native user interface elements, for a consistent experience.

While the barrier to entry for application developers in the mobile space is very low, and frameworks exist for rapidly developing basic functionality, it still takes talent to deliver the sophistication or performance levels required at the enterprise level. Just like any complex software application, it takes experienced developers, familiar with the hardware and software constraints to deliver robust, reliable applications that can help you harness the power of mobile computing.

At Portland Webworks we can help you understand how your requirements shape your technology decisions, and deliver the experienced development skills when a native application is the right solution.

Address your strategic priorities
and achieve results.