With the arrival of Windows 10 and the Windows One paradigm on the horizon there is newfound excitement about what is to come from the folks at Microsoft.
As the general public awaits the return of the “Start Button” and kids get excited about Xbox streaming directly to Windows 10 devices, I am listening carefully to see if there is anything new for the awesome people that create business applications on Windows Mobile Handheld devices.
As a mobile developer in the enterprise, I’ve had a long relationship with Microsoft. Windows Embedded Handheld and Blackberry were the two prominent mobile operating system for ruggedized and enterprise mobile devices. With Windows CE, there was no limit to what you could do with a device and the software. Since the release of Windows Mobile 7, the landscape for ruggedized and enterprise devices has drastically changed—mainly because business units could not sit on their hands while waiting for Microsoft to figure out that Windows Handheld 7 is not an enterprise mobile OS.
So companies that did not need a true ruggedized device would deploy iPads, Android Tablets and leveraged BYOD (bring your own device) in the hopes of keeping employees productive and happy. Some companies would put a ruggedized case on consumer devices because there were no ’new’ devices to replace their legacy handhelds.
I am asked all the time, “which mobile OS should companies looking to upgrade their fleet of ruggedized devices choose?” I have participated in large-scale deployments of each and I have a very opinionated view of which one is more cost effective, quicker to develop/deploy for new teams and flexible.
So, as I wait for the Windows 10 announcements to slowly rollout and learn about the new features making their way into a niche set of devices used by the largest companies in the world, I have a small list of features that I would like to see for embedded handheld devices.
Desktop Level (Total) Control Over the Device:
Organizations have spent more than a decade being able to support very custom requirements around controlling ruggedized devices. That should not change. If my organization wants to create a master app that serves as gate keeper, or finely tune the wifi profile for their specific environment then nothing should keep an organization from that level of control.
Desktop Level (Total) Control Over Applications:
The same thing goes for applications. There should not be any limitations on what an organization should be able to do with an application.
Simplify APIs (Merge the Desktop and Mobile APIs back together):
With the release of Windows Mobile 7 there was a shift in SDK APIs and where they lived. Some were removed, some were renamed and some were moved to different locations. It was confusing and since no one was developing for Windows Mobile, it was time-consuming to research how to do this old thing the new way.
These particular devices are used by a few industries that have very similar scenarios. Metro applications are a big paradigm shift away from traditional CE applications. It would be cool if Microsoft created boilerplate application templates.
For example, in Retail there are probably 6 application scenarios that are common between companies:
- Item Look-up
- Item Receiving
- Point of Sale
- Item Mark Down
- Sales (dashboard)
If there existed templates that were 50% of the way there visually, I would just need to wire up my API and map my data locally to the standard views. This would be a huge advantage for proving out concepts and iterating quickly based on feedback.
Keep in mind these are business applications and should be simple, intuitive and easy to use.
This move could take “Application Templates” to another level by allowing them to be cross platform out of the box. But this move also brings Android and iOS developers back into the Microsoft ecosystem. As I stated before, business applications should be simple and intuitive. Leveraging Xamarin forms for truly cross-platform one code base applications would be right at home in the enterprise.
Import Additional Web Views/Browsers:
Making custom changes to Internet Explorer-based browsers is a big time suck. It would be tremendously helpful if Microsoft took a look at 97% of the market place and supported those same scenarios. Doing so would align with some of the steps they are taking with Azure and help Microsoft become a more pleasant platform to support.
Another option would be to support additional web views based on available builds of WebKit or Mozilla. It would be a time saver to just select a WebKit based WebView rather than spend time hacking around Internet Explorer.