Mobile Apps Must be Instrumented Just Like IoT Devices

Book Cover

Just like #IoT devices, #mobile apps should be instrumented to send usage, feedback, error and engagement telemetry to analytic systems.

Instrument everything!

While many developers have written code or used frameworks to log errors, they only scratched the surface when it comes to the amount and types of metrics an app should capture. Beyond data collection, apps must stream telemetry back to analytic systems to benefit marketers, product managers, the QA team and developers. This is all about gleaning insights and improving the app and user experience you’re delivering to your customers and employees.

Capture the following app metrics:

  • Runtime errors and fatal crashes to help developers find the root cause of bugs
  • User feedback and app ratings (stars)
  • Task completion rates
  • Passive sentiment via app engagement depth and duration
  • Sales conversions
  • App launch rates, usage patterns and where users are clicking
  • Underlying operating systems, devices, mobile operators, app versions, available memory, CPU usage and power management data

In addition to passively capturing metrics, actively engage users via push notifications to ask for feedback.

Improve user productivity through app instrumentation to create a feedback loop that continuously enhances the quality, usability and performance for customers and employees. Does the organization where you work instrument all its mobile apps?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Accelerate Mobile Development with Cross-Platform Tools

Book Cover

Cross-platform tools allow developers to repurpose existing skills to accelerate native, multi-platform #mobile development.

While many of your mobile, cross-platform goals can be accomplished with HTML5, you might be wondering if there’s a solution for pure native code. There are a growing number of options out there using popular programming languages and even no code at all.

Appcelerator provides an IDE and the Titanium SDK allowing developers to create cross-platform apps using JavaScript. Unlike Hybrid apps, the JavaScript is compiled to native code for better performance. APIs are included to ensure apps can take advantage of all platform features as well as native UI elements.

If you’re a .NET shop with developers comfortable with Visual Studio and skilled in the C# programming language, Xamarin is right for you. This development tool runs on its own or plugs into Visual Studio allowing you to build native iOS, Android and OSX apps. It also implements the native UI of each platform so users will never know the apps weren’t built in Objective-C, Swift or Java. Xamarin is a great way to leverage .NET investments across devices.

Zero-code or low-code solutions like AppArchitect, Alpha Anywhere, SkyGiraffe, Force.com, PowWow, WorkSimple, PowerApps, Reddo, MobileSmith, StarMobile and others are worth your due diligence to speed up development efforts as long as they don’t create a risk to your business platforms.

Reduce expenses by building apps for all mobile platforms with a single codebase and a smaller development team to get your product to market more quickly and pervasively. Has your company pivoted to cross-platform development tools?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Mobile WebViews Close the Performance Gap with Native Apps

Book Cover

New WebViews with the same performance as #mobile browsers mean #web skills are finally viable for building fast, cross-platform hybrid #apps.

Back in 2012, Mark Zuckerberg admitted Facebook’s mobile strategy relied too much on HTML5 rather than native apps. While it was a great way to target multiple platforms from a single codebase, Facebook’s hybrid app suffered from poor performance. They used a WebView which is a web browser encapsulated in a software component that can be added to a native app. This allows HTML, JavaScript and CSS to run inside a native app container with access to platform APIs that browser-based apps don’t get, like the camera or push notifications. The problem was these WebViews didn’t share all the features or performance of the full web browsers.

Today, iOS 8+ includes a WKWebView API with access to the Nitro JavaScript JIT compiler and rendering performance equivalent to the Apple Safari browser. The Chromium WebView introduced in Android 4.4 KitKat takes advantage of the Google Chrome V8 JavaScript engine for dramatic gains. On Windows 10, the WebView based on the Edge browser is the ticket. All these WebView controls offer enhanced HTML5 and CSS3 feature support and significantly better performance to close the gap with native apps. If your corporate designers and developers have web skills, consider using Apache Cordova/PhoneGap or Kaonsoft to rapidly target multiple mobile platforms with a single codebase.

Reduce development expenses by building apps for all mobile platforms with a single codebase by a smaller development team using widely-available web skills that gets your apps to market more quickly and pervasively. Does your company have a hybrid web app strategy to reach more customers faster?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Mobile Apps Must be their own Fortress to Withstand Attacks from Hackers

Book Cover

A #mobile app must be its own fortress and never assume platforms are encrypted, authenticated, use VPN or require a PIN for #security.

I guess developers can’t count on anything these days. How you deal with security is what separates consumer app developers from enterprise app developers. The best apps assume an insecure, unencrypted and completely compromised mobile platform. In a world of bring your own app (BYOA), this will differentiate consumer app developers from trusted enterprise app developers. Imagine the scenario where a logged-in device is left behind in a taxi and is stolen before device security kicks-in to log the device out. A window of time ranging from five to fifteen minutes of exposure is realistic.

