Author: Jukka Niiranen

  • Sharing Apps Is Caring

    Sharing Apps Is Caring

    A while ago there was an announcement made on the PowerApps team blog about “Share canvas apps with guests in your organization”. Launched in public preview, this feature makes it (almost) as simple to share apps with a guest user as it is with internal users from your company. Basically all you need to do is invite them as guests into your tenant, by leveraging the Azure AD B2B collaboration:

    Once they’re in, providing access in the PowerApps Canvas app sharing menu works the way you should already be familiar with. Guests will appear as users that appear in the search and you can do all the usual stuff, apart from making guests co-owners of your app.

    The fact that you can Bring Your Own Identity in this app sharing scenario is already a big benefit. Forget about trying to create user accounts for your partners & customers, let alone manage password renewals, people leaving the partner company and all that tedious admin work. When there are no separate credentials for the different applications, you can focus your efforts on configuring the appropriate security model on your side and then automating as many steps in the Azure AD driven process as you can via group memberships etc.

    (Side note: Technically BYOI probably refers only to scenarios where you log into Azure AD with something completely external like a Google account, instead of just an identity from a neighboring tenant. )

    Providing application access to third parties via Azure AD B2B Collaboration has been possible for Model-driven apps for a while now, or Dynamics 365 CE like it is more commonly referenced. If you have partners that are performing telemarketing or support services that link closely to your core customer data, providing them access to your CRM directly is usually far more efficient than shipping data via Excels or handling task assignments via email.

    Licensing a shared app

    The one negative side about this external user scenario has been that you will always need to purchase a license for these guests before they can access your apps. It doesn’t matter if they’ve got Dynamics 365 licenses back at their home tenant, since that can’t grant them access to another tenant’s environment. Boo! No one likes to pay twice for the same service, but sometimes the costs can of course be absorbed while keeping the business case valid. Especially now when there’s the $10 Per App Plan for PowerApps.

    It doesn’t have to be that way, though. With the nearing GA of Canvas apps sharing across different organizations, there is now the possibility to “Bring Your Own License” (BYOL). Have a look at what the documentation says about the prerequisites for Canvas apps sharing with guests:

    The guest user must have a PowerApps license assigned through one of the following tenants:

    * The tenant hosting the app being shared.
    * The home tenant of the guest user.

    This is awesome! What this essentially means that any user that has either PowerApps or applicable Dynamics 365 licenses assigned to them in their own organization can use the powers granted by that license to operate apps in any other tenant in which he or she has been granted the rights via the respective security model of the app.

    Let’s try this out. I’ve got a user account with Dynamics 365 Customer Engagement Plan license (R.I.P.) assigned to it in my production tenant. What I will do in a test tenant that represents a partner organization in this demo is to 1) provision a CDS environment, 2) install sample account data into it, 3) generate a quick Canvas app from data to work with these account entity records, 4) invite my production user as a guest into the demo tenant, and finally 5) share the Canvas app from the demo to my production user.

    Steps 1-2 are just the configuration work familiar to any Dynamics 365 professional, so we can skip talking about those. Also step 3 is a matter of selecting “create new app, Canvas” and then going with the Common Data Service option with the account entity as the target table.

    After saving the app, we need to make sure that our guest user is found in the Azure AD user list, pretty much like an actual local user of the tenant would:

    Back in PowerApps, the sharing menu should now show us the guest user as a possible share target. Since this Canvas app is using CDS as the data source, we’re also presented with the options to set the security roles for the guest.

    Click “Share” and the guest will have an invite email in a few seconds, with a link to the Canvas app:

    Click the link & off we go! By the power invested in me via a Dynamics 365 license purchase by a completely different organization, I’m now fully capable to work with the CDS data via a PowerApp offered to me by a partner in their tenant.

    App strategies for the Power Platform era

    To an outsider this whole app sharing thing might seem a bit underwhelming. “What’s the big deal? Isn’t that exactly how it should work?” YES. It should, but it hasn’t – until now. Being originally born into the internal networks of organizations, the business user software from Microsoft has suffered from the boundaries set by an invisible firewall that no longer physically exists in the era of public cloud applications. While the application platforms from MS have gradually acquired better skills to work with the outside world, the licensing model hasn’t been all too friendly for many cross-tenant scenarios.

    For now, when you purchase the Per User license to Microsoft’s low-code application platform, you get a “1:N pass” for one user to access an unlimited number of PowerApps Canvas or Model-driven applications within the home tenant:

    The more business scenarios you can cover with PowerApps, the cheaper the relative price you pay for the platform capabilities. The result within an organization that goes all-in on Power Platform to digitally transform themselves can be quite a high number of apps already. Now, imagine that it wouldn’t be limited just to the types of digital processes that operate within your organization’s firewall. What if there was a multi-tenant model where the Per User license could unlock collaboration scenarios with your partners or customers? This network effect could grow the number of apps even faster, as it represents a “1:N:N pass”:

    Pretty exciting, don’t you think? We’re not quite yet on the level where B2C app scenarios would be within the scope of PowerApps, but this expansion into B2B collaboration area is surely a part of the strategy how Microsoft plans to grow their Power Platform business. The ability to use Canvas apps without a license in the app’s home tenant directly is an important variable to consider when planning your app strategy in the MS Cloud.

    One thing to keep in mind here is that Canvas app sharing doesn’t replace the use of PowerApps Portals for external audiences, as those have different pros and cons from a feature and cost perspective. Also the usage of Model-driven apps for collaborating with external parties in complex business processes will probably still have a place in the greater Power Platform puzzle, even if this new license portability doesn’t cover them (at least not yet).

  • PowerApps licenses and a Dynamics 365 environment

    PowerApps licenses and a Dynamics 365 environment

    Believe it or not, Dynamics 365 Customer Engagement applications from Microsoft are built on top of Power Platform. No, they didn’t originally start that way, but as the Citizen Application Platform technology from the PowerApps side merged with the former Microsoft Business Solutions product that was originally built to be an extendable CRM system, that is the end result today. As an example, Sales Enterprise is one type of Model-driven PowerApp, even though it carries the Dynamics 365 branding given to it by Microsoft. Yes, it contains much more functionality than what the low-code application platform of PowerApps provides app makers out of the box, but if you would use the SDK to extend it with custom code via methods supported by Microsoft, you could build something similar yourself (given enough development resources).

    Model-driven apps like Sales rely heavily on Common Data Service, because not only does it serve as the single data source for the app, but also the place for all metadata. The solutions are made of components like entities, which have subcomponents like forms and views. The process of building a Model-driven app may start from the creation of the required components, or you might reference something that already exists in the CDS environment you’re working in. You then choose the relevant components in the Model-driven App Designer, arrange them into a nice Site Map for users to navigate through, publish your changes and your App is ready to be used.

    PowerApps license + CDS + Model-driven App = ?

    Although it may not be obvious, the CDS Connector included in paid PowerApps plans (Per App or Per User in the new world) allows you to connect to CDS environments that have been born from the provisioning of a Dynamics 365 Customer Engagement App. (Note: while there is a separate Dynamics 365 Connector, that has been deprecated in favor of the CDS one.) Using Dynamics 365 data in PowerApps for mobile apps and Flows for process automation is a very attractive scenario for many businesses and of course MS wants to promote that. As these effectively are part of the very foundation that powers Dynamics 365 first party apps, there are hardly any technical limitations as the tools become more and more natively integrated with one another.

    Let’s get back to the Model-driven app building scenario. Assuming we have a CDS environment that contains entities installed by the first party Sales Enterprise app from Microsoft, would it be possible to pick the very same entities used in this app into a custom App Module built by and accessed by a PowerApps user with no Dynamics 365 licenses? The answer is yes. Building a “My Sales App” that looks almost like the app shipped from Redmond is allowed. This pattern of using entities and data from Dynamics 365 hasn’t been specifically forbidden by the PowerApps licensing documentation. You can read everything via PowerApps, and aside from the list of restricted entities, you can also create, update and delete data in any CDS environment.

    Since official licensing documentation rarely addresses all the questions that customers and partners have, MVP Steve Mordue had to pick up the phone and call Charles Lamanna, CVP of CAP (Corporate Vice President of Citizen Application Platform, for those not familiar with MSFT TLAs). This resulted in an excellent and detailed article on what the intent and practice behind the latest Power Platform (and Dynamics 365) licensing updates is, so you really need to check out “Steve has another chat with Charles Lamanna”. Taken from the interview is the important part:

    “So even in a Dynamics instance you can use the new per app per user license, that’s $10 for power apps, as long as you don’t use any of the restricted entities or any of the application IP, like a schedule board or something from field service. The piece of information that’s missing is that list of sales restricted entities as part of the new per app per user license, there’s a few more entities from sales that will be added to that list.”

    OK, so there are some restrictions, by generally speaking a PowerApps user is a lawful citizen in the land that used to be XRM but is now called CDS.

    Down to the details

    Today there is very little technical enforcement of licensing in the online environments run by Microsoft. As I predicted in my previous blog post about the new consumption based licensing model, API restrictions are probably going to become more in line with what the paper agreements say. Similarly, we’ve been told already for quite some time that the App Modules available for certain user types would become enforced, too. Therefore directly accessing the Dynamics 365 for Sales app with a PowerApps only license probably isn’t ok, but following the above mentioned path of building a custom Model-driven app on top of these same entities and their common components should be within the spirit of Power Platform licensing. After all, they can be found in the Common Data Model specification already today (even though you can’t deploy just the entities without the Dynamics 365 app, at least today).

    The one license that has seen most controversy already before is Dynamics 365 Team Members. It’s the “SKU earlier misused as platform license” that Microsoft has since then locked down by removing CUD rights to accounts and drawing the line on 15 custom entities per App Module. We’ve yet to see the Team Member specific apps arrive that licensing guidance documents have referred to, but now when the legacy web client will be gone in one year’s time and be replaced with the Unified Interface that runs solely on App Modules, that might be a logical moment for MS to introduce the locked down experiences for the users on the $8 Team Member license.

    What’s the road forward for customers who’ve widely deployed Team Member licenses earlier? Well, one attractive alternative would be to pay an extra $2 and get them moved up to the PowerApps per App license at $10. I’ve covered the details in my blog post “Application/Platform Separation in New PowerApps Licensing Model”, in case you’re not yet familiar with this new world. There you are fully able to leverage the core entities like account, plus there are no limitations on the number of entities your Model-driven app can have. Heck, you can even have 2 apps and Portal access all for $10! Sure, you do lose the tenant wide rights to use multiple environments, but production CDS data is probably what these users mostly would work with anyway.

    While no one likes a licensing model that keeps on changing rapidly, the point where we are now with these latest announcements is at least a bit more clear than the incomprehensible maze of rights and restrictions we had before. The Venn diagram I had to draw in “PowerApps Starter Plans Capabilities Demystified” article is now deprecated, as the PowerApps P1 plan is gone and so are the restrictions on app type (used to be Canvas only) and entity complexity (used to be no real-time workflows or plugins). The new $10 per App plan can run an app as complex as you like. If you are facing the restrictions that Team Members will soon have to live with, just configure a custom Model-driven app into the same environment, give everyone a PowerApps license (and go crazy with the $40 per User plan if you can afford it!), then carry on using the application platform you already have deployed.

    Dynamics 365 is no longer the platform

    One more thing. On the Dynamics side, there’s an interesting new restriction introduced with the October 1st 2019 licensing changes:

    “Dynamics 365 subscribers may continue using PowerApps and Flow to extend and customize their Dynamics 365 applications. However, Dynamics 365 Enterprise licenses will no longer include general purpose PowerApps and Flow use rights. Dynamics 365 Enterprise application users can continue to run PowerApps applications within their Dynamics 365 environments, but running PowerApps applications in non-Dynamics 365 environments will require a PowerApps license. An additional Flow license will also be required to run flows that do not map to a Dynamics 365 application.”

    If you used to think that by buying a Dynamics 365 CE Enterprise license you get an “Access All Areas” pass to the platform back stage, then this recent change gives some new perspective on how Microsoft actually thinks. In preparation of Power Platform becoming a much more widely used technology than Dynamics 365 CE or XRM ever was or could be, it looks like there’s a need to separate the two routes through which the platform consumption rights can be acquired. Different product teams will have different buckets for both licensing revenue and operating costs, so buying a $95 Enterprise App license for Dynamics 365 no longer entitles you to everything that a $40 PowerApps Per User license does.

    Personally I don’t consider this environment type restriction to be a very elaborate way to define the licensing model boundaries. A Dynamics 365 customer today has a (near) zero costs associated with provisioning a CDS environment as a “Dynamics 365 environment” vs. a naked CDS environment for PowerApps, since they only pay per storage capacity and no longer per instance like the old Dynamics 365 licensing model used to work. To be compliant with the new terms and keep using PowerApps and Flow in any CDS scenario, all they’d need to do is throw in a Dynamics 365 App and never use it. Of course today you need to plan for this before provisioning an environment as you can’t (yet) add first party apps into a pure CDS environment afterwards. Anyway, details like this area bound to evolve as the related platform features mature, so the really important thing is to pay attention the direction of where Charles & co. are taking the big picture when it comes to Power Platform’s commercial model.

  • Licensing by consumption: pricing model of Power Platform online services

    Licensing by consumption: pricing model of Power Platform online services

    On the topic of Dynamics 365 and PowerApps licensing changes coming in October 2019, I earlier wrote about the biggest change in how Microsoft is separating the first party applications and the underlying platform in the new Per App pricing model. There’s another aspect in the coming licensing updates that has also caused a lot of concern among partners and customers: the API call limits. While the existence of limits on how much load one can place on the online service are not an entirely new construct, it’s the first time that the amount of API calls available is directly tied to the type of licenses bought.

    In their August 29 blog post, Microsoft stated the following:

    “A single, integrated approach for daily capacity limits will be implemented to help maintain a consistent quality of service for customers with PowerApps and Flow plans. These capacity limits should not impact standard or reasonable usage of PowerApps or Flow. Organizations that require additional capacity for heavy usage scenarios will be able to purchase add-on capacity and assign it to specific users or processes.”

    Updates to Microsoft 365, Dynamics 365, PowerApps and Flow Licensing

    The finer details of the new model are outlined in the PowerApps and Microsoft Flow licensing FAQs for October 2019 as well as the Requests limits and allocations pages over on docs.microsoft.com. You should keep an eye on these documentation pages, since further information will be made available, based on the incoming questions from customers. There have already been a lot of blog posts around this topic and I’m not expecting the debate to die out anytime soon. Rather than speculating about what the exact policies will be, I will instead try to set this new consumption based licensing into context with what’s happening in the Microsoft Cloud.

    Users aren’t the only thing that matters

    USL, user subscription license, has been the dominant model for pricing applications from Microsoft in the online services era. Of course they’ve been a key component ever since the personal computing revolution started with PCs running DOS, then Windows and many productivity applications like those found in the Office suite. The networked computing era extended the pricing models to server software that wasn’t always purely a per-user play, as the complexity and robustness of your back-end services determined how expensive that side was. In the initial wave of SaaS business applications, we saw a return to the simplicity of just paying a fixed fee like $50 per user and getting all of that server stuff covered for you. Oh bliss! Isn’t this exactly the way the cloud should be sold?

    Those first SaaS services also were in themselves quite simple. A replica of the server software you could have either in your own closet or the data center run by companies like Amazon and MS. You just offloaded the complexity involved in managing hardware redundancy, backups, storage etc. and instead payed for all that in the USL. This is all fine and dandy as long as the value from the applications can be closely linked to the number of licensed users accessing it. Using CRM as a simple tool to improve sales person productivity might map into this type of cost-value structure. But how about when you take a step further on the digital transformation path and start to actually replace those tasks carried out by human employees with something that is almost fully automated? Hmm, perhaps the PC business model isn’t optimal for a future that looks like this.

    Let’s look at some of the new services in the Dynamics 365 cloud. The commercial launch of Dynamics 365 for Marketing in Spring 2018 was a bit of a shock for anyone who always though these applications are licensed per user. Instead, Microsoft chose the model that HubSpot any many other vendors in the marketing automation space apply, by setting the pricing per contact. Yes, initially they were way off with this thinking by applying the pricing logic to the entire contents of the CRM database, but based on market feedback the model was adjusted to now count only for marketing contacts actually used by the specific application (i.e. where business value should be generated). Also, you actually don’t need any Dynamics 365 user license for those marketing people who build the customer journeys and analyze the results, since free user licenses are available to unlock the door into the system. Licensing is done on the environment level, after all.

    Purchase a free user license for Marketing

    Dynamics 365 Customer Insights is a CDP (Customer Data Platform, for those not keeping up with the latest acronyms) that allows customers to bring in customer related data from various different sources and unify them into a “customer 360” profile that links all those activity entries into a single view of the customer. You can then leverage big data processing features of a CDP to generate target segments like customers most likely to churn, select them to be a target group in Dynamics 365 for Marketing customer journeys and preserve your revenue streams by holding on to these customers identified by the intelligent machine in the cloud. How is this service priced? Per number of profiles: starting at 100k profiles for $1.5k, so 1.5 cents USD per profile. Any user in the tenant can be simply authorized to access the application, since the dedicated UI doesn’t have any dependency to the USL construct found on the Model-driven application side.

    Forms Pro is a professional version of the personal/team productivity app found in the Office 365 suite, storing its data into CDS entities for process automation and data analysis. Do you need a USL for the Pro features? Nope. The pricing is based on the number of responses to surveys, at $100 per 2k, making it $0.05 per response. If you want to listen to your customers and improve business outcomes as a result of that, it’s not about how many people you have looking at the data but rather how smart and how automated your feedback management processes are.

    AI Builder will go GA in October 2019. Guess how that’s going to be priced? That’s right: not per user. You buy a capacity license at $500/month for 1M “service credits”. When it comes to machine learning models as a service, with no pre-packaged Dynamics 365 app on top of them, there isn’t even any concept like contact or survey response that would tie the pricing to the physical world. You literally extract value directly from the data you put in there, with the help of apps and automation that builds on top of and integrates with your unique business processes.

    The consumption pricing model is already here. Future products in the Business Applications portfolio are more likely to gravitate towards that, rather than finding a user to attach a price tag on.

    Sandcastles in the sky and how to draw the lines

    In the cloud era, Microsoft can see everything. No, they don’t have employees looking at any customer’s private data or anything like that. What I mean is they have telemetry data on everything that happens on the service, because they are hosting all the moving parts involved. This gives them the opportunity to be very data driven in analyzing how products are adopted, what people actually do with them. It is essentially their own implementation of the digital feedback loop that you see James Phillips preaching to Microsoft’s customers and partners in every keynote he does. There’s the “transform products” part that is all about aligning product features to meet customer needs, but you can be sure MSFT also want to “optimize operations” when it comes to the logistics of delivering the cloud services and how to price them appropriately.

    Was gibt es Neues vom Microsoft Business Application Summit?

    Dynamics 365 is claimed to be the biggest service running on Azure today. Now, even though at Microsoft they both fall under the Cloud & AI that Scott Guthrie runs, there’s not a single bucket where all the costs would be thrown. The more Business Applications products are built that consume data storage and compute capacity, the higher the bill from Azure will be. The term COGS (cost of goods sold) is being used frequently when talking about the resources needed to keep cloud services up and running on these platforms like Azure. Power Platform is a platform on top of another, and while it often uses higher levels of abstraction that its raw Azure counterpart, API calls from the citizen developer PowerApps do turn into API calls against Azure services. Whatever product is generating this consumption must also front the bill.

    The vast majority of Dynamics 365 business today is still done based on user licenses, regardless of what our AI & big data driven future may look like. These are sold as SaaS apps you can just sign up and start using, rather than a complex solution that needs a technical architect to build the blueprint for. As such, the message Microsoft wants to get out there (but isn’t always so good in phrasing) is that the app user license should cover all normal usage for real human beings interacting with Dynamics 365 CE. Yes, anytime a user opens a contact form on a Model-driven app there are around 10 API calls made, which count against the quota for that particular user account. All CRUD operations theoretically count, but for an end user you shouldn’t need to count them. This is not the intention of MS.

    What is the idea behind setting the API call limits then? Well, the situation is this: the platform has evolved from the early days of being a simple CRM database for sales user productivity improvement into something that can connect OoB to a vast number of external (non-CDS) data sources and run complex automation on this data without anyone sitting in front of their PC and opening those contact record forms. When sold as Power Platform, there will be a massive amount of this non-CRM style consumption of computing resources running on the platform (unless MS completely fails with capturing this new business potential). Building all of this abstraction on top of the underlying Azure services and then giving it a way with essentially a per-identity flat monthly fee just wouldn’t be a sensible business model.

    (more…)
  • Canvas Apps for the Model-driven mind: how to make that leap

    Canvas Apps for the Model-driven mind: how to make that leap

    Business applications come in all shapes and sizes. In the Microsoft ecosystem, we now have a broader set of tools to choose from, compared to the past strategies of Build vs. Buy, i.e. writing code to develop a custom application vs. using an application platform to configure the desired functionality. The birth of Power Platform and especially PowerApps as the underlying platform technology for creating business apps brought together two very different methods of configuration: Canvas Apps and Model-driven Apps.

    It’s safe to say that hardly anyone in the world is currently a master of both application types. If you’ve been introduced into world of business applications via Dynamics CRM, XRM and Dynamics 365 Customer Engagement, then you will by default solve the customers’ problems with a Model-driven approach. For those that have been working with tools like SharePoint, InfoPath and the Office 365 suite of information worker productivity apps, the solution is very likely to be envisioned as a Canvas App. Persons with less professional history from either of these MS clouds will probably gravitate towards the mobile-first experience of Canvas Apps when getting to know the capabilities of PowerApps today.

    There is very real value in being able to identify the logical objects involved in the functionalities required from a business app and turning that into a sensible, scalable data model. This is the XRM mindset of starting from the back end data and processes when designing solutions. If you have been developing these skills in the classic CRM style projects for several years, then you possess superpowers that few Citizen Developers could ever match. Congratulations! However, now you need to start practicing the exact opposite approach for how to solve problems: forget the data and start from the user experience.

    You may already be aware of how massively Microsoft is investing in the new business models that Power Platform unlocks. Hopefully this has lead you to at least experiment with creating Canvas Apps based on existing data sources like CDS (if you still call it Dynamics [something], then hey: that’s perfectly alright!). While exploring these tools, perhaps you’ve also noticed how parts of the old XRM admin and customization features have started appearing in the PowerApps (and Flow) maker experiences. This level of awareness is a great start, but it’s not taking you very far yet in the process of changing how you think about solving business problems. You need to go much deeper, to unlearn the limits our model based world and embrace the possibilities of a modern Enterprise Low-Code Application Platform.

    At 365 Saturday Kyiv and more recently at Power Platform Saturday Oslo I’ve done sessions on this transformation process, aimed at the XRM professionals. These include setting the scene on how & why the different app types are merging together, what are the key differences in solution design process for Canvas vs. Model, and how to get started in being part of this new #PowerAddicts movement. The slide deck includes a “Top 10 tips for starting Canvas App development on top of CDS” section, which should hopefully make the journey a bit easier than it has been for me, back when I started on it around one year ago. See below for the presentation or go directly to SlideShare my Slides archive to enjoy it in full fidelity.

    Now the question is: have YOU already started your journey into the UX driven Canvas App world? If yes, what have been the biggest revelations or obstacles that you have encountered? If not, what are some of the roadblocks that have kept you from making that leap from the familiar Model-driven business applications into the expanding opportunities that PowerApps Canvas apps have to offer? Please do share your experiences in the blog comments, as I’m quite sure this an area where many professionals are searching for guidance and peer support.

  • Application/Platform Separation in New PowerApps Licensing Model

    Application/Platform Separation in New PowerApps Licensing Model

    Ever since Spring 2018 when the XRM and PowerApps platforms merged on a commercial level, I’ve found myself spending an ever increasing number of hours per week involved in licensing discussions and scenario planning. My initial exploration of the platform licensing back then came to the conclusion that many of the crucial details for actually determining what you can & can’t do with PowerApps licenses vs. Dynamics 365 CE licenses were simply not available at the time. Obviously this was not an ideal starting point for Microsoft to start pushing their Power Platform into new business areas that should see it capture the next 10 million developers from outside the traditional CRM field. But still, it is the legacy that came with the underlying platform that was designed to be sold as Sales, Service, Marketing etc. solutions delivered via traditional enterprise projects via partners that mostly had started back in the Microsoft Business Solution (MBS) days. What can you do about that, huh?

    This year at the Inspire 2019 partner conference, Satya Nadella framed the role of Business Applications and Power Platform in particular with the following numbers:

    (Click here to watch this segment of his Inspire 2019 Corenote.)

    If there are indeed 500 million new apps that will be created in the coming five years, then those sure ain’t gonna emerge from the MBS style business model and development methodology. Today the world is full of both cloud service providers that offer low-code/no-code tools for building your own apps very rapidly, as well as savvy power users who are interested in seeing if they could take their Excel workbook desktop wizardry to the next level with these cool new tools that promise to deliver modern apps for this smartphone era. Since MS has obviously identified this new business potential that Power Platform can unlock for them, are they going to let the prior licensing model of Dynamics 365 stand in their way? Probably not.

    It just so happens that Inspire 2019 was also the place where the upcoming licensing changes for both Dynamics 365 and Power Platform were introduced to the partner audience. Since Inspire is a public conference that anyone can attend, it also meant that any customers paying attention to the Microsoft ecosystem are already aware of the changes announced to take effect on October 1st, 2019. The slide decks for both sessions are available for download on the Inspire website for a more detailed look. On the PowerApps blog there is also a summary of these changes, which is nice. What’s really nice is that the comments section is open, which often isn’t the case for corporate announcements related to licensing (is it even a “blog” if there is no reader interaction opportunity given?). The product team has been responding to a lot of the feedback around the topic, which makes me optimistic about the possible fine tuning of the licensing model to align with what the outside world thinks about it.

    Pay per App

    As with licensing always, there’s far too many details in the Inspire 2019 news to cover in one blog post. Maybe I’ll eventually do a revised version of my “Demystifying Dynamics 365 & Power Platform Licensing” session from January, but right now I want to focus on one aspect: the price of an App. This is something the new PowerApps licensing model highlights in particular:

    In short, what Microsoft will do in October is to retire the earlier PowerApps P1 and P2 plans and introduce new “Per App” and “Per User” plans. Nothing (major) is going to change with how the rights bundled into Office 365 and Dynamics 365 licenses work. The “Per User” plan will be the same price ($40) and mostly the same capabilities as the earlier P2, whereas the earlier “lite edition” of PowerApps P1 at $7 will be discontinued completely.

    “What?!? How can they just take away the $7 plan and push everyone to buy a license that’s almost six times the price of that?” Yes, this is the hardest part about the changes, no doubt. I was a bit surprised to see this as the direction where Power Platform is heading, given how the citizen developers who’ve been playing around with the seeded Office 365 PowerApps license should rather be pushed into learning more about CDS, solutions and all those “real” application development tools that P1 previously offered. Nevertheless, after letting the new model sink in for a few days, I believe that this pricing mechanism makes a lot more sense than the earlier version.

    A fundamental problem with the current P1/P2 divide was that it attempted to draw the line on app complexity. There were limitations like the inability to attach real-time custom business logic (workflows, plugins) on entities that were used by PowerApps P1 license holders. This was particularly problematic when operating within CDS environments that also serve as the Dynamics 365 CE app database (yes, they’re all CDS now): any developer or 3rd party app registering a plugin step on an entity like account would instantly have put all P1 users attempting to access it out of compliance with the license terms. Also the rights on “complex entities” and “restricted entities” differed between P1 & P2. Sounds complex? Yup. I had to write a blog post for demystifying these PowerApps “starter” plan capabilities just to get my head around on where the lines were drawn.

    Something that would have eventually become a big problem with the old P1 definition was that it only allowed the users to run Canvas apps. Sure, those pixel-perfect mobile-first applications are what most people think PowerApps is made of, but that is a view of the world that needs to be deprecated. Model-driven apps are just as important area of what Power Platform represents (on CDS in particular), but that capability was reserved for P2 license holders only. Given that Microsoft is aiming to remove all of these artificial limitations between app types and eventually get all PowerApps customers to Run One UI, keeping P1 users locked from this future app convergence simply wasn’t a viable option anymore.

    (more…)
  • 4 directions for Power Platform business growth

    4 directions for Power Platform business growth

    It’s now roughly one year since Microsoft launched the concept of Power Platform. It’s been extremely interesting in the past 12 months to watch how this new platform strategy starts to play out in the world outside Redmond, as the pieces of this grand puzzle begin to become visible here and there. Having worked in the MS ecosystem on customer & partner side for 14 years now and coming from the Dynamics CRM side originally, this is the biggest single shift I have witnessed in their product strategy to date.

    Putting all the puzzle pieces together is surely not easy for anyone who isn’t devoting a sizable share of their time on consuming information from the various events, announcements, blog posts and documentation released by Microsoft. The thing that really makes it tricky is that this Power Platform thing isn’t confined inside a single bucket. It’s not Dynamics 365, it’s not Office 365, it’s not Azure. It’s all of them and yet none of them. Every MS partner and every customer decision maker will increasingly run into the product messaging, but they’ll hear it presented in a different way – and most likely interpret it uniquely based on what their background is.

    The only reason Microsoft would be investing so heavily in building and promoting the Power Platform is that they see a massive new business opportunity in it. As Steven Guggenheimer wrote in his recent blog post:

    “The Business Applications Total Addressable Market (TAM) is predicted to be at $125B by 2022, and 57 percent of this will be driven by ISVs. Dynamics 365 and the Power Platform are an important area of investment for the company, and represent a significant growth opportunity for partners in this market.”

    Accelerating opportunities for ISVs with new programs and technology – Steven Guggenheimer

    Big numbers, but that’s what they always are in these grandiose statements about global market potential. What I need to understand when talking with customers, partners and internal stakeholders at our company about the strategic direction of Power Platform is from where specifically might this growth come from? To help these discussions I ended up drawing the following diagram about the four different dimensions where I see this Microsoft application platform strategy creating new business:

    The way I see it, the growth will happen both A) inside Microsoft’s product offering and B) the outside world of customers and partners, within 1) the traditional business process management scenarios as well as 2) those processes that you wouldn’t have tried solving with any CRM style application/platform in the past. Let’s dive into each of these areas and I’ll explain what the impact of Power Platform might be in generating new business to run on top of this new Microsoft aPaaS (Application Platform as a Service) foundation.

    1. Dynamics products

    Let’s start from the most familiar ground. The place where the most concrete changes resulting from the Power Platform strategy have been felt during the past year must be Dynamics 365, and the Customer Engagement apps specifically. The platform formerly known as XRM is in the process of being replaced by what is sometimes referred to as “PowerApps platform”, although that may not be any official term that would stick. Regardless of the marketing lingo, the customizers and developers of Dynamics 365 CE solutions are right now facing a lot of pressure to adopt brand new concepts and tools that will replace those ~10 year old building blocks that XRM solutions were made out of. Compared to the earlier transition from on-premises to Online products, that may well have been a much easier shift to adjust to than this new Power Platform whirlwind that’s moving everything around on its path, from licensing to UI to SDK.

    From the perspective of the internal Microsoft world, the Dynamics product teams have previously been somewhat captive of the CRM legacy that came along with the XRM platform. As a commercial software product, it wasn’t originally built to be a pure platform, rather the design choices and customer requirements drove it more towards being an extendable CRM application first and platform second. In the process of migrating Dynamics 365 CE Online to run on Azure services, the platform and the applications were separated from one another. To balance things off, there’s also been a huge unification process initiated with the client side technologies, where the target is to remove the barriers between Model-driven and Canvas apps, to Run One UI. The platform tools like PowerApps Component Framework (PCF) now give also the internal product teams a far more agile path forward in deciding what kind of features and experiences the specific apps like Sales or Customer Service should contain. What this means is that the stagnation period where everyone had to just wait for the new platform capabilities to become available may be coming to an end and in the next release waves we can expect a significant growth in new app functionality being shipped to Dynamics 365 customers. In other words, a growth in application depth.

    Alongside this internal platform development, another huge benefit that Dynamics 365 as a business has gotten from the new direction at Microsoft is the closer connection with the Azure teams. A few years ago there was still the MBS silo to keep up the walls between CRM & ERP business and the mainstream MS product business, which explained a lot why we didn’t see so much of the Azure innovation trickling down to the business applications built by the same corporation. Now the tables have truly turned as we’ve witnessed all of the new applications like Dynamics 365 for Marketing betting heavily on the very latest Azure services. AI is getting infused into every product at Microsoft, but it also gives birth to brand new products like Sales Insights or Virtual Agent for Customer Service. To link all this with the Power Platform story, it’s important to understand that this platform side is what eventually allows customers and partners to customize these new apps and services to meet their real life business requirements. The growth potential in this Dynamics products segment is being amplified by the fact that PowerApps, Flow, Power BI and CDS give it the extension points needed for going beyond packaged SaaS apps. The growth in Dynamics 365 app portfolio width is therefore driven by the Power Platform connectivity with Azure.

    2. Other Microsoft products

    While the merger of Dynamics 365 CE and PowerApps platforms is a great boost for the Dynamics products, that’s not the only area within Microsoft that is touched by the Power Platform strategy. Office 365 has of course been the biggest product display window for PowerApps and Flow, due to how services like SharePoint and OneDrive have been deeply integrated with these tools. There is a Microsoft 365 Business Applications partner program that interestingly enough doesn’t seem to align with the “actual” Microsoft Business Applications group’s activities at this moment, as it sits within a different organizational box, the Modern Workplace solution area. When you think about the origins of how the previous generation apps for information workers were often built on top of the ubiquitous SharePoint Server, this arrangement does make sense, but I wouldn’t expect these separate boxes to remain forever in place. After all, what’s been happening to PowerApps recently in terms of commercial success is “like SharePoint all over again” (according to Charles Lamanna), so all roads here lead to the Power Platform being the growth engine for Office 365 and Microsoft 365 to reach further into the customers’ information management needs.

    (more…)
  • 2 become 1 UI: PowerApps Roadmap from MBAS

    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.

    (more…)
  • Catching the Wave 2 for 2019 Power Platform Updates

    Catching the Wave 2 for 2019 Power Platform Updates

    Today, June 10th, at Microsoft Business Application Summit 2019 the release plan for the next wave of Dynamics 365 and Power Platform features was announced. It’s of course no surprise that this main event of the year for #MSBizApps would be used as the forum for showing what’s coming next. What kind of did surprise myself was that we actually are already at a point when the focus starts to move to the upcoming release, formerly known as October 2019 release. Wasn’t April 2019 just a few weeks ago? Where did all the time go? And when exactly were we supposed to have taught ourselves all about the current release features, let alone deploy them to real life customers?

    If I had to guess what people working professionally with MS Business Applications would list as their biggest challenge, I bet keeping up the product updates would be on the number one spot – if only for the simple reason that it’s a topic that touches everyone regardless of their role. The pace of change on the technology side isn’t going to slow down, but it’s the breadth of impact from these changes that has grown immensely. The biannual release cadence in itself isn’t anything new, since that’s how the cloud service has been updated from already the Dynamics CRM 2011 days. It’s just that we’re no longer operating within that familiar CRM box, thanks to what Dynamics 365 and Power Platform have become. So, the release waves hit the shore on their steady cadence, but instead of a fun little beach break wave to surf on it may start to look like a tsunami that you should run away from. It’s not, and you shouldn’t, but this can be a very natural reaction when presented with a 350 page release plan document to plough through.

    Lucky for us, this time there’s also a streamlined version of this document, focusing solely on the Power Platform side. If you’re a #PowerAddict like me then this is probably the more exciting part to start from. So, we’ll leave all the first party app goodies for later and have a look at where & how the platform is heading to.

    Release Terminology

    Microsoft has now changed their official terminology on how they speak about these releases for Business Applications products. Instead of the earlier names like October 2018 Release, April 2019 Release, we’re now going to get release waves. Yes, still 2 times a year, so what we’ve now seen a peek of is 2019 Release Wave 2. Nothing actually changed about the process itself, but since the updates covered in these releases are not meant to be delivered on a single date (or one specific month), the terminology is now much better aligned with the reality. 2019 Release Wave 2 will be hitting the shores from October 2019 to March 2020.

    The other tweak in terminology is that now instead of Release Notes we’re getting a Release Plan from the product teams. This is also a much more natural way to describe the intent of the documentation that goes with a release wave. It’s not the exact description of what has been shipped, like you would have seen on a piece of software distributed on a DVD. Rather it’s a near term roadmap of what will be built and delivered, if everything goes as planned. Instead of a static document the Release Plan (and actually the current Release Notes, too) is a living publication reflecting the current status. Have a look at the change history for the current April 2019 release to get an idea of how much things have moved around since V1 of the Release Notes.

    Finally, there’s an added piece of information for each of the items in the Release Plan, referring to the Early Access availability. This will indicate weather the feature will be available to try already on August 2nd. You can read about the latest release schedule and early access policy from this documentation page.

    AI Comes to Power Platform

    The biggest new announcement from 2019 Release Wave 2 is the arrival of the AI Builder. No, PowerApps didn’t become self-aware just yet, but it is nevertheless a major milestone to see the AI capabilities earlier provided via Azure Cognitive Services to now find their way into  the citizen developer world of Power Platform tools. While the data scientists and pro-devs out there probably won’t be resorting to AI Builder in their own projects, the total addressable market for Microsoft’s AI services has now grown significantly thanks to these entry level AI features available in the PowerApps maker portal.

    Is this something that all the PowerApps makes will immediately jump into using then? Probably not at first, since the use cases for machine learning technologies always rely on having a suitable data set to work on. Whereas with a Canvas app you can just start building the features, logic, data model and UI of an application before you’ve got the actual data to be used in it, in AI Builder you’re gonna need to start from the data. It’s going to be hard to fake this thing for a quick technology demo unless it’s tightly linked with a real life business scenario.

    Reaching the people who do have the data and understand its structure and meaning is where a product like AI Builder can undoubtedly lower the barrier for starting to experiment with AI. Just like the earlier PowerApps tools helped people become app makers without any formal training on the subject, why couldn’t something similar happen on the machine learning side, too? As a nice added bonus, coupling the AI Builder configuration and model data with CDS is will help in promoting it as the default storage place for structured business data.

    Features like Form Processing where you can train the machine to understand the contents of documents following a common template (like invoices) offer a way to further digitalize processes that can’t yet jump to 100% structured data interchange via modern APIs. You may not be able to force all your business partners or customers to jump into using the tools and data formats that would be most convenient for your internal processes, but could significantly reduce the need for manual data entry by taking a service like PowerApps AI Builder into use.

    (more…)
  • Why You Should Become a #PowerAddict

    Why You Should Become a #PowerAddict

    Recently I was tagged to do a “confession” in the #WeArePowerAddicts challenge, started by MVP Vivek Bavishi. There’s been a massive amount of support for this over on Twitter, where many of the finest members of the community are enforcing the message that is bringing all of us together. In this post I’ll cover three aspects that I find so intriguing with this movement that is forming around Microsoft Power Platform and why professionals with a Dynamics 365 Customer Engagement / XRM background should seriously consider getting involved with it.

    The Return of the Community

    Community was the biggest single reason why Dynamics CRM became such a defining part of my professional life, starting way back in 2005. Sure, I had already earlier enjoyed the business/marketing side of customer relationship management, but it wasn’t until I had to dive deep into a specific technology that I realized the massive value of an active, global user community. The growing blogosphere around Dynamics CRM and especially the social layer of #MSDynCRM Twitter on top of it first empowered me to turbocharge my own speed of learning, then later presented me a medium for expressing my own thoughts. And here we are now.

    Lately I’ve been having this feeling of premonition combined with dejavu. Like being special agent Dale Cooper, investigating the events that are taking place in a strange town in Pacific Northwest, far away from your normal surroundings, encountering The Giant in a dream sequence and being told that “it is happening again”. Only this time the Giant is Power Platform and the place isn’t Twin Peaks but rather Redmond. Big things are happening and it’s still difficult to see exactly how the story line will play out, but you just can’t wait to see what the next episode will reveal.

    The cast of this show isn’t just made up of Microsofties. Just like in Season 1 that brought us Dynamics CRM (and XRM), the biggest stars are actually the community members who keep you engaged with exploring the many wonders of this new world of Power Platform that Community Season 2 has introduced. They eagerly demonstrate their skills with the cloud toolkit of PowerApps, Flow, Power BI, CDS, Connectors, Azure services, in combination with the more familiar Office and Dynamics products, infecting you with their enthusiasm. Some would call them PowerAddicts.

    Be a Maker, Not a Customizer

    When implementing a CRM system based on Dynamics 365, you’re always more or less adjusting the functionality of an existing application to meet the specific needs of the customer’s business processes. The starting point is always the same, and the end result depends on how much budget you’ve got for customizing the OoB experience. In general, the CRM systems deployed for various different organizations resemble one another far more than you might have initially expected, considering the great amount of effort invested in the projects to build them. It’s not a bad thing – especially since many customization requirements may not end up delivering a positive ROI anyway.

    Switch from the preconfigured first party Dynamics 365 apps into the pure platform play of PowerApps and it’s a completely different ball game. PowerApps Canvas apps start with a blank canvas, just like the name suggests. There is nothing in the tool itself that would dictate how exactly your app is supposed to look like and what features it should contain. With this massive power comes a great deal of responsibility, as you truly are the maker of the application that needs to have a vision of what you’re building as well as the capabilities to make it all come alive.

    To come up with a vision of your own, the most important ingredient is exposure to the work of others. You need to see what the #PowerAddicts community has built, get inspired by it, and then take a shot at building something new from those pieces + the ideas and requirements that are unique to your project. You may well need to have a number of hobby projects, too, since delivering a made-to-order application without first practicing how to work with your tools is going to be tough. The concept of Maker Culture describes the community’s approach to Power Platform quite accurately:

    “Maker culture emphasizes learning-through-doing in a social environment. It emphasizes informal, networked, peer-led, and shared learning motivated by fun and self-fulfillment. Maker culture encourages novel applications of technologies, and the exploration of intersections between traditionally separate domains and ways of working.”


    Wikipedia

    Sure, it’s not like you didn’t need the forums and search engines as a basic survival kit in Dynamics 365 projects, too. That’s still more of a unidirectional way of using the community to get the job done, whereas how this new generation of Power Platform Makers seems to have an intrinsic motivation to build things together.

    Escape from Planet CRM

    Dynamics 365 as a product family is constantly evolving and the number of different applications in it is growing like never before. Despite of all these exciting new opportunities that the technology stack and Microsoft’s commercial offering seem to be opening up, in the everyday life of a consulting organization it’s still frighteningly easy to fall back into doing “just CRM”. What I mean by this is the process of repeatedly solving the same problems for different organizations, through pretty much the same methods as before, just with an updated version of the tools you’ve been using for years. While it may sound like a lucrative business area, in the long run such repeated problem solving via manual labor (i.e. burning your cognitive fuel reserves) really ought to be taken over by machines – be it an app, an “AI”, or simply an innovative, repeatable service offering delivered by a commercial machine instead of a project team.

    After 13 years of Dynamics CRM experience under my belt, I often find myself torn between the value of my accumulated knowledge and the burden that it imposes on me. I pretty much know in advance what challenges a customer will have with Dynamics 365 Customer Engagement when hearing about their expectations for a CRM system and how it should fit with their organization’s existing tools and practices. I’m painfully aware of the ever expanding solution areas I don’t know well enough to give the right answer immediately when presented with a specific problem. Sure, there are the many small victories to celebrate when I can use my prior knowledge to solve problems – be it a blog article by myself on the very topic, or the ability to quickly find the right link where someone else has presented the solution. Still, with the scope of work included in a typical CRM projects it feels like I’m at a saturation point where it’s no longer possible to gain new generalist skills without starting to lose my grip on the skills I’ve gained earlier. This is of course the point where a common sense advise would be to go specialize on a more narrow area to further advance your skills – but what if you just find the role of a generalist more fulfilling in the grand scheme of things?

    What Power Platform offers to people like me is a fresh new start. Here we have a toolkit that comes with zero hard dependencies on doing things the way they’re done in the CRM business. You can take PowerApps and build a solution to pretty much any business problem that revolves around improving the processes between the employees of an organization and the data sources they have access to (or should have). There are no assumptions here about the right way to solve such problems, unlike with CRM where you are in a way competing against the long legacy of prior systems, processes, best practices. It’s not a vacuum of course, as there are always alternative solutions out there.

    The important difference here is that the boundaries of your work are truly undefined at this moment. No one knows how far these things will go, but if you have faith in the competitiveness of Microsoft cloud and its ability to attract both the right kind of commercial players to form an ecosystem as well as those inspired professionals that build up the community around it (hello #PowerAddicts!) then you know it’s going to be far bigger than CRM ever could have reached.

    Power Platform allows the seasoned CRM professionals to return back to the role of a student. With new tools like PowerApps and Flow you are pretty much starting from scratch and you need to ramp up your skills in the same way as you might have done with MSCRM vX.0 back in the days. If you just can mentally position this work the right way and approach it primarily as a learning experience instead of a ToDo item in a project backlog, then OH MY GOD how much fun it is! Seriously, these tools can give a motivated citizen developer the kinds of superpowers that I couldn’t have even imagined just a couple of years ago. It ain’t all just marketing – it’s the real deal.

    Now’s Your Turn

    If what I’ve said here resonates with you and you’ve been hoping to find a way to get back into the game 100%, then you owe it to yourself to get truly involved with the Power Platform. Become an Addict.

  • Building The Platform for Every Developer

    Building The Platform for Every Developer

    For the first time ever at Microsoft Build conference, the Power Platform was presented right at the start of Satya’s keynote this year! Woo-hoo!

    Of course this time last year there wasn’t yet the name “Power Platform” to even reference at Build. We had only just seen the merger of XRM and PowerApps into something that was a bit of a puzzle to communicate to partners, let alone customers. Well, the puzzle hasn’t exactly been solved yet, but it is still quite remarkable how far we’ve come in one year already.

    Last year’s sessions at Build 2018 were mostly about introducing the concepts like Common Data Service to a .NET developer audience that probably had zero hands-on experience with any Dynamics product for the most part. Not a whole lot of noise was made about this entry into the #MSBuild space. Fast forward to 2019 and now the vision of uniting pro developers with “every developer” is already touted at the keynote sessions. Not just that, but Satya is saying that recent re-architecting of Dynamics 365 on top of Azure infrastructure and services should be examined as an excellent reference for anyone who’s planning to build their own products on SQL Azure.

    During the week of Build, the product team behind Citizen Application Platform (“CAP”) puts aside their Citizen caps and pulls on the pro dev hoodies to talk about topics like solution management, PCF component development, Azure Functions, DevOps pipelines and all the nerdy stuff that would scare away the folks who normally create PowerApps. It’s inevitable that as the tools for app makers get more mature the next barrier to world domination will be in getting not just the IT admins to build the necessary automation and governance around Power Platform in enterprise environments but also in finding a way to make pro-coders play with low-coders.

    If you look back at XRM, then there’s really nothing new about this division of roles. It has always been the case that code illiterate business analysts do the point & click configuration work for data models and business processes, while the XRM developers spend their time with the SDK enabled client-side extensions, server-side logic and system integration tasks. Fundamentally what the Power Platform does is it enables everyone to level up in their game. Application design on the UI level and interfaces to connected data sources can now be handled by those business analysts who are willing to learn new low-code tricks. Similarly, the developers get to break free from the boundaries of the IIS and SQL Server boxes, to harness the amazing power of The World’s Computer (Microsoft’s nickname for Azure) to hook into new AI services and crunch the contents of The Real Common Data Service.

    If the app builders are about to step up their game, so must the sales machine of Microsoft. The big push from Redmond is now on ensuring that an ecosystem will emerge on top of Power Platform. The new partner program for Business Application ISVs, lead by Steve Guggenheimer, is trying to make a bigger splash by combining the earlier models of Azure Marketplace and the Dynamics 365 focused AppSource into a single channel that could actually serve the grand vision of a no-cliffs development platform. As always, you should check out what The Other Steve has to say about the upsides to the new program, before making your conclusions on whether it’s just a new tax on ISVs or an opportunity worth pursuing for a growing number of MS partners.

    To summarize the announcements and buzz around Power Platform at Microsoft Build 2019 conference, I’ve compiled this handy lil’ Twitter Moment for you to enjoy: