Welcome!

Microservices Expo Authors: Christopher Keene, Elizabeth White, Roger Strukhoff, Pat Romanski, Liz McMillan

Related Topics: Mobile IoT, Java IoT, Microservices Expo, Wearables

Mobile IoT: Article

Mobile Web Apps vs. Native Apps

Contrary to popular belief, the discussion doesn't need to produce a winner and a loser

Web Apps vs. Native Apps is a topic that still excites readers to this day, as if it were anticipated that one side will win and the other will lose.

Contrary to popular belief, the discussion doesn't need to produce a winner and a loser. Instead of classifying apps as web apps or as native apps, why not just call them mobile apps? I believe "mobile app" is a great name. Under this name there are simply two variations of mobile app that can be created: web app and native app. A web app is an HTML5, JavaScript, CSS app running in a mobile browser. Now, you might wonder, why not just call this a mobile site? This is a fair point, and I believe the term "mobile site" can also be used. However, it is common to distinguish a mobile web app by one important extra feature, that it is invoking some remote services, usually a REST API (instead of just loading a static mobile web site). The second variation is the native app, one that is downloaded and installed on the mobile device.

It's important to note that a third variation of mobile app can also be created: a hybrid app. A hybrid mobile app takes an HTML mobile app and inserts it inside a native wrapper. While the inside of this app is made with HTML, JavaScript and CSS, the outside is a native shell. This kind of app is also downloaded and installed on a device. Although there are differences in how hybrid apps are implemented compared to native apps, most consumers can't tell native apps apart from hybrid apps. Hybrid apps are distributed in the app stores, just like native apps.

There are a number of important factors to consider when deciding whether to go with a mobile web app or a mobile native app.

Skills
Building native apps requires strong knowledge of Objective C (iOS), Java (Android), and C# (Windows Phone). Finding developers with the necessary experience is still not easy. On the other hand, we have been building web applications for the past 20 years. Even though building a mobile web app requires more specialized skills, the foundation is still HTML, JavaScript, and CSS. Finding strong developers should be easier in this case.

