Top 5 Reasons the Web Will Win on Mobile

Space WebinarIt should come as no surprise to anyone who has followed Sencha for any amount of time that we believe in the power and superiority of web technology. Prior to the explosion of the mainstream internet in the mid-90s, few would have predicted how enterprise application development would change with the growth of the web. However, for enterprise applications used on desktops and laptops, the results have now been in for some time. Spoiler alert: The web won. And it’s going to win on mobile too.

For enterprise applications used on desktops and laptops, the results have now been in for some time. Spoiler alert: The web won. And it’s going to win on mobile too.

By observing how our customers’ app strategies have evolved in recent years, we see the same dynamics that prevailed in the era of the desktop at work now in the mobile landscape. The waning predominance of native, platform-specific applications in a fragmented hardware and OS market is now giving way to web-based applications that work on any machine with a standard web runtime.

For enterprise software, only the rarest exception uses anything but web-based technology to deliver new applications on the desktop because of requirements around multi-platform support. Many organizations are realizing the web will meet their long-term needs on mobile devices too. Gartner predicts 90% of new enterprise applications in 2015 will be web-based or hybrid with web dependencies. There are several reasons for this:

  1. High quality WebViews are now available on most platforms – For the first several years of the mobile explosion, mobile OS vendors focused on enhancing their native development ecosystem to attract developers to their platforms. Consequently, the WebView – the web runtime on which mobile hybrid HTML5 apps rely – tended to be a few steps behind its native counterpart, resulting in poor performance and a degraded user experience. Advanced features like hardware accelerated rendering, WebGL support, and a high-performance JavaScript interpreter were either not available or not permissible because of vendor policies. For example, Apple kept WebGL support artificially disabled in the iOS WebView until iOS 8. Performance and feature-richness in the mobile web stack are now favorably comparable with their native equivalents.

  2. Broad platform support is only economically feasible using web tech – Developers are now frequently required to build applications that support desktops, tablets, and smartphones. Imagine having to implement the same application in multiple native languages, test across all the different combinations of device type, device vendor, and OS, and maintain multiple code bases over the life the app. This approach is wastefully expensive and scales poorly, especially for organizations that have large portfolios of applications.

  3. Web tech bridges the desktop-mobile divide – Many organizations already have a set of web applications built for use in a desktop browser. They are now being asked both to update those capabilities and make them available on mobile devices. By leveraging web technology, organizations can mobilize their applications faster, at lower cost, and with minimal redundancy in developer effort.

  4. Using web tech helps to simplify application management and security – Management and security across desktops and the various mobile platforms is as fragmented as the platforms themselves. Enterprise Mobility Management vendors have (mostly) mobile-oriented solutions that manage devices and native apps on these devices, but provide limited benefits on the desktop. This disparity shifts the burden of management and security on the desktop to developers, who are then forced to reinvent the wheel or install multiple point solutions to handle unaddressed issues. By building cross-platform applications using web technology, developers can benefit from using the same mechanisms to manage and secure applications, users, and data on all target devices.

  5. Device fragmentation is accelerating. The web helps developers keep up – Although smartphones and tablets are now commonplace in the enterprise, new computing platforms are emerging with increasing frequency. For example, automotive computers, smart TVs, media appliances, and wearables are now moving into the mainstream. It remains to be seen which of these will find usefulness in the enterprise. Regardless, it would be prohibitively expensive and inefficient for developers to rewrite or add a new native code base for each of these new categories. The only effective way to extend the longevity of existing applications and make them available on these new devices is to develop apps using web technology, and for device vendors to ship with a high-quality standard web runtime on their hardware platforms, which many of them are doing. These existing apps will either be able to run as-is or with relatively minor enhancements to account for the differences between platforms (e.g. screen-size, memory footprint, network connectivity profile, etc.)

The pace of technical innovation is truly breathtaking and increasingly complex for app developers to handle. Application management, security, and maintenance can become prohibitively expensive for organizations that do not select a suitable strategy. However, the web helped organizations address these issues back when the desktop was king. It will save the day again on mobile devices too.

Learn more about Sencha Space.
Subscribe for free to Sencha Space.

Build better apps for more devices at lower cost. Learn how at SenchaCon 2015. Register today.

Space Webinar 7 Comments   Read more

Securing Offline Apps—Sencha Space Makes It Easy

Space WebinarIn recent years, we have observed the explosive growth of network connected devices and the use of “always-on” broadband connectivity. This has led to the rise of cloud-based applications and services. Today, you can access almost any IT resource or application from the nearest network connection, via the cloud.

However, many organizations require applications that:

  • Work offline
  • Provide security
  • Support the ever growing array of devices showing up in the workplace

For example, companies in the oil and gas industry frequently have remote oilfields, wells, drilling platforms, and other industrial plants with limited connectivity. They require field technicians to go to these remote locations to inspect, maintain, and conduct other operations. The apps they use to coordinate this activity must be secure, offline capable, and flexible enough to support different device types.

