This post discusses the differences between responsive and web friendly websites, types of app development methodologies, and everything you need to know about sub-domains and whether you should publish your mobile website on one.
What you need to know about domains
A domain name is the string displayed before the last period in a web address, which then is followed by the so-called TLD (top-level domain) which can be distinguished in six groups as illustrated below:
- Country code top-level domains (ccTLD)
- Generic top-level domains (gTLD)
- Infrastructure top-level domain (ARPA)
- Restricted generic top-level domains (grTLD)
- Sponsored top-level domains (sTLD)
- Test top-level domains (tTLD)
For most web users, the two TLDs of interests are Generic TLDs (gTLD) which include .com, .edu and .gov; and Country TLDs (ccTLD) such as .fr for France and .se for Sweden.
#Sub-domains
A sub-domain is a prefix that can be used to differentiate segments of web content; example:
- Different language versions of a website:
- french.thewebsite.com
- english.thewebsite.com
- Country-specific webshops:
- sweden.webshop.com
- uk.webshop.com
- Mobile adapted versions of primary content:
- mob.newspaper.com
While the decision to use a sub-domain as a method to differentiate language- and country-specific versions of web content are self-explanatory, sub-domains sometimes also are used to distinguish mobile- and desktop versions of a website as illustrated in the list above.
One typical instance when such a strategy often is implemented is content-rich websites where you want to create an optimized experience on mobile devices by preventing secondary content to be downloaded. This strategy is justifiable if web analytics indicate that mobile users rarely consume explicit parts of the web content and where a technical audit attests that preventing parts of the content to be downloaded will increase loading speed and contribute to a more user-friendly UX. In such a strategy the mobile version can be published on sub-domain to clearly indicate for users what version of the site they are visiting.
In all instances where web content visible for users on desktop are hidden for mobile users, there is, however, important to always include a link to the desktop counterpart as users who first have visited the site using a desktop computer might be confused if they later re-visit it from a mobile device looking for the same content.
Content published on a sub-domain is by most search engines recognised as separate websites to avoid duplicate content in the search results. As such, the search result will include only one reference to either the primary domain or the sub-domain (Support.google.com, 2017a). To keep control of which domain that should be displayed in the SERP (usually the primary domain), it is, therefore, important to indicate pages that should not be indexed either in the htaccess file, a robot.txt, or by using a ‘no-index meta tag’ on duplicate pages.
It should also be noted that many CMS’s lacks multi-domain support and that using sub-domains might result in the need for two separate databases with two non-synced back-ends as a result. While this usually isn’t a major problem for smaller websites, larger websites where the content is frequently updated, however, such strategy can lead to substantially more work in keeping the two databases in sync.
Responsive versus a separate mobile website
As discussed above, creating a separate mobile version can be a good option for content rich websites to prevent content rarely visited to be downloaded to mobile users. In most cases, however, developing a responsive website where secondary content simply is hidden but still downloaded is more cost efficient. Responsive websites also have the benefit of a single domain for both the desktop- and mobile.
Apps
Mobile Apps are stand-alone applications created to solve a particular task in a more efficient manner than what can be achieved by a typical mobile-friendly/responsive website.
Apps can be the sole reason why a company exist as with Snapchat (2017) but they also can be created as a method to generate an additional source of income or to offer a better user experience for mobile visitors. Apps also have become an important alternative for organisations having problems with ‘ad-blockers’ which, according to Harvard Business Review (2017) has led to a net loss of advertising income as high as 50% for some organisations. To bring back some of this lost revenue, creating apps is one method to ensure that adverts are not getting blocked.
The decision to develop an app needs to be carefully assessed as this requires both monetary recourses and staff—not only for development—but also for content production and ongoing management. From a marketing perspective, apps also are no different from any commercial product and will need a separate marketing plan and funds for advertising. Companies with no experience of running apps also need to set-aside resources for educating their staff in the specifics of app marketing, which include building a thorough understanding of App Store Optimization (Kissmetrics, 2017).
The four principal methodologies of app development
The following section discusses the four principal methodologies of app development. Technical and practical differences of each method also are presented together with potential advantages and disadvantages from a digital marketing perspective.
#Web apps
Web apps are, in essence, web pages built with a mobile-first perspective and are designed to look and feel like a native app. They are developed using HTML5, CSS and JavaScript, and runs in the web browser accessible through a normal URL. While HTML5 gives access to many hardware features, such as GPS, accelerometer, camera and offline access (HTML5 Rocks, 2017; Technologies, 2017); the main difference between native and web-apps from a technical standpoint is that native apps are written in device-specific languages and, thereby, have a much better performance.
From a production and marketing perspective, web-apps have both advantages and disadvantages.
The fact that web apps technically are websites, they are cheap to develop and also need no special back-end services, allowing for the use of any CMS including WordPress or Joomla. On the negative side, web apps offer less performance compared to native apps and have less access to device hardware features than a native counterpart.
From a sales- and marketing perspective, web apps do not differ from regular websites and a marketing team can use the same traditional marketing tactics (on- and off-site) as in traditional web marketing; including SEO, link building and optimisation of content and code. It should be noted, though, that web-apps are not installed on user devices—nor can not be sold or marketed through the app stores. Whether this is an issue or not depends on the organisation’s underlying business goals.
#Web app example
In 2011 Financial Times (2017) after previously offering their readers a native app, withdrew it from Apple’s app store and instead published a web app. Difficult to distinguish from a native app with no visible browser buttons, horizontal swipe functionality, and the utilisation of the web worker API making content also available offline; the app is built using HTML5 and, in essence, is a normal web page. (Nngroup.com, 2015)
#Native Apps
Native apps are written in the language of the hardware platform of the device that runs it. They utilise data processing capacity more efficiently than web-apps and offer a faster and more “smooth” experience, in addition to also having access to almost all hardware features of the running device. Contrary to the beliefs of many marketers, though, “going native” is not necessary to gain access to basic device functionality like the camera, speedometer or the GPS—nor to create apps that function in the same manner as a native app in offline mode without an internet connection which can be achieved through the ServerWorker API (mobiForge, 2017). Native apps, however, handle offline behaviour and hardware access much more efficient than web apps, and for many data-intensive applications including graphic intensive games, native apps are the only viable alternative.
From a technical standpoint and the fact that native apps are written—not in a universal language like HTML5—but in a device specific language, native apps need to be developed in two different versions: one in Swift for IOS (Developer.apple.com, 2017) and one in Java for Android (not to be confused with JavaScript). Computationally intensive applications such as physics simulations and games, sometimes also are developed in C or C++ (Cprogramming.com, 2017) to maximise processor performance and many C-developers use the Android NDK library (NDK, 2017) to simplify app development in this programming language.
#Native app example
Computationally intensive applications such as games demanding optimal performance often need to be developed as native apps. One example of is Walking Dead (App Store, 2017) which pushing the boundaries of what is graphically possible on a mobile device.
Considerations when developing native apps
As noted above, for computationally intensive applications there might be no other alternative than to “go native.” Native app development, however, is very different from the development of web apps and the primary concern for many organisations considering a native app strategy is cost. A true native app strategy with maximum device compatibility (IOS and Android) needs to be developed in two versions, often by two different teams with different coding skills and with high development costs as a result. This is also is why many organisations with native app strategies often choose to develop their apps in only one version—either for IOS or Android. With two different apps in two different languages, a custom back-end also has to be developed, which, depending on the complexity of the app, can cost more to develop than the actual app.
The best approach for organisations looking at develop native apps is to treat a native app project as any other type of product and not only as a tool for marketing, which often is the case when developing websites and web apps. A native app strategy, like any app strategy, also needs to include a plan and resources for content production and marketing, which also should include resources for ASO (app store optimisation), SEO, advertising and PR.
To note also is that the primary reason to why native app ventures often fail—is not because the app is bad or doesn’t have a place in the marketplace—but as of a weak market strategy and inadequate resources to inform the market that the app exists. With 6.503.500 apps published in the major app marketplaces (Statista.com, 2017), all fighting for attention, the old maxim “build it and they will come” can’t be further from the truth. One of the most important tasks for any person responsible for the development of a new native app project, therefore, is to make sure that is is clearly understood by management that sufficient resources will have to be invested in the project.
#Hybrid apps
A hybrid app is basically a web app which is hosted in a native container program or “shell” that translates the HTML and JavaScript to the native language of the device. Sophisticated hybrid frameworks as PhoneGap (2017) and Ionic (2017) enable organisations to develop apps functioning both on IOS and Android using a single codebase of standard HTML. Hybrid apps developed with these frameworks also to a great extent look, feel, function, and have access to the same hardware features as a native app, but can be developed to a fraction of the cost.
It should be noted, though, that hybrid apps do not have the performance of a well coded native app. The reason for this comes from the fact that hybrid apps involve an extra layer of code between the HTML and JavaScript running inside the native container of the hybrid framework and which then needs to be “translated” to the native code of the device. However, only for the most computationally intensive apps the difference between a native app and a well coded hybrid app many times are minimal. An organisation considering a native app strategy, therefore, always should first evaluate whether the substantially higher cost of developing a native app can be motivated compared to a hybrid app strategy.
One factor to note is that hybrid apps not only is chosen over native apps as an alternative to save money. Hybrid apps, contrary to native apps, have the benefit that they can be updated remotely without any input from the end user—compared to native apps which rely on users to manually update the app when a new version is released. For development- and marketing teams, this brings some significant advantages, such as the possibility of performing A/B testing and changes to the code and UX at any time and frequency without the need for action by the user.
To many native app proponents’ surprise, the Instagram app, as an example, is a hybrid app. By utilising the UIWebview (Developer.apple.com, 2017), Instagram runs the full web application from a server and with their hybrid app acting as a container. This method allows Instagram to perform instant updates, A/B-testing and changes of the UX without any action from users. (Ormandy, 2015)
#The golden middle way: Native scripting.
There is a fourth app development strategy that organisations should consider;
Native scripting.
The idea of native scripting is to translate standard web code (HTML, Javascript and CSS) into native code (Swift and Java). Doing so, a single codebase can be used both for Android and IOS lowering production costs and saving time—while at the same time simplifying back-end management. The main difference with this methodology compared to hybrid app development is that apps developed with native scripting, in essence, are true native apps.
While native scripting frameworks arguably have a steeper learning curve than the hybrid counterparts, many hybrid apps on the market would have a significantly better performance if developed with native scripting; notably to the same or a lower development cost. Two of the most popular native scripting platforms are React Native (2017) and Telerik (2017).
Summary
With the objective of giving an overview of the main considerations of app development, this post has discussed different types of web domains and the four central methodologies of app development; web apps, native apps, hybrid apps and native scripting. Advantages and disadvantages of each app methodology have been discussed, both from a technical and marketing perspective.
- References
- Android NDK. (2017). Android Developers. [online] Available at: https://developer.android.com [Accessed 13 Jun. 2017].
- App Store. (2017). The Walking Dead. [online] Available at: https://itunes.apple.com/us/app/walking-dead-new-frontier/id1156258040?mt=8 [Accessed 14 Jun. 2017].
- Cprogramming.com. (2017). Differences Between C and C++ – Cprogramming.com. [online] Available at: http://www.cprogramming.com/tutorial/c-vs-c++.html [Accessed 13 Jun. 2017].
- Developer.apple.com. (2017). Swift – Apple Developer. [online] Available at: https://developer.apple.com/swift/ [Accessed 12 Jun. 2017].
- Developer.apple.com. (2017). UIWebView – UIKit | Apple Developer Documentation. [online] Available at: https://developer.apple.com/documentation/uikit/uiwebview [Accessed 14 Jun. 2017].
- Financial Times. (2017). Financial Times. [online] Available at: https://www.ft.com/ [Accessed 14 Jun. 2017].
- Friedl, J. (2017). Guetzli doesn’t seem to respect PNG color profiles · Issue #64 · google/guetzli. [online] GitHub. Available at: https://github.com/google/guetzli/issues/64 [Accessed 12 Jun. 2017].
- Google. (2015). Building for the next moment. [online] Available at: https://adwords.googleblog.com/2015/05/building-for-next-moment.html [Accessed 12 Jun. 2017].
- Harvard Business Review. (2017). Ad Blocking’s Unintended Consequences. [online] Available at: https://hbr.org/2015/08/ad-blockings-unintended-consequences [Accessed 12 Jun. 2017].
- How is JavaScript different from Java?. (2017). How is JavaScript different from Java?. [online] Available at: https://www.java.com/en/download/faq/java_javascript.xml [Accessed 13 Jun. 2017].
- HTML5 Rocks. (2017). Capturing Audio & Video in HTML5 – HTML5 Rocks. [online] Available at: https://www.html5rocks.com/en/tutorials/getusermedia/intro/ [Accessed 12 Jun. 2017].
- Ionic. (2017). Ionic. [online] Available at: https://ionicframework.com/ [Accessed 13 Jun. 2017].
- Itunes.apple.com. (2017). App Store Downloads on iTunes. [online] Available at: https://itunes.apple.com/us/genre/ios/id36?mt=8 [Accessed 12 Jun. 2017].
- Kissmetrics. (2017). App Store Optimization – A Crucial Piece of the Mobile App Marketing Puzzle. [online] Available at: https://blog.kissmetrics.com/app-store-optimization/ [Accessed 12 Jun. 2017].
- Kissmetrics. (2017). How Loading Time Affects Your Bottom Line. [online] Available at: https://blog.kissmetrics.com/loading-time/ [Accessed 12 Jun. 2017].
- KissMetrics. (2017). How Loading Time Affects Your Bottom Line. [online] Available at: https://blog.kissmetrics.com/loading-time/ [Accessed 12 Jun. 2017].
- Meunier, B. and Meunier, B. (2017). 82% Of Sites Use Responsive Web Design In 2015? Try 11.8%. [online] Marketing Land. Available at: http://marketingland.com/82-sites-use-responsive-web-design-2015-try-11-8-114050 [Accessed 12 Jun. 2017].
- mobiForge. (2017). Taking the web offline with service workers – mobiForge. [online] Available at: https://mobiforge.com/design-development/taking-web-offline-service-workers [Accessed 13 Jun. 2017].
- NDK, G. (2017). Getting Started with the NDK | Android Developers. [online] Developer.android.com. Available at: https://developer.android.com/ndk/guides/index.html [Accessed 13 Jun. 2017].
- Nngroup.com. (2015). Mobile: Native Apps, Web Apps, and Hybrid Apps. [online] Available at: https://www.nngroup.com/articles/mobile-native-apps/ [Accessed 14 Jun. 2017].
- Nngroup.com. (2015). Website Response Times. [online] Available at: https://www.nngroup.com/articles/website-response-times/ [Accessed 12 Jun. 2017].
- Ormandy, K. (2015). Your favourite app isn’t native. [online] Kennethormandy.com. Available at: http://kennethormandy.com/journal/your-favourite-app-isnt-native/ [Accessed 14 Jun. 2017].
- PageSpeed Insights. (2017). PageSpeed Insights. [online] Available at: https://developers.google.com/speed/pagespeed/insights/ [Accessed 12 Jun. 2017].
- PhoneGap, A. (2017). PhoneGap. [online] PhoneGap. Available at: https://phonegap.com/ [Accessed 13 Jun. 2017].
- Play.google.com. (2017). Play.google.com. [online] Available at: https://play.google.com/store/apps?hl=en [Accessed 12 Jun. 2017].
- React Native. (2017). React Native | A framework for building native apps using React. [online] Available at: https://facebook.github.io/react-native/ [Accessed 13 Jun. 2017].
- Savvy Apps. (2017). How Much Does an App Cost: A Massive Review of Pricing and other Budget Considerations. [online] Available at: https://savvyapps.com/blog/how-much-does-app-cost-massive-review-pricing-budget-considerations [Accessed 12 Jun. 2017].
- Snapchat. (2017). Snapchat. [online] Available at: https://www.snapchat.com/ [Accessed 13 Jun. 2017].
- Statista.com. (2017). App stores: number of apps in leading app stores 2017 | Statista. [online] Available at: https://www.statista.com/statistics/276623/number-of-apps-available-in-leading-app-stores/ [Accessed 13 Jun. 2017].
- StudioPress. (2017). Fast WordPress Hosting + Mobile Responsive Themes by StudioPress. [online] Available at: https://www.studiopress.com/ [Accessed 12 Jun. 2017].
- Support.google.com. (2017). Duplicate content – Search Console Help. [online] Available at: https://support.google.com/webmasters/answer/66359?hl=en [Accessed 12 Jun. 2017].
- Support.google.com. (2017). Meta tags that Google understands – Search Console Help. [online] Available at: https://support.google.com/webmasters/answer/79812 [Accessed 12 Jun. 2017].
- Technologies, I. (2017). HTML5 Camera Access with BridgeIt. [online] Bridgeit.mobi. Available at: http://bridgeit.mobi/html5-camera-access.html [Accessed 12 Jun. 2017].
- Telerik. (2017). Telerik. [online] Available at: http://www.telerik.com/nativescript [Accessed 13 Jun. 2017].
- ThemeForest. (2017). Website Templates & Themes from ThemeForest. [online] Available at: https://themeforest.net/ [Accessed 12 Jun. 2017].
- Thrall.org. (2017). Top Level Domain Names / Country Codes. [online] Available at: http://www.thrall.org/domains.htm [Accessed 12 Jun. 2017].
- Time.com. (2017). Here’s Exactly Why You Should Care About Ad-Blockers. [online] Available at: http://time.com/4038410/ad-blocker/ [Accessed 12 Jun. 2017].
- W3schools.com. (2017). Responsive Web Design Media Queries. [online] Available at: https://www.w3schools.com/css/css_rwd_mediaqueries.asp [Accessed 12 Jun. 2017].