Businesses have invested heavily in order to get up to speed on the Web. But just when they thought they had the web figured out, along came mobile.
Mobile has changed the development paradigm, almost as much as the dawn of the internet age changed it. Now as then, Northwoods is here to help. Here are 10 ways that mobile development is different than web development. And believe us, it’s very different.
Apps rely on compiled code on the device as well as remote content
On the web, you trust the browser to correctly interpret web content. But that content does not live on your computer; it comes to you and all other users from the same server. The owner of that content can fix a typo once, and the corrected content flows to all users. On a mobile device, the App itself is compiled content. Each user employs his or her own version of the code, even if it is outdated. For a correction or update to show on a mobile device, the code must be updated, compiled, approved and deployed. Even then, users can choose to stay on an older version.
Resources need to come in multiple forms to be useful
On the web, content developers can use, re-use and re-size a single image by means of style sheets or attributes. Mobile requires creation of multiple image sizes (unless using vector art), and developers must support both portrait and landscape orientation. This impacts both design concepts and work flow and work load.
Devices are fragmented
With the web, developers deal primarily with the inconsistencies among established browsers. The number of potential platforms explodes in mobile. Four Apple form factors and legacy operating system versions exist for iPhones; iPads also have several different form factors. Apple does do an admirable job minimizing fragmentation, but it remains an issue for developers. Android devices can vary drastically by manufacturer and can have different screen sizes and densities.
Changes and fixes take time to roll out
Correcting even the simplest typo takes time in mobile. In the case of iOS, corrected code must pass Apple’s approval process, which can take up to 10 days. You can be capricious with changes on the web, but not on mobile. Batch changes and test well.
Deployment is a whole different animal
It doesn’t take much to register a web domain, put the files on the server, and call it deployed. With mobile, Apps must be registered, approved, certificated, provisioned and more even before they land in the appropriate app store. A private deployment requires additional measures, and they are not trivial.
Additional infrastructure is required
Unless your App is completely self-contained, it will need to communicate with the larger world via web services, APIs, or websites. These additional components must be considered during App development.
The development cycle takes longer and continues after launch
Development time varies greatly from App to App, but generally Apps require more time to plan, create and optimize than their website counterparts. Apps also need constant updates, not only to keep them relevant but also to deal with new OS versions.
Testing is more intensive
Due to platform fragmentation and the overhead associated with making changes, App testing must be planned, intensive and thorough. Simulators only go so far; testing on a representative fleet of actual devices and user accounts is a must.
App development is the Wild West. Bids can range drastically from developer to developer, but generally the budget for an app will be higher than for its web counterpart. Review bids with great care; be certain about what exactly the developer must deliver.
Like it or not, Apple or Google will be involved
At several points in the development cycle, you will deal with Apple or Google. Apple requires enrollment in the Apple Developer Program, and Google also has a developer program. Even to deploy an App, developers and companies need to be part of the Apple of Google ecosystem. Other features, such as push notifications, require both the app and supporting systems to run through Apple and Google systems.
In short, mobile is not web. Mobile is mobile – time to start thinking about it as a different beast.