Microsoft announced today, 5/26/2021, more features are being released to the Power Platform focused on no-code/low-code development. You can read the details here and here. While some of the features are exciting, there are some other features that bring up some questions on where Microsoft is going. This article is from a developer/engineer perspective.
Features to be excited about
Power FX in Model Driven Apps
Programming By Example
Programming by examples (PBE) is a new frontier in AI that enables users to create scripts from input-output examples.
This new feature will allow entering an example string of data and returning the proposed formula to use to achieve the desired result. This is a wonderful way to onboard citizen devs and professional devs into Power Apps. Not only that, but it can also save significant time composing complicated string manipulation formulas or trying to build the correct regular expression. The example used in the article previously linked takes a first name and last name initial from two fields, First Name and Last Name. By simply typing the example, the AI will suggest the formula to achieve the result. This is easy to embrace as it creates efficiencies.
Concerns and Skepticism
Natural Language development, will it work?
Many of these new features are backed by integrating with OpenAI's GPT-3 language prediction model to allow natural language "development". One of the features describes the ability to simply tell the app what you want to do, and it will generate the formula for you. While this sounds revolutionary, this similar natural language processing is utilized by the Q&A feature in Power BI yet not quite feeling like "natural language". It is pretty clunky even after training the model well. An end user truly cannot use their "natural" language as they need to ask the question in a specific way for any meaningful results to return. I am highly skeptical of this feature yielding anything but frustrated end users after they try to use it and their formulas do not work. With that said, I am sure over time it will be refined and provide value...just when will that be? This also leads to my next question, if natural language can build formulas, where does that leave devs, both citizen and professional?
Is Microsoft trying to get rid of its partner network and developers all together?
While reading over and over again that the answer to the above question is NO, the language Microsoft uses in its own blog posts contradicts this notion. Take the below for an example, a snippet from one of the newly released blog posts on Power BI AI features:
Automatic aggregations in Power BI will enable all Power BI Premium customers to benefit from the performance acceleration that Power BI provides, without having to invest in expensive and time-consuming data engineering resources.
The statement "without having to invest in expensive and time-consuming data engineering resources" should certain be concerning to data professionals. If Microsoft is truly not on a quest to replace developers with AI, how does one explain this statement? Reading between the lines, its states that enterprises can higher less data professionals because the AI and machine learning models will do it all for them. As a professional in the IT industry, this is concerning for me. This is not "empowering" end users or "aiding" developers. It is a direct statement saying that these resources are inefficient, costly so they should be removed.
The productivity enhancements that AI and no-code/low-code can provide are both exciting and concerning. What does this mean for the future of development? Is Microsoft trying to get rid of business application developers as we know them? Looking forward to what comes next.