I think that vision is something that many of us have. We just have to pay attention and listen instead of try to define what the future holds in on our own terms or based on our agendas. Another problem though with predictions, is that they don’t necessarily come in a specific number, or with a specific timeframe. For example, In my prior predictions blog at the end of 2012, many of the items did indeed become true, while others did not. I believe the remaining ones will still come to be, but it may just take a little longer. It’s also interesting to see how some of these predictions also came true in 2014, instead of 2013. In any case, my point is that I refuse now to write this with a specific timeframe (for the most part) as I think some items simply will take time and it’s hard, if not impossible, to know how much time that will be. With this little disclaimer this time around, here are my predictions:
- Microsoft strikes back. OK so this one I do think has a timeframe. I believe 2015 will be a good year for Microsoft. They will sell a lot of Windows licenses and Surface tablets. They will start to conquer back some of the ground they lost. Windows 8.x has figured-out some of the more annoying usability quirks, while users have got more accustomed to what to expect. With its new CEO, Microsoft is once again embracing openness when it comes to Office being available in multiple platforms and hopefully that path continues.
- 2. The Enterprise will shift to make native mobile apps mainstream. OK this one will probably take at least 2-3 years to come, but the issue is simple. Yes, you can do a lot of things on the web, and on your mobile web browser, but the experience is, simply put, a little sucky. It’s not the same thing from a user experience standpoint to wait for a server to provide a result, than to get an immediate answer from a native app. The graphics, animations and interactions are also not quite as finished or as polished. That’s why users prefer apps for common tasks. Let’s say you use a hypothetical project management application. Clearly you will want to have the data on the server so that you can access it via other devices you own and/or share project information with your coworkers. So the easiest thing to develop would be a responsive website that can provide the information to many different users on many different platforms. If all of a sudden we create a native app, however, and the data is cached locally, I can now update my results, create reports, etc. all instantly and the performance and user experience improvement is clearly preferred. So why doesn’t everybody create native apps for use cases such as this? Simply put, because it’s more expensive and harder to execute well. Multiplatform solutions like Xamarin and others provide somewhat of an answer, but they miss the mark because, ironically, they are too powerful in what the platform can do. What’s really needed here is a higher-level concept which I’m going to call Enterprise Middleware for Mobile Applications (EMMA). EMMA, in my mind, would consist of the following:
- IDE to define simple enterprise-like applications generically at a high level (i.e. platform-specific code very much discouraged). Think of it as a new incarnation of 4D or MS Access. Logic is then tokenized and/or stored generically in a database to be used in any platform. It would use light-weight, generic front-end classes to interpretatively run these applications in a variety of platforms (i.e. iOS, Android, Windows, Blackberry etc.)
- A data layer that replicates and stores locally (i.e. at the client) much of the data, while synchronizing results back to the server, resolving data update conflicts, etc.
- Implicit security (i.e. use of encrypted tunnels and encrypted local storage, etc.)
The benefit of a platform like this is, from an enterprise standpoint:
- Write-once, deploy everywhere logic.
- Ability to instantly change / patch / revert logic without having to redeploy code thru an app store.
- No need to employ staff that knows all platforms relatively well.
- Single code base to maintain for all mobile applications (perhaps even the enterprise app portion of the website).
Please note that this would not work for every kind of app (i.e. games, etc). I’m talking about boring, simple enterprise apps which for the most part are content (rich text and media assets), structured data (fields) and basic business logic (i.e. validation of fields, submission of transactions to a back-end service, etc.). This prediction somewhat reminds me of this quote of unknown origin: “The best way to predict the future is to create it”. To that end, it may be that we will will EMMA into existence one day as I’m a little disappointed with the lack of vision from most product companies out there.
Sitecore will get bought by Microsoft. This one seems like it’s an obvious benefit to everyone. Microsoft gets to profit from owning the leader in the .NET CMS world which is finally now very mainstream and continues to expand via features and overall marketplace perception of the product. It will finally have a true CMS product (MS CMS 2003 arguably wasn’t very good even in its best days). Sitecore customers will benefit from having Microsoft backing of the product for a very long time and it may even lower TCO (total cost of ownership). Sitecore shareholders would also benefit nicely if the transaction is valued fairly. Even services vendors such as Oshyn will do very well as essentially the increased resulting demand would force us to up our billing rates and our margins would be higher. I don’t see who would lose out of this kind of scenario (other than Sitecore competitors).
So this is what I see today and which the future will bring. I hope you have had great holidays and wish you a very successful 2015. The economy has indeed gotten better, and I also believe that the economy will continue at a strong, steady pace in 2015.
Happy New Year!