Microsoft introduced new licensing plans for its PowerApps platform at the Inspire partner conference this week to accommodate the increasing capabilities available.
Microsoft's PowerApps is growing apace, certainly in terms of the effort the company is putting into extending it. It is one of three components in what the company calls the Power Platform, the other two being Power BI for data visualisation and Microsoft Flow, for automating workflows. These applications take advantage of the huge amounts of business data companies put onto Office 365, sometimes supplemented by use of Dynamics 365, to enable no-code or low-code applications based on that data. Users log into the apps using Azure Active Directory, also used by Office 365.
CEO Satya Nadella bigged up the platform in the keynote at the Inspire partner conference this week in Las Vegas. Speaking of the huge number of business applications that will be required in the coming years, he said: "We are just not going to have professional developers to build these applications. We need citizen developers." The solution? "You can be able to take any domain expert inside your organisation and build out applications... Empowering citizen developers is what the PowerApp platform has been built for."
Meet Martin Lee, PowerApps software developer from Autoglass in Bedford. "I started as dispatcher," he told Inspire via a promotional video. "I had to do all these reports every day and it was time consuming. I started building an app and it was really great." Lee built a Technician Vehicle Check app to replace a paper form. "Technicians love it," he said. "People just kept coming to me to build these apps. Now I'm going into IT. I've built about 40 apps deployed in the company."
This places PowerApps as the spiritual successor to Visual Basic, which was key to the success of Windows back in the '90s, along with Access and its version of Visual Basic. Users were able to construct business applications without learning C++ and with a visual form builder, increasing the quantity (though perhaps not the quality) of custom applications.
We cannot help feeling though that Microsoft's pricing options for PowerApps may put off some categories of citizen developer, particularly after changes announced at Inspire this week.
You will not be surprised to learn that licensing PowerApps is complex. And do not rely on the summaries below: production licensing has many wrinkles so check the full details from Microsoft or one of its resellers.
In the current scheme of things, there are a couple of routes you can take. First, you get a limited licence if you are an Office 365 user (applies to most but not all plans). You can access Office 365 data and connect to cloud services using "standard connectors", letting you read and write data from hundreds of third-party services including Google services, Dropbox, LinkedIn and Twilio. However, you cannot use "premium connectors", which include Eventbrite, GoToMeeting, Jira, MySQL and Salesforce. Nor can you use custom connectors or access on-premises data.
If you go beyond the limits of Office 365, or are not licensed for it, you can use either Plan 1 ($7.00 per user/month) or Plan 2 ($40 per user/month). Plan 2 enables model-driven apps in addition to the form-based canvas apps. Plan 2 is also needed if you want to use custom code plug-ins and get full usage of the Common Data Service: data in Office 365 and Dynamics 365 accessed as entities and combined with business rules and workflows.
Dynamics 365 users also get PowerApps thrown in, though only select Enterprise plans get the equivalent of Plan 2.
In October 2019, Microsoft is introducing a new scheme for users.
Microsoft, which loves to have a maze of twisty little passages within its licensing rules, defines an "app" differently from most of us. "Each app can include 1 PowerApps Portal and up to 2 custom apps, model driven and/or canvas," said the slide presented at Inspire by Microsoft's Ganga Ramesh and Yvonne Haarloev. The duo presented a session on "Microsoft Power Platform business model and licensing updates".
The current Office 365 or Dynamics 365 route will continue, but the terms for premium licenses are changing.
Licensing an app will cost $10 per user/month, with a minimum of 30 licenses per apps.
Alternatively, you can still licence per user at $40 per user/month, allowing unlimited applications.
So far, not too bad; but you will pay more if you want to use the latest PowerApps features. AI Builder, which lets you build and run AI models for things like image recognition entirely through drag and drop, will cost you $500 per month per "capacity license". Exact details are not available, but there will be a calculator "based on anticipated usage of various AI Builder services".
PowerApps Portals, which let you build web applications for external users, will cost $200 per month per 100 logins. If your portal does not require a login, you can pay $100 per month per 100,000 page views.
Similarly, if you exceed a limit of API requests for PowerApps, you can purchase one or more units of 10,000 additional daily API requests for $50 per month.
It is likely no coincidence that October 2019 is also the release date for PowerApps "wave 2", the second update this year. There is a ton of new stuff, as evidenced by the 142-page document Microsoft has published to describe it.
Among the highlights are:
Custom applications have enormous ability to increase productivity, just as Martin from Autoglass discovered. Microsoft, which tried for years to find a way of bringing low-code applications to its cloud platform, does seem to have hit upon something that works in its Power Platform. AI Builder is impressive as a fully automated approach to building and running AI models.
The downside is that once you start relying on custom applications built on a proprietary platform, you are vulnerable to licensing changes that alter the value proposition. Microsoft's tendency here to make major new features into separate purchasable add-ons is something that should give even the most enthusiastic citizen developer pause for thought. ®