Similarly, in the healthcare industry, strict privacy protection regulations force many eHealth software developers to build solutions that keep all patient data on a centralized server. The data is only available to medical professionals who have a high-quality network connection. Unfortunately, this approach can degrade the user experience as network latency often delays data downloaded from the server to the device where it’s needed.

Today, most organizations have to make painful tradeoffs when developing offline applications. For example, they may limit the number of supported platforms or devices. In some cases, organizations may even deliver offline-capable applications with weak security protection. More often than not — as is often the case in the healthcare software sector — developers forego offline capability to focus on the other requirements.

In the recent release of Sencha Space, we have for the first time made it possible to build secure offline applications without the usual tradeoffs. Organizations can now develop a cross-platform application using HTML5 and JavaScript — the only standard technology stack that spans desktop and mobile devices. They can then deploy the client-side application resources through the Sencha Space platform directly to end users’ devices. End users can then run the application from the encrypted local data storage of the Space client application on every supported platform.

Loading resources locally eliminates network latency problems. Encrypted local storage can keep sensitive data safe from unauthorized disclosure. The Space management capabilities make it possible to uninstall the app and its data from any device, instantly and remotely at any time. So the owner of the application and data retain full control over the lifecycle of the app on users’ devices.

The Space secure offline capabilities open up many exciting possibilities for organizations that have had to make technical tradeoffs to support offline or not do it at all.

Learn more about Sencha Space.
Subscribe for free to Sencha Space.

Build better apps for more devices at lower cost. Learn how at SenchaCon 2015. Register today.

Space Webinar No Comments   Read more

Securing the Extended Enterprise

Space WebinarSince the economic downturn in 2008, many organizations have taken a lean approach to staffing. Aided by rapid adoption of cloud technology, mobile computing devices, and apps in the enterprise, organizations now frequently rely on a loosely coupled network of partners, contractors, consultants, and other collaborators. These trusted third parties work side-by-side with employees to conduct the firm’s business operations either on a long-term basis or on ad hoc projects. We call this the Extended Enterprise.

The Extended Enterprise model has introduced some technical challenges in the areas of application and data management.

Although organizations have benefitted from the operational flexibility the Extended Enterprise model provides, as well as the reduction in overall business risk, it has introduced some technical challenges in the areas of application and data management. Chief among these is: granting and revoking access to sensitive apps and data to non-employees on devices IT doesn’t own or control.