So how does a mobile app take charge of its own security? On launch, it must prompt for enterprise credentials like a password, PIN, face or fingerprint before allowing a user inside the app. Eliminate the use of cached credentials and tokens or keep expiration times to a minimum. Next, the app must provide its own encryption for data at rest. This is accomplished through the use of a mobile platform’s crypto APIs. Oftentimes you can reuse login credentials as a password and salt value. Use this to encrypt all downloaded and user-entered data before saving to local storage. The app must use TLS or per-app VPN tunnels for all remote communication to secure data in transit. Lastly, trustworthy apps should never take dependencies on platform capabilities they don’t actually require.

Reduce risk to your business by insisting every enterprise app you build or buy provides its own comprehensive security capabilities. Is your company making app security a top priority?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Mobile Apps Must Work Offline Because Wireless Connectivity isn’t Ubiquitous

Book Cover

Intermittent #wireless connectivity requires #mobile apps to follow sync patterns using pre-fetched #data via APIs and offline local storage.

If the network isn’t available, it’s pretty hard for your native app to call web APIs or for your web app to load new web pages. On the Ethernet connected desktops of the past, developers didn’t concern themselves with this issue. In our wireless connected mobile society, ignoring this issue leads to a poor user experience. Most of the time, devices are connected via 2G/3G/4G wireless data networks whose reliability is driven by cell tower density, the number of devices connected to a given tower, wireless frequencies, bandwidth and the number of buildings in the area.

Rather than assuming everything will “just work,” developers of successful apps assume “nothing works.” For starters, mobile apps must take advantage of platform APIs that detect the existence of network connectivity. Once this is established, an app must not only download the data it needs at that given moment but enough data to get through the day. Depending on the amount and complexity of this data, it should be stored locally on the device in a mobile database or as serialized files. From then on, the app should only use the local data to perform its tasks rather than reaching out to servers. Changes made by the user to this local data should be tracked so that only deltas are sent to backend systems when it’s time to upload. Extensive error handling and “sync retries” are needed to ensure reliability. Employees can work in airplane mode or when roaming internationally without using data.

Increase revenue and improve user productivity by using sync to create apps that keep working whether the Internet is available or not. App downtime on a sales call in front of a customer is not an option. Has your company made the move to apps that work offline?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Give Smartphone Users Mobile Web Apps or Else!

Book Cover

Replace heavyweight, desktop focused, bandwidth eating, #Web 1.0 sites with lightweight #Mobile Web apps using responsive web design.

Just like their native counterparts, many Web 1.0 apps were built with a particular screen resolution in mind where bigger was better on an endlessly scrolling screen. As time progressed throughout the late 90s, poor performing dial-up modems running at 28.8 kb/s gave way to 56 kb/s modems, followed by 128 kb/s ISDN and then true broadband with the introduction of digital subscriber line (DSL) and cable modem technologies. Web designers kept pace with this trend by loading up web pages with heavy graphics leading to slower load times and average page sizes of 2 MB.

Web apps must be designed for mobile first. This means they must load quickly, be cached for performance and use smaller JavaScript libraries and minimal graphics. Amazon says a 100ms increase in load time equates to 1% reduction in sales. Remember, nine out of ten mobile shoppers use the mobile web while in-store and 51% of that research has led to a purchase. Follow responsive web design (RWD) principles via CSS media queries to adapt to the screen size of any device. Hide navigation menus to keep layouts simple and don’t make users pinch, zoom or pan. Google reports over 70% of consumers access websites from their mobile devices while only 20% of companies have optimized their sites for mobile. Clearly, you can increase your company’s engagement with customers and employees alike via the mobile web that’s already in their hands.

Boost user productivity and revenue by delivering a fast web site that adapts itself to the device users are carrying allowing employees to complete tasks and customers to make purchasing decisions. Is your company doing everything it can to reach mobile users?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Delivering Apps to Mobile Devices via Remote Pixel Projection is a Terrible Idea

Book Cover

The use of remote pixel projection technology to view Win32 apps on #mobile devices should be considered nothing more than an interim workaround.

What’s the fastest way to move Win32 desktop apps to mobile devices? Don’t feel bad if you chose a remote desktop or screen sharing technology to project PC desktops to smartphones or tablets. This happened decades earlier when companies migrated from 3270 terminal emulation to PC apps. Lots of screen scraping took place to avoid large rewrites.

If you’ve tried various remote desktop technologies on smartphones, you found yourself doing a lot of pinching, zooming, panning and scrolling to accomplish simple tasks. The intermittent nature of wireless data networks results in a frustrating experience. A lack of offline capabilities leads to application errors and possible data loss. Nonexistent integration with essential smartphone sensors leaves employees without the contextual experiences they expect. Obviously, tablets fare much better due to larger screen sizes that more closely match the desktops they’re trying to render. When paired with corporate Wi-Fi, this delivers the least-bad remote experience. The tablet + Wi-Fi scenario is the best compromise for large apps that are difficult to migrate or third-party apps that are out of your control. In limited scenarios where sensitive corporate data is not allowed on a device, remote desktop technologies keep your device free of data. For everything else, remote pixel projection should be a short pause on the road to complete mobile migration.

