From Web Development to Mobile: Stumbling Blocks and Strategies for Success

Mobile development is taking off right now. 50 billion more apps were downloaded last year than the one before. The average smartphone user has around a hundred on their phone, and download rates are steadily increasing as technology compensates for mobile limitations (specifically variable signal strength and limited device storage). With mobile growing in popularity, web developers are starting to explore mobile apps as a way to grow their skill sets and boost their salaries.  It’s definitely easier to move from general web development to mobile than the other way around. However, there are still some sticking points to consider.

The Value of Going Mobile

Mobile devices today are orders of magnitude more powerful than the desktops most people had growing up. Screens are larger, processors are faster, and AI-powered talk-to-text software has reduced the need to type on tiny keyboards. As smartphone technology advances, the amount of time spent on smartphones as opposed to desktop computers or laptops rises alongside it. The average American adult spends 3.14 hours on mobile devices daily versus 2.08 hours on desktops and laptops.
mobile-app-revenue
Source: Concepta, Inc.
Apps dominate online mobile time. There were 197 Billion app downloads in 2017, a number industry analysts predict will reach 350 billion by 2021. The global mean number of apps used per day ranges from 8-12 (with 10 being the US average). The largest age group using apps is the coveted 18-24 market. Young adult users driving the trend suggests that demand is likely to keep rising for the foreseeable future. Businesses are responding to the mobile trend by pushing for mobile responsive sites and apps meant to provide a seamless cross-platform experience. User experience directly affects sales; customers who have a poor experience are much less likely to visit, recommend a business, or return to an app or site. The lack of return customers hurts, especially since customers are increasingly making buying decisions based on a company’s mobile site. Searches made with local intent often result in a physical visit, and there are more mobile searches than on any other platform for a full 15 hours a day. That means even small to medium businesses need a mobile presence – and by extension, mobile developers. A sudden rise in demand combined with the relative newness of mobile development has led to noticeably higher income on the mobile side.
salaries-webdeveloper-mobile-developer
Source: Concepta, Inc.
The average salary for a mobile application developer is hovering around $71,072 per year. Compared to $53,036 annually for web developers, that’s a healthy incentive to shift from web development to mobile.

Stumbling Blocks

Switching to mobile development isn’t a seamless process. Web developers are used to working in a specific way and within a certain range of standards. Those methods aren’t always ideal for mobile development. Perhaps the biggest difference is that apps have a limited range of functions compared to a website. A website might do dozens of different things with specialized permutations of each function. An Amazon user, for example, has over thirty task menus they can access from their homepage alone. Apps are a different story. They’re by nature toolkits rather than full workshops. Incoming web developers often create designs that are much too broad in scope. Trying to do too much drags down the app’s performance and increases the crash rate. That leads into the second culture shift: performance. Apps may have fewer features, but they come with a significantly higher expectation of performance. Optimizing mobile app performance is a delicate balancing act with a long list of influential factors. Developers must consider memory usage, processor limitations, network coverage – in short, they have to plan for situations they have little to no control over.
americans-use-apps
Source: Concepta, Inc.
Users don’t make allowances for developer hurdles, either. They want apps to work well whenever and wherever they happen to use them.Mobile users who want to check out a menu aren’t going to sit in their car waiting for the restaurant’s page to load. They give it 3-6 seconds and try another restaurant. Developers need to make sure their app loads before the customer loses patience. Today’s apps are mostly device-specific. Hybrid technology is getting better all the time, but as of now native apps outperform hybrid apps by enough that native isn’t going anywhere for awhile. Mobile developers can have a specialty (iOS, Android, or Windows) but if they aren’t at least familiar with other devices they risk limiting their employability. Learning mobile involves learning new languages or utilizing device-agnostic tools that bridge the gap between devices. Balancing their OS skills doesn’t get developers out of learning hybrid methods; those are considered part of the essential basic mobile toolkit. Web design is widely accepted as a different field from web development, but mobile developers usually have to create their own user interface. Even when a designer does sketch out the app, the mobile developer adapts it for implementation. This puts a heavier burden on them as far as user experience. There’s not a lot of room to learn – literally. Smartphones screens are small and fingers are less precise than a mouse click. Mobile developers need to provide an easy-to-navigate app or customers will abandon the app. They must understand design conventions for multiple devices and weave them together into an attractive, intuitive UI. When an app does crash, it can be harder to troubleshoot than a website. Websites only need to account for their own services plus the user’s browser type and version. Apps have more moving parts, leading to more potential points of failure. For example:
  • Operating System
  • Signal availability
  • Device Hardware
