Cheat: "Kicking but not for long..."
As Microsoft partners, Resonate IT have been aware for quite some time that the lifespan of InfoPath was finite. Microsoft made clear their intent to discontinue the InfoPath toolsets and initiated attempt to develop alternatives, these have stumbled but a recent release suggests that a staggered path will emerge. Two complimentary product streams, namely Flow and PowerApps will take the mantle. Neither are yet functional enough to provide a direct replacement with PowerApps specifically needing significant enhancements. However, with InfoPath supported for the next 6 years the current feeling is that this will evolve significantly during that time.
The following research gives some interesting insight into the current capabilities of the two products. Thanks to Cameron for his diligent research!
Microsoft Flow is an expansion upon the existing workflow systems that can be found in SharePoint. It allows the user to set up workflows across a number of platforms and systems including (but not limited to) SharePoint, Email, Facebook, Dropbox, and Calendars. Examples of how flows could be used include:
Flow integration allows for the addition of branching behaviours and actions based on inputs. These include things like adding to a SharePoint list on button presses or notifications and emails when specified actions take place. The short time I spent investigating Flow showed that while there are certainly limitations regarding the connected services, by default it covers a large range of actions including monitoring and managing a number of social media platforms, as well as the tracking and sending of emails. With the inclusion of custom API support a large number of currently missing platform and action support should be able to be filled in without too much difficulty.
In conjunction with Microsoft Flow, PowerApps is Microsoft’s answer to the need for simplistic and immediate development of data driven applications. The primary use of PowerApps is taking a list (SharePoint List, Excel File, etc.) and then building an application which will allow users to navigate, view, modify, and add to its records. Through the use of Flow and custom APIs, this base functionality can be greatly expanded upon, allowing for much more complex interactions with the data including passing it through to other platforms, and updating it based on otherwise unrelated tables changing.
Tutorials and Documentation
PowerApps provides a number of tutorials and references going over the creation, customisation, and management of applications. Without delving too far into it there seems to be a pretty comprehensive list of resources available including a number of videos accompanying tutorials as well as full lists of supported formulas and element property controls.
Custom API Support
While Flow doesn’t have any direct method of adding custom APIs, PowerApps does. When creating a Flow that uses a PowerApp linked up to a custom API, the Flow will have access to the same methods the API provides. The main requirements for using a custom API is to have a Swagger file, created from the API endpoint, and an icon which can be any image. At the moment each PowerApps account can have a maximum of five custom APIs to use between applications. These can however, be shared which doesn’t count towards the maximum number for the recipient.
Sharing a PowerApp
The only requirement when sharing a PowerApp is that all the recipients have the PowerApps app installed on their device. Once a PowerApp is ready to be sent out it’s as simple as adding all of the users to the share list and they will all be able to download it from the PowerApps app.
There are a number of things that are holding PowerApps back and while in most cases they are being actively addressed and updated upon regularly, until completely resolved they should be considered before beginning any project in PowerApps. These include:
Though the simplicity and rapidity of application development though PowerApps is their primary selling point, I honestly see much more value in Flow on its own. PowerApps is really good at showing off a single data source, but at this stage it seems like that's about as far as it gets. An awkward balancing act arises as with each increase to the complexity on the user side, a correlating exponential increase for the developer takes pace. As PowerApps is developed further the majority of these issues should be fixed but until that time, with the exception of incredibly simple applications I personally wouldn't go there...yet.