Reduce risk to your business by using remote pixel technologies in situations where sensitive data cannot be securely moved to a mobile device. Is your company taking a pass on employee productivity by not migrating legacy desktop applications to mobile apps?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Web 1.0 Server Round-Trips are Like Watching Paint Dry

Book Cover

Replace wasteful, server round-trip #Web 1.0 sites built with Cold Fusion, CGI, ASP, Servlets, Perl and Livewire with AJAX empowered #mobile web apps.

The 90s web moved from online brochures to a technology that could be used for actual apps through the clever use of the HTTP verb called POST. A web page with text boxes, radio buttons, lists and check boxes full of data could POST information to a special web server directory containing something called a Common Gateway Interface (CGI) script. This would insert data into a database and build dynamic web pages. The notion of POSTing data and having servers do all the heavy lifting of executing code, connecting to databases and building new web pages made a lot of sense in a world of browsers with minimal capabilities. That said, users didn’t like the way their web pages disappeared and new pages were loaded and sent to their browser.

Things got a more interesting when asynchronous JavaScript and XML (AJAX) came along allowing a page to send and receive data from a server without refreshing. They just updated the page’s document object model (DOM) ushering in Web 2.0. Modern web apps use this technology to call web APIs using JSON instead of XML for data. Powerful HTML5 browsers with fast rendering plus just in time (JIT) compiled JavaScript facilitate advanced UI and JavaScript frameworks as well as the notion of single page apps. This is the web your employees want.

Deliver mobile web apps that respond quickly to user commands and behave like a native mobile apps to improve the productivity of your employees. What steps has your organization taken to boost the responsiveness of its mobile web apps?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

Get with the Program and Migrate those Web 1.0 Intranet Apps to HTML5

Book Cover

Migrate #Web 1.0 Intranet apps built for Netscape + #Internet Explorer 3 to HTML5, CSS3 & ECMAScript5 for modern #mobile browsers.

The web really exploded in the commercial space during the second half of the 90s. Tim Berners-Lee’s HTML 3.2 specification received W3C recommendation in 1997. Netscape submitted its JavaScript language to ECMA and got its specification published in 1998. Cascading style sheets (CSS) received their first W3C recommendation in 1996. The problem with all of this was that Netscape and Microsoft were in a browser war where both pushed their own standards on web designers and developers to try and gain an edge in the market. In an attempt to avoid incompatibilities between browsers, most websites built in the 90s targeted the lowest common denominator.

Modern mobile browsers can now render the app-like web provided by HTML5, CSS3 and ECMAScript5 (JavaScript). You get all the cross-platform development benefits plus a deployment model that bypasses app stores. This new breed of web app supports offline operation, multithreading, the ability to call web APIs and take data offline via local data stores. Most enterprise solutions require these features and Web 1.0 apps can be migrated to get this functionality.

Since existing HTML 3.2/4.0 still renders properly, just enable the new features of existing HTML tags and add new tags where appropriate. Add new JavaScript functions to empower your web app with modern capabilities. Update and add new CSS to give your web app the look and feel of a native mobile app.

Improve user productivity by delivering the feature-rich HTML5 web apps that modern, mobile browsers are designed to work with. Has your company updated all it’s Intranet web apps from the 1990s yet?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!

It’s Time to Dump your 1990s App Authentication

Book Cover

Migrate Win32 applications secured by client/server #database logins to #mobile apps that use OAuth & enterprise #cloud directories for authentication instead.

Do you know Scott Tiger? Are you familiar with SA and no password? If so, you probably worked with client/server database security mechanisms from companies like Oracle, Microsoft, IBM and others. Anyone who’s built client/server, multi-tier database systems over the years has worked with Oracle Net Listener, TNSNames, Sybase DBLIB, ISAM and VSAM drivers plus a revolving door of Microsoft drivers. App logins were typically the same as the database login. DBAs were in control and app developers worked with what they were given. Sometimes data access was secured through the use of views or stored procedures. Things improved when databases started supporting integrated authentication where data access could be controlled by users and groups found in the company Active Directory.

Today’s mobile apps don’t connect to client/server databases this way. Win32 apps connecting via the LAN or VPN can kick the can down the road a bit longer. Everything else talks to databases with web APIs or sync. While these mobile-friendly APIs use database authentication to connect, the services they expose must be secured by an enterprise directory. This pattern provides identity management to mobile apps. Furthermore, cloud-based enterprise directories must be kept in sync with existing on-premises directories to keep the login procedures seamless for employees. Add multi-factor authentication to boost security and avoid consumer auth providers like Facebook or Twitter.

Reduce risk to your organization by decoupling app security from database authentication and make the move to company-wide directory services. Has your employer switched all its enterprise apps to modern authentication methods yet?

Learn how to digitally transform your company in my newest book, “Mobile Strategies for Business: 50 Actionable Insights to Digitally Transform your Business.”

Book Cover

Click here to purchase a copy of my book today and start transforming your business!