Related sites:

Newsletter: Perspectives on Power Platform

Company: Niiranen Advisory Oy

2 become 1 UI: PowerApps Roadmap from MBAS

Have you looked at the MBAS Gallery yet? Microsoft Business Applications Summit 2019 was last week and already the majority of sessions have been published online for also non-attendees to enjoy. Even if you attended the conference in Atlanta, there’s a chance that you may have missed a few sessions, with there being 200+ of them in 2+1 days.

Live recordings of sessions are nice – if you have ~200 hours to sit through them, that is. As is the case with podcasts, I rarely come across a moment in my life where there would be empty space just waiting to be filled with a 1h chunk of audio/video of people talking about something that might or might not be valuable to me. On the other hand, I’m very comfortable with skimming through endless amounts of text & pictures, in search of something that warrants my real attention and further processing. That’s where PowerPoint slides are just awesome. Bullets, tables, charts, diagrams, screenshots, OH YES!

Last week I started going through the MBAS session catalog and downloading the slide decks for interesting sessions. (I’m not the only one who hoards PPTXs from MS events, check out MVP Jussi Roine’s blog for his tips on learning quick as a consultant.) Now I’ve got a folder with 115 PowerPoint files weighing in at 4.5 Gigabytes. Hmm, looks like some further prioritization is still needed to narrow these down. Well, one thing’s for sure: I know where I want to start diving into the content. The future of business apps awaits in this session:

Run One UI – the future of canvas, model-driven, and Unified Interface in PowerApps (BRK2073)

For those with Dynamics 365 Customer Engagement background, the topic of user interface unification might lead your thoughts to Unified Interface. Originally announced 2 years ago, this new client infrastructure aims to do away with the earlier divide between web client, phone, tablet and Outlook. More importantly, it’s a foundation for unbundling the application specific UI controls from the platform and opening up the road for everyone to build the kinds of controls that Sales, Service, Marketing and all the other 1st party apps contain. That story is called PCF and it’s a big deal for sure, but something even bigger is on its way.

This  “One UI” does not simply look at the Dynamics side of the house, rather it encompasses the whole app story in Power Platform. Ever since XRM merged with PowerApps, we’ve had this somewhat awkward divide between Canvas apps and Model-driven apps. These terms don’t mean much anything to customers when explaining them the platform capabilities. For the Dynamics professionals the concept of a “Model-driven PowerApp” sounds artificial. While on the back end the CDS, admin and developer story is coming together quite nicely, on the front end we see two experiences with not too much in common – today.

We’ve already heard Charles Lamanna make a statement that Microsoft has no intentions of keeping the app types in PowerApps separate:

“Artificial limitations in app features will be removed, so that choosing [File – New App] will give you model or canvas experiences and everything will work across both.”

Power 365 Show: Power Platform Changes and Answering Community Questions with Charles Lamanna

Sounds cool! But how exactly are they going to pull off this merging of the two client frameworks with a very different history? On the platform side it was fairly simple as XRM probably offered a lot of what CDS v1 was capable of and turning it into CDS v2 was not a big issue due to low adoption rate of the less mature technology of the two. PowerApps Canvas apps on the other hand have a huge momentum going on and the number of apps in production is exploding. Dynamics 365 CE ain’t doing too bad either when it comes to growth figures in the cloud, so messing too much with it sound very risky. After all, we’re still waiting for many existing customers to even move from the classic web client to Unified Interface, so do we really need more confusion in this space?

In the Run One UI session at MBAS we heard Clay Wesener present the master plan of how the two different app types will gradually turn into one PowerApp. Here it is:

This is really just mashing together the start and end state from Clay’s presentation, so this time you really should reserve an hour of your time and watch the recording, to understand the finer details. And grab the slides for reference, naturally.

A key part of the plan is that this won’t happen in a big bang. There won’t be an “Even MORE Unified Interface” launched at some grandiose marketing event, rather Microsoft will introduce capabilities from one app type to the other in a gradual fashion. PCF just arrived on Model-driven Apps as a public preview, soon it will start showing up on the Canvas side, too. Canvas Components are bringing the more structured way to define the UI into the previously blank canvas where each pixel used to run free, making it more like the grown up version familiar from enterprise business applications. These new parts are all about blurring the lines between Canvas and Model.