Platforms
With native development, the number of apps you need to build directly relates to the number of platforms you need to support. Today, most companies must support at least iOS, Android, and probably Windows 8/Phone, followed distantly by BlackBerry. A mobile web app can be opened on any device with a browser, phone, tablet, or anything in between. Even though the notion of "build once, run anywhere" sounds very nice, differences in mobile browsers and their support for the latest HTML5 features will require extensive testing and possibly coming up with workarounds(unless, of course, it's OK for your app not to support all the browsers.)

Features and Performance
Without a doubt, native apps have full access to the underlying mobile platform. Native apps are usually very fast and polished, making them great for high performance apps or games. Mobile web apps, on the other hand, have limited (but growing) access to device features and APIs. With JavaScript engines in the browsers getting faster, mobile web apps perform well but still fall behind native app performance.

The extra jolt of performance that dominates natively developed apps is not always necessary. Many business applications do not necessarily require such high levels of performance. In these cases, web and hybrid apps are more cost-effective, efficient, and dynamic due to API adaptability. On the other hand, games that require more advanced performance features should utilize native development.

Publishing to App Stores and Updating Apps
Regardless of the platform, native and hybrid apps are published to an app store. Apple has the strictest rules for accepting apps into its store. It requires the app to run fast and follow some basic UI principles. It could take anywhere from one to two weeks for Apple to either accept or reject an app.

Apple's stringency in App Store acceptance is contended by Google's somewhat more lenient rules, which don't necessarily adhere to the same rigid standards, and therefore accept apps more readily into its Google Play marketplace. Windows, on the other hand, takes a more "middle-of-the-road" approach when it comes to app acceptance. For whichever platform, any updates to native apps would fall under the same rules and regulations.

A mobile web app doesn't need to be published to any store, because it is simply accessed by its URL in the browser or an app icon/bookmark on the phone home screen. App updates are very simple as well. Just push any changes, and the next time the app is opened, the user will get all the new features.

Summary
A native mobile app can produce the best user experience - fast and fluid, can give you the best access to device features, and can be discovered in the app stores. On the other hand, building a native app on every major platform requires more socialized skills, a longer time-to-market, and a bigger budget to build and maintain. For this reason many apps get built as web apps or hybrid apps.

A mobile web app can produce a good user experience that is consistent across a broader range of platforms. As browser and JavaScript engines get faster with every release, the user experience gets better and better and the apps run faster and faster. Once created, this kind of app can be run on any platform, device, phone, or tablet with a browser. On the other hand, browsers on different platforms do not uniformly support all the latest HTML features and API, which can make developing and testing challenging.

A hybrid app offers many of the advantages of both approaches: discoverability in the app stores, access to the most common device APIs, and broad device coverage while not requiring the specialized skills, bigger budgets and longer time-to-market that are more typical of fully native apps.

More Stories By Max Katz

Max Katz heads Developer Relations for Appery.io, a cloud-based mobile app platform. He loves trying out new and cool REST APIs in mobile apps. Max is the author of two books “Practical RichFaces” (Apress 2008, 2011), DZone MVB (Most Valuable Blogger), and is a frequent speaker at developer conferences. You can find out what Max is up to on his blog: http://maxkatz.org and Twitter: @maxkatz.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@MicroservicesExpo Stories
Internet of @ThingsExpo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devices - comp...
Cloud Expo 2016 New York at the Javits Center New York was characterized by increased attendance and a new focus on operations. These were both encouraging signs for all involved in Cloud Computing and all that it touches. As Conference Chair, I work with the Cloud Expo team to structure three keynotes, numerous general sessions, and more than 150 breakout sessions along 10 tracks. Our job is to balance the state of enterprise IT today with the trends that will be commonplace tomorrow. Mobile...
DevOps at Cloud Expo, taking place Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long dev...
19th Cloud Expo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterpri...
A company’s collection of online systems is like a delicate ecosystem – all components must integrate with and complement each other, and one single malfunction in any of them can bring the entire system to a screeching halt. That’s why, when monitoring and analyzing the health of your online systems, you need a broad arsenal of different tools for your different needs. In addition to a wide-angle lens that provides a snapshot of the overall health of your system, you must also have precise, ...
The 19th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportuni...
As the world moves toward more DevOps and Microservices, application deployment to the cloud ought to become a lot simpler. The Microservices architecture, which is the basis of many new age distributed systems such as OpenStack, NetFlix and so on, is at the heart of Cloud Foundry - a complete developer-oriented Platform as a Service (PaaS) that is IaaS agnostic and supports vCloud, OpenStack and AWS. Serverless computing is revolutionizing computing. In his session at 19th Cloud Expo, Raghav...

Let's just nip the conflation of these terms in the bud, shall we?

"MIcro" is big these days. Both microservices and microsegmentation are having and will continue to have an impact on data center architecture, but not necessarily for the same reasons. There's a growing trend in which folks - particularly those with a network background - conflate the two and use them to mean the same thing.

They are not.

One is about the application. The other, the network. T...

If you are within a stones throw of the DevOps marketplace you have undoubtably noticed the growing trend in Microservices. Whether you have been staying up to date with the latest articles and blogs or you just read the definition for the first time, these 5 Microservices Resources You Need In Your Life will guide you through the ins and outs of Microservices in today’s world.
Sharding has become a popular means of achieving scalability in application architectures in which read/write data separation is not only possible, but desirable to achieve new heights of concurrency. The premise is that by splitting up read and write duties, it is possible to get better overall performance at the cost of a slight delay in consistency. That is, it takes a bit of time to replicate changes initiated by a "write" to the read-only master database. It's eventually consistent, and it'...
SYS-CON Events announced today that Isomorphic Software will exhibit at DevOps Summit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Isomorphic Software provides the SmartClient HTML5/AJAX platform, the most advanced technology for building rich, cutting-edge enterprise web applications for desktop and mobile. SmartClient combines the productivity and performance of traditional desktop software with the simp...
With so much going on in this space you could be forgiven for thinking you were always working with yesterday’s technologies. So much change, so quickly. What do you do if you have to build a solution from the ground up that is expected to live in the field for at least 5-10 years? This is the challenge we faced when we looked to refresh our existing 10-year-old custom hardware stack to measure the fullness of trash cans and compactors.
The emerging Internet of Everything creates tremendous new opportunities for customer engagement and business model innovation. However, enterprises must overcome a number of critical challenges to bring these new solutions to market. In his session at @ThingsExpo, Michael Martin, CTO/CIO at nfrastructure, outlined these key challenges and recommended approaches for overcoming them to achieve speed and agility in the design, development and implementation of Internet of Everything solutions wi...
Thomas Bitman of Gartner wrote a blog post last year about why OpenStack projects fail. In that article, he outlined three particular metrics which together cause 60% of OpenStack projects to fall short of expectations: Wrong people (31% of failures): a successful cloud needs commitment both from the operations team as well as from "anchor" tenants. Wrong processes (19% of failures): a successful cloud automates across silos in the software development lifecycle, not just within silos.
There's a lot of things we do to improve the performance of web and mobile applications. We use caching. We use compression. We offload security (SSL and TLS) to a proxy with greater compute capacity. We apply image optimization and minification to content. We do all that because performance is king. Failure to perform can be, for many businesses, equivalent to an outage with increased abandonment rates and angry customers taking to the Internet to express their extreme displeasure.
It's been a busy time for tech's ongoing infatuation with containers. Amazon just announced EC2 Container Registry to simply container management. The new Azure container service taps into Microsoft's partnership with Docker and Mesosphere. You know when there's a standard for containers on the table there's money on the table, too. Everyone is talking containers because they reduce a ton of development-related challenges and make it much easier to move across production and testing environm...
Monitoring of Docker environments is challenging. Why? Because each container typically runs a single process, has its own environment, utilizes virtual networks, or has various methods of managing storage. Traditional monitoring solutions take metrics from each server and applications they run. These servers and applications running on them are typically very static, with very long uptimes. Docker deployments are different: a set of containers may run many applications, all sharing the resource...
SYS-CON Events announced today that 910Telecom will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Housed in the classic Denver Gas & Electric Building, 910 15th St., 910Telecom is a carrier-neutral telecom hotel located in the heart of Denver. Adjacent to CenturyLink, AT&T, and Denver Main, 910Telecom offers connectivity to all major carriers, Internet service providers, Internet backbones and ...
To leverage Continuous Delivery, enterprises must consider impacts that span functional silos, as well as applications that touch older, slower moving components. Managing the many dependencies can cause slowdowns. See how to achieve continuous delivery in the enterprise.
DevOps at Cloud Expo – being held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Am...