Microsoft’s Power Pages: Easy web building, or an abstraction too far?

Microsoft introduced the ambitious Power Pages, among other new features for its low-code Power Platform, at its virtual Build event this week.

Power Pages is an evolution of what was previously Power Apps portals, but is now a standalone product. Simply put, it is a web application builder intended for internal or public-facing web sites and designed to be accessible to business users as well as developers.

The sites built run on Azure, and data is stored in Dataverse, a database platform built primarily on Azure SQL but with additional abstractions and features that make it work well with low-code builders.

Power Pages use Microsoft’s Dataverse to store data

Along with Power Pages, the company unveiled Power Apps express design, which creates applications from input including images and Figma design files, a new authoring canvas for Power Virtual Agents and Azure Bot Framework, and hosted Robotic Process Automation (RPA) bots for scaling Power Automate, a workflow engine.

Power Pages is in preview, but has the bold ambition of being both easy for users new to web applications and powerful and flexible enough for professional developers. Users can select from templates to get started, though with just a couple on offer at this stage. Although a web-based visual builder is prominent, pages can also be edited as text either in the browser or using tools such as Visual Studio Code, and with source code management in GitHub. Advanced features include the ability to use an additional firewall such as Azure Front Door, and Azure Content Delivery Network.

We had a quick look at Power Pages and it is exactly what seasoned users of Power Platform would expect: some features are easy to use while others lead the user into intricate complexities that can be hard to unravel.

In our case we set about transforming a template for registering for after school classes into one for IT courses. Everything went fine to start with, with a neat touch being a QR code that enabled easy preview of the site on a smartphone, where it was scaled nicely to the small form factor. We hit a roadblock though trying to modify a component displaying course categories, which informed us that “this advanced component must be edited in the portal management app.”

Heading over to the portal management app, it was not obvious where to find the component in question.

The ease of use gloss breaks when certain actions require heading deeper into the platform

The advantage of Power Pages is not only the appeal of low code, but also that it integrates well with Microsoft’s cloud platform, including Azure Active Directory, SharePoint, Teams and more. That is attractive to administrators who can easily manage security, and more manageable than having users create sites on WordPress, for example, out of frustration with the difficulty or delay in having hard-pressed IT departments assist them.

That said, the fundamental issue with low code is that it works by providing a high-level abstraction which can create as many problems as it solves. This thoughtful post by a developer about Dataverse makes the point: “Dataverse has many ‘enhancements’ to make it easier for a novice to build a database, but break good normalisation and data-modelling practice and so just store up problems for later – e.g. Multivalue fields, Many-Many relationships and Polymorphic relationships.”

A strong feature of Power Pages though is the ability to edit pages as text in a programmer’s editor. Once developers start working with parts of the platform such as Liquid templates, a template language for dynamic content that was also part of Power Apps Portal, it starts looking more like just another web application framework – perhaps frustrating for low-coders hoping to achieve everything via drag and drop, but a relief to developers accustomed to working with code.