Mobile developers have to cast a wide net to shake out the cause of problems. They even have to look at “symbiotic apps” commonly used together that might affect their own app’s performance. Once they find an issue, they’re faced with the problem of getting it to the customer. Fixes can’t be pushed to live apps. There has to be an OS or app version update which users must download to implement the fix. App users are highly fickle. Many get frustrated by frequent updates, so developers have to cram as many fixes into an update as possible while still getting the app back online in a timely fashion. Web developers who are considering switching to mobile may think it looks easy. Mobile can quickly get complicated, though.
Source: Concepta, Inc.
It’s simple enough to build a basic mobile app but much harder to profitably build one worth deploying and maintain it. Developers will work with device features that were never a concern with web development. For instance:
  • Mobile apps provide much more immediate data about the user and what they’re doing than websites. Mobile developers need to account for this to provide the best service.
  • Offline usage has to be prioritized for apps, which raises questions about when and how data will sync with central databases.
Developers trying to make things easier on themselves by building apps with one language top to bottom often wind up creating unnecessarily cumbersome code. Clients won’t be happy paying extra to maintain those needlessly complex apps. Security for apps is trickier but also more important. On the business side, internal resources can be put at risk by vulnerabilities introduced by apps. Users are in a similarly vulnerable position. An insecure app could be used to access anything stored on their device: mobile wallets, account details, and other personal data. Mobile developers have to mitigate this double threat by maintaining high testing and quality control throughout the development process. Discovery generally takes more time than with websites. App development and updating tends to be more expensive, so there’s more interest in “getting it right the first time”. There are also extra questions to answer while making decisions about format and feature priority.
  • Will the app be native or hybrid? If native, which platform is the primary focus?
  • How often will customers be using the device in low signal areas?
  • Is the app mainly mainly intended to operate on Wi-Fi?
  • What internal resources does it need to touch? What security concerns does this add?
Finally, apps meant for the app store must go through a submission process. Developers need to conform to store-specific standards, which adds a layer of complexity. The app has to be resubmitted after version updates, too. Publishing apps through a company site avoids this hassle, but that’s usually only an option for internal apps. Public apps do better in the app store, so developers have to be mindful of the relevant guidelines.

What’s Easier in Mobile

Despite these warning, some things are easier for mobile app developers. Those interested in becoming a full stack developer will have more success with mobile than general web development. There’s less database skill required, and backward compatibility isn’t usually an issue. Plus, programming newbies often feel more comfortable building mobile apps since the skillset is more limited. For web developers the transition can be even simpler. A healthy percentage (around 60%) of web development skills carry over to mobile. All the core programming concepts form a solid foundation for understanding mobile apps. Hybrid apps, which are generally web apps in native wrappers, will be noticeably easy for web developers to create. Mobile frameworks take some time to learn, but web developers shouldn’t have much trouble. The languages used in mobile apps are generally the same used in web development. Once developers get the hang of app-specific tools and conventions they should be ready to take on the title of mobile developer.

Strategies for Success

  • Use tools like PhoneGap to experiment with app building. PhoneGap can be used with HTML5 mobile frameworks to create apps that run on Android and iOS without buying a Mac. It’s very intuitive for web developers. While there are some hard to manage limitations for complex apps, tools like PhoneGap are a good way to decide if mobile is a skill developers really want to pursue.
  • Focus on Android first. Unless there’s a compelling argument otherwise, learn Android apps first. Android overtook iOS in terms of marketshare in 2014 and now accounts for around 85% of smartphone sales in the US. It’s broadly applicable and meets iOS performance in most categories. As a note, artists tend to prefer iOS by a small margin. Those looking to serve that market might consider studying iOS apps first.
  • Take some online courses first. Getting an overview before diving in keeps developers from forming bad habits. It also informs decision as to the types of apps to build and suggests tools that are currently in demand. Avoid very basic courses. Peer-to-peer style training will serve experienced developers better than those meant for programming beginners.
  • Start building apps. Make mistakes where it doesn’t matter before hanging a shingle as a professional mobile developer. Build a few small, simple projects on GitHub. Seek out criticism from community and learn from it.
  • Never stop learning. Mobile technology moves a little faster than web developers might expect, and there’s always something new to try. Stay on top of current trends. Know what technologies are ready to use and which to steer clients away from until they mature.
Finally, when learning mobile seems overwhelming remember this: the leap from web developer to mobile developer may be daunting, but it’s much easier than the other way around.

Not interested in learning mobile for your next app? Concepta’s mobile developers have built award-winning apps that reached the top of the App Store charts. Set up your free consultation to find out what they can do for you!

Request a Consultation