Enterprise Mobility Management vendors have attempted to address this problem with Mobile Device and Mobile Application Management solutions (MDM and MAM, respectively). Unfortunately, these solutions have the following drawbacks:

  1. Inflexible, heavy-handed management: MDM requires users to install a heavy-handed policy and agent on their phones or tablets that turn control over the entire device to a single organization’s central IT authority. Aside from the well-documented privacy infringement issuesin this scenario, this approach is too inflexible for Extended Enterprise use cases. For example, consultants may work part-time for several different organizations; it is infeasible to relinquish control of their devices to a single organization’s IT department.
  2. Solve one problem, create several others: MDM and MAM solutions require significant backend infrastructure integration, including management, policy enforcement components, and enterprise app stores (which are typically further integrated with consumer app stores.) In addition to not addressing Extended Enterprise deployment challenges (see above), they create a bunch of new infrastructure to manage and maintain.
  3. Incomplete solution – mobile only?: MDM and MAM traditionally focus only on phones and tablets, leaving desktop applications to be managed as a separate technology silo. Some vendors have introduced basic “endpoint management” to address the glaring holes in their story around desktop. However, where this exists, it is basically a device-centric approach with device-centric issues (see #1).

For organizations that have standardized around HTML5 for their B2E and B2B applications, Sencha Space provides a much better way to address application management, deployment, and security in the Extended Enterprise.

  1. Application-centric, sandboxed: Sencha Space provides each organization with its own sandbox on a user’s device. Inside this sandbox, organizations can individually manage just their apps and data. This sandbox architecture maintains separation from all other data on the device, a key requirement for the Extended Enterprise.
  2. Retain control of apps, not users’ devices: By focusing on an organization’s apps and data and supporting a broad array of desktops, tablets, and smartphones, Sencha Space enables organizations to easily manage and deploy their apps to almost any desktop, tablet, or smartphone, regardless of whether the user is an employee or not. It allows administrators to remotely uninstall just their company’s apps and data from devices as needed.
  3. Secure by default: Sencha Space provides encrypted local storage on every supported platform. Any application deployed into Sencha Space benefits from this capability without modification.

Advancements in technology allow organizations to operate effectively with leaner staff, hiring in-house only to build and execute on strategic core competencies. For everything else, there is the Extended Enterprise. Sencha Space allows organizations to collaborate seamlessly with their Extended Enterprise partners, securely deploying applications to the right users on the right screens at the right time and uninstalling them when that need ends.

Learn more about Sencha Space.
Subscribe for free to Sencha Space.

Build better apps for more devices at lower cost. Learn how at SenchaCon 2015. Register today.

Space Webinar No Comments   Read more

Security Risks Associated with Native Packagers

Space WebinarNative packaging solutions have enabled organizations to leverage web technology and develop cross-platform applications for smart mobile devices. However, these solutions continue to have a persistent drawback: all app resources are packaged unencrypted. It is very easy to copy the binary executable for a packaged app, unzip the binary and retrieve sensitive resources, including the source code. Local application data is also stored unencrypted by default.

Over the past several years, it seems like we haven’t gone more than a few weeks without hearing about a major security breach on the evening news. While not every security flaw involves the same weakness, native packaging solutions potentially put proprietary source code and sensitive data at risk of unauthorized disclosure. Check out this video to see just how easy it is to recover app resources from a packaged binary.

Application development has evolved in recent years. Gone are the days when applications were primarily server-side entities with a lightweight client-side component. Many of today’s apps are comprised of a rich client-side interface containing the UI specification, application and business logic, occasionally calling into a fabric of cloud-based APIs for backend integration. This programming model allows computational load to be shifted from the server to the client for more interactive and performant applications.

However, it also means that more of the app’s code and data live on the client side. For hybrid app developers, this shift is problematic. Developing an engaging application requires a significant investment of resources and time to design, code, test, and maintain the app over time. By using a native packager, developers put their investment at risk of theft, reverse engineering, and exposure to competitors.

Although countermeasures such as code minification and obfuscation can make it more difficult for a potential adversary to make sense of the extracted source code, it is still human readable, putting your code at risk.

Similarly, native packagers do nothing out of the box to protect any locally stored data. Developers would need to develop a data encryption plugin to protect the confidentiality of any local data. This sort of extra development effort delays the completion of the project and imposes additional expense over the lifetime of the app to maintain this security componentry across different device platforms.

“With Sencha Space, developers will still have all the benefits of building their apps using web technology without the risk of exposing their source code to anyone who cares to see it.

Until now, developers had to just accept these drawbacks as a tradeoff for the conveniences native packagers provide. However, Sencha Space provides an alternative solution: a managed web application environment that provides integrated local data encryption for all application resources, including source code. With Sencha Space, developers will still have all the benefits of building their apps using web technology without the risk of exposing their source code to anyone who cares to see it. Because Sencha Space provides both an encrypted file system and encrypted SQL database, developers can focus their energy developing innovative applications, not reinventing the wheel on security or worrying about their plaintext source code exposed for anyone to see.

To learn more about Sencha Space, go to https://www.sencha.com/space

You can also subscribe to Space for free at: https://manage.space.sencha.com

Build better apps for more devices at lower cost. Learn how at Senchacon 2015. Register today.

Space Webinar No Comments   Read more

Announcing Sencha Space 1.3 GA

Evolution of Web App Development and ManagementWe are pleased to announce the release of Sencha Space 1.3, our secure application management platform that lets you easily deploy your applications to the most users, on the most devices, with the least hassle.

Space consists of two parts:

  1. An app that your end users download and install on their laptops, tablets, and smartphones.
  2. An admin console application that your admins use to manage users’ access to your applications and data — available in the cloud and on-premise.

Many organizations feel pressure to deliver the right user experience at the right time on the right screen — including any desktop, tablet, and smartphone. These organizations increasingly face requests for applications that work securely even when offline or in a low-bandwidth environment. However until now, leaders in these organizations have been forced to adopt a fragmented technology strategy with numerous point solutions to address the growing list of basic requirements across the different platforms they must now support. This approach typically results in complex system architectures that are painful and expensive to deploy and manage.

The latest release of Sencha Space helps organizations to deploy, audit, and secure applications on any supported desktop, tablet, or smartphone. We have enhanced the platform to support the creation and management of offline applications, deployed to a fully customized instance of the Space client application. Your HTML5 apps can be deployed in a fully custom-branded instance of Space, so you can offer a seamless experience for your end users.

The latest release of Sencha Space helps organizations to deploy, audit, and secure applications on any supported desktop, tablet, or smartphone.

In addition, Sencha Space can help organizations to reduce the cost and complexity of developing cross-platform, multi-device applications by streamlining the development and deployment process over the application’s lifetime. This can be achieved by eliminating inefficient development processes and streamlining development, test, and debugging for developers. By simplifying application testing and eliminating the need for multiple code bases, native packaging, and app store deployment, organizations can potentially save months of developer time and use those resources more productively. According to economic models of the application development process, Sencha Space can save organizations as much as 60% in development expense over an application’s lifetime, compared with existing native and hybrid development models.

New Features in this Release

  • Offline application support – Create and deploy secure applications that will work offline or with low-quality network connections.
  • Customized Space client app creation – Space makes it easy to deploy your HTML5 apps into a fully custom-branded native client application. Your end users will never know it’s Sencha behind the scenes.
  • Explicit device authorization – Administrators will have even more control over user and device access with the ability to require explicit authorization of new device enrollment.
  • New additions to the Space SDK – Use Space APIs to do more than ever with the platform. Learn more about all the new APIs.

Benefits

  • Easily deploy business applications to desktops, tablets, and smartphones in a secure web application environment that encrypts and segregates proprietary apps and data on the device. Now, it’s easier than ever to fully customize the Space user experience with your organization’s branding.
  • Space offline access enables your apps to work and remain secure even when the device is disconnected from the internet.
  • Reduce the cost and complexity of multi-device enterprise application development, maintenance, and deployment by eliminating the need for multiple code bases, native packaging, consumer app store deployment, and the use of sensitive apps in insecure consumer browsers.
  • Develop and debug cross-platform applications with a superior user experience using the Sencha Space APIs and remote debugging capabilities.
  • Improve IT policy enforcement with centralized management of users, groups, applications, devices, and policies for access control and security.
  • Help simplify audit and regulatory compliance with usage data analytics and reporting.

Get Started Now — Free 30-day Evaluation

You can start your free trial by creating your account. For more information, check out the Sencha Space website.

space-webinar.jpg 2 Comments   Read more

Forrester and Sencha Discuss Evolution of Web App Development and Management

Evolution of Web App Development and ManagementRecently, Sencha and Forrester held a joint webinar to discuss key trends and best practices in web application management and deployment. During this session, Forrester Principal Analyst for Application Development and Delivery Michael Facemire and I reflected on the evolution of application development practices and technology. In addition, we identified best practices that organizations can use to create cost-effective, successful, long-term application strategies.

Check out the webinar recording here.

In particular, we explored how web applications are expected to run on mobile devices, tablets, and on the desktop. Additionally, employees are becoming increasingly resistant to heavy-handed MDM approaches to management and security. Progressive IT teams are beginning to respond to these changing attitudes by refactoring application strategies to emphasize the management of web apps and end-to-end security of sensitive data.

Progressive IT teams are beginning to respond to these changing attitudes by refactoring application strategies to emphasize the management of web apps and end-to-end security of sensitive data.

They have realized that maintaining control over their apps and data over their entire lifecycle is more important than micro-managing employees’ personal devices. Many have also realized that for the increasingly common scenario in which third-party collaborators — partners, contractors, and consultants — require access to critical apps and data, MDM does not handle this use case effectively.

We outlined a few best practices, along with compelling supporting data. These recommendations include:

  1. Build your apps with web tech — Standardizing on HTML5 and JavaScript is the most cost-effective way to build apps that reach all devices you’re likely to find in the enterprise.
  2. Choose an application platform with integrated management and security — Don’t reinvent the wheel on management and security. Your time will be better spent using a solution that includes these capabilities out of the box.
  3. Ditch the siloed approach to apps — Organizations must deliver apps on desktops, tablets, and smart phones. Creating a false distinction between the desktop and mobile versions of your apps is inefficient and wastes your organization’s money.

We wrapped up the session with a lively round of Q&A. We weren’t able to address everyone’s questions in the allotted time, so I’ve answered the remaining questions below:

Q: How does sandboxing work for Sencha Space on the desktop? Is it just a webkit-based browser wrapped into the Sencha Desktop app?

A: We have ported the Space management and security features to the desktop and package them with a web runtime based on the latest version of Chromium. As with all of the other Space clients, Space for Desktop provisions individual sandboxed environments for each application, so local storage, cookies, etc. from one application are never commingled with those of another app.

Q: Does the consistent runtime environment approach across mobile devices include the device-specific UX/UI that users are expecting?

A: “Consistent runtime environment” in this context means running on a stable version and minimal distinct versions of a modern web runtime. We have built appropriate UX on top of that foundation which manages the tradeoffs between the cross-platform requirements of the solution and the idioms of a particular device type and platform.

Q: Regarding the encrypted local relational db and file system: What is the performance penalty for encryption? Do apps have access to the data at runtime from memory?

A: For bulk data transactions in either the file system or database, we have implemented optimized routines in portable C to maximize the performance; the solution performs very well in side-by-side comparisons. For individual row or file operations, the performance penalty is negligible.

During runtime, we decrypt and load needed files and records into volatile memory where the app can make use of them. As soon as the app is done, that memory is freed for use by other processes. If the Space client goes into the background, resident memory is cleared, so the security exposure during this time is minimal. An adversary would have to know your authentication credentials and device-specific PIN to unlock the device and access memory registers during this time.

Q: What would you recommend to streamline the workflow during the development life cycle?

A: Avoid point solutions. Many application technologies provide narrowly focused solutions that address a small problem in the workflow, but do not account for a holistic view of the application lifecycle. Consequently, they frequently create integration problems moving from one stage of the development/test/deployment/maintenance process to the next.

Come hear more from Michael Facemire at SenchaCon 2015, April 7-9, 2015. Register today for early bird pricing.

Learn more about Sencha Space and how you can easily and securely manage and deploy web apps.

analyzing-the-roi-of-javascript-in-enterprise-software-development-1.png No Comments   Read more

Sencha Space: Beyond Native Packaging — Your Questions Answered

In last week’s webinar Sencha Space: Beyond Native Packaging, we discussed some of the important aspects of hybrid application development that cause significant friction. Specifically, we illustrated how native packaging tools waste both time and money by forcing developers to repeat the application development lifecycle for each of their supported platforms.

We then introduced Sencha Space and demonstrated how it makes the process of developing and deploying HTML5 applications much faster and easier. Using a managed runtime environment that supports desktops, tablets and smartphones, organizations can greatly reduce the amount of testing required for their applications and eliminate the hassles associated with deploying to consumer app stores.

Best of all, Sencha Space achieves these time and cost savings while also offering built-in user management and application security from the start.

Q&A

Following the presentation we had a lively Q&A with our audience, and we wanted to share some of that with you.

Can the Sencha Space client application be branded for my own organization?

Absolutely. Sencha Space can be uniquely branded with a custom icon, your logo and splash screen. Once users have been authenticated into the Space client, the colors and logo can be configured to match your organization’s branding. If this is something you’d like to do, please contact our Space team directly at space-feedback@sencha.com.

At one time, didn’t Apple allow apps to download and run “interior” apps without submitting those directly through the App Store. How does Space get around this?

Some time ago, Apple revised its terms of use specifically detailing how native apps can access or distribute content. The policy states that you cannot download or update native code without re-submitting the app through the App Store — but you can download or update HTML5 code running within the WebView, as long as it does not substantially change the intended purpose of the app.

Because the apps running inside Sencha Space are considered “web content”, Sencha Space abides by the terms of use for the consumer app stores.

Can Sencha Space access local resources on either mobile or desktop devices?

Sencha Space provides an encrypted file system for each application to use, so client apps can store resources locally (via the Camera or Downloads APIs) and retrieve them later. The Ext.space.Camera API also allows users to access photos from their devices’ libraries.

Does the Ext.space.Invoke API send messages through a server? Or do applications communicate directly within the Space client?

Invoke is a JavaScript API that lets one application securely run and communicate with another application running within Sencha Space. Because Sencha Space supports multiple WebViews to run the individual applications, your apps no longer have to send messages to a server and wait for asynchronous notifications. Using Invoke, applications communicate directly — which lets you build simpler, smarter applications.

The Ext.space.Invoke API allows apps to communicate either in the foreground or the background, and also handles the incoming messages received from other Space apps. And because all of this happens within the secure Space container, none of the data is ever exposed to the outside. Furthermore, administrators can configure which applications can communicate with each other.

Conclusion

The answers above represent just a fraction of the questions we answered during more than 20 minutes of Q&A. We covered a wide variety of other topics, and we encourage you to watch the recording in its entirety to learn more about Sencha Space.

You can check out Sencha Space for free by visiting manage.space.sencha.com and simply creating an account. Then watch Sencha Space: Beyond Native Packaging to see our great demos and learn how Sencha Space simplifies application deployment.

2 Comments   Read more

Sencha Space Webinar Series: Session 2 – Beyond Native Packaging

Native Packaging Webinar AnnouncementWe are pleased to announce the second installment in our Sencha Space webinar series. In this session, we’ll explore the deficiencies of native packaging solutions and how Sencha Space provides a better way to deploy, secure, and manage hybrid applications. By leveraging the management and security features of Sencha Space, while eliminating the need for native packagers and app store distribution, organizations can realize significant productivity gains and cost savings over the lifetime of their applications.

Space Webinar: Beyond Native Packaging

Tuesday, December 9, 2014

10:00am San Francisco PST | 1:00pm New York EST | 6:00pm London GMT

Space Webinar: Beyond Native Packaging

Jason Cline (Director of Engineering) and Art Kay (Developer Relations Manager) will demonstrate how to use Sencha Space to build, deploy and manage HTML5 apps more efficiently.

What you’ll learn:
  • How to accelerate application development by eliminating the need for multiple code bases across platforms, native packaging, and app store distribution
  • How to design security and manageability into your apps from the start
  • Best practices for streamlining application deployment

Sencha Space makes it easier to develop and deploy secure cross-platform HTML5 apps to a managed runtime environment that supports desktops, tablets and smartphones. Organizations can take advantage of this capability to design manageability and security into the application from the start and eliminate the hassles associated with deploying to consumer app stores. Sencha Space enables you to move beyond native packagers and bring your applications to market more quickly and securely.

There will be a Q&A session at the end of the presentation, so join us to learn best practices for deploying your apps and get your questions answered.

space-webinar.jpg 1 Comment   Read more

How to Deploy and Manage your Ext JS and Other HTML5 Apps

How to Deploy and Manage your Ext JS and Other HTML5 AppsLast week, we held a webinar on Sencha Space 1.2 to provide an overview of the challenges around application development, deployment, management, and security that developers and IT professionals in the enterprise must address. We demonstrated Sencha Space extensively and showcased one of the marquee features of the latest release: integrated support for desktop applications in our platform — a major step forward in addressing key app development challenges that include:

  • Developing multi-device, cross-platform applications in an efficient, cost-effective way
  • Delivering applications to the right user on the right device at the right time
  • Securing sensitive application data end-to-end
  • Retaining control over applications and data over their lifetime
  • Having to publish enterprise applications through consumer app stores

ExtJS 5 application deployed and running securely in the Sencha Space desktop client

We explored how current application management and deployment technologies provide only partial solutions and introduce unnecessary cost and complexity into the app development and deployment workflow. For example, native packagers like PhoneGap and Cordova are mobile-only, provide no management or security features, leaving these as additional tasks for individual application teams.

Similarly, Enterprise Mobility Management vendors provide device and application management solutions that are mobile-only; they do not address management, deployment, and security issues for desktop applications. Because the mobile device management (MDM) solutions are focused at the device-level, not on individual apps and data, their enforcement mechanisms are too coarse-grained and heavy-handed for the primary use case for which they were originally intended: BYOD. Many employees will not yield control of their personal phone or tablet to an IT professional due to privacy concerns. For the extended enterprise BYOD use cases — providing app access to partners, contractors, and consultants — these solutions are a total non-starter because a non-employee business collaborator is even less likely to accept MDM solutions on their devices than a full-time employee would be.

These vendors also provide application management features — again for mobile devices only — and enforce policies in a more fine-grained way. These management features revolve around two approaches: app wrapping and native SDKs. Both of these approaches deliver no value without requiring developers at least to rebuild their application. At worst, these solutions require developers to re-code their applications to explicitly insert proprietary management and security hooks into their apps’ source code.

Consumer browsers support smartphones, tablets, and desktops, but provide no management, security, or API access to native OS/hardware capabilities.

Sencha Space addresses all of these challenges by providing a managed runtime environment for HTML5 applications on desktops, tablets, and smartphones. This approach provides the following benefits:

  • Eliminates the need for native packaging, multiple code bases across platforms, and app store deployment
  • Provides a single solution for developing, deploying, and managing multi-device applications on desktops, tablets, and smartphones
  • A consistent, modern, high-performance HTML5 runtime environment and SDK that make it easier to develop rich, secure applications for any supported device

If you weren’t able to attend the live webinar, watch the recording to see these capabilities in action. In addition to doing demos to show how Space can help organizations develop, deploy, and manage applications and users, we showed how you can build an application in Ext JS 5, which supports both tablets and desktops, and use Sencha Space to grant and revoke access to applications instantly over-the-air to any tablet or desktop.

Adding an application and deploying to users in Sencha Space is instantaneous.

Sencha Space provides a complete manifest of users, their group membership, and their devices. It allows administrators to revoke access to apps and data at the user or individual device level.

Using a single code base and without native packaging or app store deployment, Space can instantly deliver your application to the intended end user on their preferred device. In addition, it provides a secure runtime environment that protects your data, enforces your business and access control policies consistently across all devices.

A single ExtJS 5 application running unmodified in Sencha Space on both a Windows desktop and iPad.

We also demonstrated extensively the many new APIs we introduced with Sencha Space 1.2 and how they help developers build rich, complex applications. We encourage you to explore the Space APIs more on your own and discover these benefits for yourself.

You can also see how Space can help developers to simplify remote debugging of applications on both iOS and Android with a debug version of our client application that provides real-time introspection of a running applications. Learn more about this powerful developer productivity capability in the Space docs.

Sencha Space provides a powerful remote debugging capability to help developers quickly troubleshoot apps.

We answered a few audience questions during the webinar, but we wanted to follow up on the rest. I’ve included responses to the remaining questions here.

Q: How does Space facilitate offline applications?

A: Space supports the HTML5 app cache mechanism and provides a rich set of APIs for storing large volumes of sensitive data on devices using strong encryption. Future product enhancements will augment Space’s flexibility to handle offline use cases.

Q: Can Space management restrict an application to only a certain platform/device type? Some apps may run well on the desktop, but not on mobile devices and vice versa.

A: Space currently does not enforce policy to exclude device types or platforms at runtime. However, Space does provide APIs to determine the device type and OS, so developers can add a small piece of code to filter out unsupported devices. Stay tuned for enhancements in this area.

Q: How does Space manage the app development/upgrade process? Can we deploy a version of an app to QA and then move it to production?

A: Yes. Today, you can deploy different versions of your applications inside of Sencha Space and link them to specific users like your QA team. Once they have completed the testing process, you can then deploy that version of your app to your production users. Stay tuned for upcoming enhancements around application versioning and deployment.

Q: Can Sencha Space access my app’s data? For example, if the admin wipes her org’s data from the device, can Space send the data back to the server?

A: No. The application can explicitly synchronize local data back to the server. However, Sencha secure storage is specifically designed, so sensitive data can’t be recovered from a device unless an authorized user specifically accesses the application during a valid session and after a successful PIN challenge. We are researching secure data sync mechanisms for a future release.

Q: How does Space compare to MBaaS such as FeedHenry?

A: Space is not an MBaaS solution. It provides a managed, secure HTML5 environment and client-side SDK. It does not provide back-end capabilities such as cloud storage sync, server-side API management for applications and social media integration. In addition, Space supports desktops, so it bridges the mobile/desktop divide. Space user management integrations and push notification API are features that enable richer and more secure client-side user experiences.

Q: Does using Space for my apps prevent me from using a consumer browser or native packager too?

A: No. We provide an API, so you can develop your app to easily tell whether it’s running in Space or somewhere else and take the appropriate action.

Watch the webcast recording to see the product demos and learn more about the new features. Keep an eye out for details on the next webinar in this series about the exciting new capabilities of Sencha Space.

space-blog-1.2-launch-webinar-redux-teaser.jpg 4 Comments   Read more

Android 5.0 Lollipop: As Sweet as Promised

Android 5.0 Lollipop: As Sweet as PromisedAndroid 5.0 ‘Lollipop’ has certainly positioned itself to be one of the more significant updates Google has released, so far, to its mobile platform. With a brand new look via Google’s Material Design and over 5000 new APIs, it’s sure exciting!

Sencha is firmly committed to HTML5 and the Web, so we always keep a close eye on how new releases impact both developers and end users who rely on web technology. Because Android holds a dominant 51.5% share of mobile devices in the US (and almost 85% globally), we decided to dig into the new release and pull out the Web-specific details we felt were most important.

The Web on Android 5.0

Android 5.0 ships with Chrome for Android 38 as its default browser. This is not a big change for most Android users as they have been able to access this browser from the Google Play Store for a while now. We also know that Chrome for Android 39 is already rolling out to people and expect that most of ‘Lollipop’ device owners will be updated soon enough. The more interesting story for web developers lies in the new Android WebView.

Improvements to the WebView

The new Android 5.0 WebView is now based on Chromium 37 — but probably the biggest change we see on Android 5.0 is the fact that the core WebView is no longer coupled to the Android OS. Google is now able to push updates, changes and fixes to the WebView via the Google Play Store — allowing hybrid applications to benefit from more frequent updates than the whole Android OS release cycle. You can dig into all the info on this change by reading the Chromium WebView sections of the Google developer docs.

Now, with this great power comes potential disaster. As users have the final say on which things from the app store actually make it to their devices, this awesome feature could easily result in some serious fragmentation. For example, one user might be running a Chromium 37 powered WebView while others have already updated to 38 or 39.

If you are truly looking for a solution that cleans up such fragmentation on any mobile environment, check out Sencha Space.

You can also view our webinar recording:

Sencha Space — The Secure Way to Deploy and Manage Desktop and Mobile Apps

The New Goodies

We already pointed out how the WebView on Android 5.0 will run Chromium 37 — yet the default browser is Chrome for Android 38. This will cause some headaches for a while, as we can see in the difference between the middle and right columns of this chart. There’s a significant amount of green in the right column that is missing from the middle column.

The 5.0 WebView will be missing features like FileSystem, FileWriter, Battery Status, Full Screen and Web Speech. Interestingly enough, the Web Speech API seems to exist in Chromium 37, but there are simply no voices to actually do the speaking. And from what we can tell, the Web Audio API does seem to be working in Browser 37 even though it has not been verified on caniuse.com yet.

Needless to say, we hope Google will push out an update to the WebView soon with all of the Chromium 38 improvements.

In the meantime, lets take a look at some of the key features the WebView gained in Android 5.0 over 4.4.4:

HTML Import

As Android already supports HTML Templates, HTML Import is a very important feature update for the future of Web Components. This will allow developers to include HTML documents in other HTML documents without having to use messy hacks, iframes or JavaScript.

Web Animations API

This is another huge feature for the evolution of the Web Platform. The browser is now aware of the fact that users want to animate elements and will handle this natively. For example, instead of needing to manually track CSS values and modify them, you can simply use the element.animate() call and pass in animation properties. This will return a AnimationPlayer, which is useful for adding listeners or controlling your animation.

getUserMediaStream API

This API will open up access to external device data such as webcam video allowing for a whole different caliber of applications to be created.

WebRTC

We will finally have built-in support for peer-to-peer communication directly via the browser. This could be huge for enterprise communication applications or mobile gaming.

SVG Fragment IDs

As we mentioned in our previous iOS 8 blog post, this is a sneaky but powerful feature that opens up the ability for vector-based spritesheets. This is now available across the board on the latest browsers and is a great step forward.

WebGL 3D Canvas Graphics

Of course, the biggest monster feature we are all excited about is full hardware-accelerated 3D graphics support. Game developers will certainly be thrilled to see adoption of this feature across IE, Safari, iOS, Android and Chrome — but we have no doubt that app developers will be looking to tap into the power here as well.

Cordova and PhoneGap users will be extremely excited to see this boost for their applications, and as we look forward, we can see the ever expanding potential for the web as a mobile application platform. Sencha Space goes one step further and now provides an Android client app with a single WebView based on Chromium 38 for all Android 4.x devices. This improvement brings hardware accelerated graphics to the vast majority of the current Android install base.

Performance breakdown

HTML5 developers are always excited to see new features supported by modern browsers because they enable web applications to deliver rich experiences on any device. But beyond the capabilities of HTML5, developers also need their applications to be fast. How do web applications stack up on Android 5.0?

Unlike the recent iOS 8 update, Android 5.0 doesn’t ship with any across-the-board gains in HTML5 performance. On the one hand, the Android stock browser has been based on Chromium for a while and iterations on this have not “accelerated” a lot of major speed bursts.

We can however see how things are moving forward in the space as we break them down, particularly with the WebView. As one would expect, running Chrome 38 on 4.4.4 or 5.0 had no noticeable advantages in any of our tests. Note: all of these tests were done on our Nexus 7 (2013) running the Android 5.0 GA.

Octane V2

Here, we’re looking at Google’s own Octane v2 scores. We can see the Android 5.0 WebView has some remarkable improvements. For example, the Splay test is seeing a 324% improvement, Deltablue increased 87% and Box2DWeb gained 68%.

Seeing that Chromium 37 will be the baseline for all devices coming out with Android 5.0, performance certainly does appear to be moving in the right direction with this update.

Dromaeo Dom Core Tests

In the Dromeao Dom Core Tests, we can see the 5.0 WebView saw improvements in all areas except Dom Attributes — where it actually saw almost a 20% drop in performance. Dom Query, however, is a clear winner and a big boost in performance for Chromium 37. The charts make it hard to see, but the Android 5.0 WebView actually has an 18% increase over Android 4.4.4.

Dromaeo CSS Selector Tests

In the Dromeao CSS Selector Tests, you can see a lot of orange and blue in the lead here, which means CSS selector tests are a loss for us moving forward into Android 5.0. It’s fair to say that overall CSS Selector performance will not be as speedy.

Dromaeo JavaScript Tests

Here, we see another loss in performance as we move to Android 5.0 — we saw a drop in almost all of these tests. The most dramatic being a 16.8% loss of performance for Code Eval in the Android 5.0 WebView compared to Android 4.4.4. Though none of these are extremely major hits, we would always like to see the charts moving the other way.

IE Fishtank Test

We see another major loss here for Android 5.0, looking at 2D canvas drawing. In the more realistic tests of 100 Fish, we see about a 40% drop in performance for the Android 5.0 WebView. These kinds of FPS will not be welcomed by a lot of the web-based game developers out there.

SunSpider Tests

SunSpider tests are also not exciting to look at as the current leader across the board is the 4.4.4 WebView. String, Crypto and Date tests all saw about a 15% decrease in performance between the WebViews. We can see that the WebView performance did come out better than the Chrome 38 Browser for now.

HTML5 Tests

Last but not least, here is a simple look at the overall HTML5 ratings.

Hybrid applications running in the WebView gain a ton of features in Android 5.0 (score of 493) compared to Android 4.4 with a score of 434. Developers should be really excited to see the improved performance and new features in the WebView.

Conclusion

The release of Android 5.0 brings a mixed bag of reviews for HTML5 developers.

Although we are disappointed with the performance comparison this time around, it is worth noting that nothing really felt ‘slow’ or ‘sluggish’ on our devices. As we look forward to the new Nexus 6 and Nexus 9 (with their improved hardware), we can expect that performance will not be a key factor anymore.

Along with a huge gain in WebView features, we also are seeing a really nice developer workflow for Android. The independent updates should make innovating with the Web on Android devices a much better experience for everyone.

Anytime we see this many new features and this much support for HTML5, we can’t help but have a positive outlook on the future of the Web. We hope you found this information useful. Please feel free to drop us a line below in the comments.

To learn more, view our webinar recording:

Sencha Space — The Secure Way to Deploy and Manage Desktop and Mobile Apps

lollipop-teaser.jpg 1 Comment   Read more