To link the two worlds of PowerApps more tightly into a common UI foundation, the concept of a Page is planned to be introduced at some point. Initially it would be called a Canvas Page and this will be the mechanism through which you would be able to bring the Power of the Pixels into the UI formerly known as XRM. It’s not the same thing as a screen in a Canvas app is today, nor is it a replacement of the Dynamics 365 CE forms, views or dashboards. It’s a new construct that delivers new possibilities for app makers to control the end user experience. Initially to be used as a way to ease the creation of a responsive UI in the Canvas world, this would also allow the traditional CRM apps to contain areas in the navigation that make moving to a Canvas page seem as natural as opening a dashboard “page”. Pages would also offer a way to make Canvas apps responsive without messing with all the details needed today, as they contain layouts with regions – much like the forms in Dynamics 365 CE.

Unified Interface is responsive by default, so why not just bring it all in there? The challenge in this approach would be that many app scenarios are actually better when they do not resemble a CRM system. Sure, Unified Interface is great for achieving the “configure once, deploy everywhere” dream that the Dynamics 365 product team has been chasing ever since MoCA framework and CRM 2013. However, this isn’t necessarily what the users truly want and need. Having the full CRM in your pocket is an experience that delivers a power user UI for a complex enterprise system, whereas what mobile needs to be for the vast majority of non-power users is a quick tool to get the few most common tasks done without thinking too much about them. Canvas apps are a great fit for building experiences like this: just what you need, with minimal chrome and feature bloat (because app makers have to build all of that bloat).

What Canvas apps could use is an easier toolkit for defining business logic than what the powerful yet “not so no-code” expressions offer. What Model-driven apps would really benefit from is a more powerful business logic engine than Business Rules so we could reduce the amount of custom Javascript. “Heeeeyyyy, wait a minute! Might there be an opportunity lurking in here somewhere?” Yes, this is exactly what Microsoft’s plans include: bring Business Rules to Canvas, extend Expressions to Model. It’s an ambitious goal and one that will probably take a bit more planning than just deciding that everything is supported everywhere. At the same time, it is exactly what us Citizen Developers have been longing for, so a very worthwhile effort from product development perspective.

One more thing: theming. Given that neither Canvas nor Model-driven apps exactly shine in this area today, at least there won’t be much legacy to worry about when imagining how the styling of a business application UI should really be done in the 2020’s.

Yeah, about those release dates… The Run One UI initiative isn’t something you should expect to be delivered in the next release wave of Power Platform, or even the one after that. The convergence of Canvas apps and Model-driven apps is going to be a journey – a bit like that Long Road to Unified Interface in Dynamics 365 that I blogged about 2 years ago. So, given that we’ll continue to have our familiar tools of Dynamics 365 CE available in CRM projects, and the #PowerAddicts will have their PowerApps (meaning Canvas apps), is there actually any reason why we’d need to start doing things differently today?

Photo by Pablo Heimplatz: sunrise in Mt Cook national park in New Zealand.

I feel like what we’re seeing in Power Platform is the phenomenon that the phrase “gradually, then suddenly” very aptly describes. Originally from a passage in Ernest Hemingway’s novel The Sun Also Rises, these words have been referenced in many articles that talk about the nature of how technological change happens. A recent one by Tim O’Reilly is well worth reading to set the context for thinking about what the accumulating changes in the business application platform from Microsoft will mean in the long run for customers, partners and individuals working to build solutions on top of it. The gradual part is made possible by the continuous deployment model of the PowerApps software tools (powered by the cloud of course), which may hide away the magnitude of the change. The sudden part is when you wake up one day and realize that the tools you’ve been using for that one thing you do (be it CRM or whatever) are now in the hands of Every Developer, most of who have never even considered building what you’ve always built with them.


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.