DEV Community

Cover image for Did Citizen Development Fail on the Power Platform
david wyatt
david wyatt Subscriber

Posted on • Edited on

Did Citizen Development Fail on the Power Platform

Of course it didn't, in my opinion its the best Citizen Developer Platform, but hear me out. I think Microsoft's original vision for the Power Platform has changed, and for the better.

I surveyed my LinkedIn community a little while back and 63% thought the Power Platform was more like Excel and Access then React or SQL. That's a lot closer than I thought it would be.

poll

When the Power Platform started it had 2 key areas, Power Apps and Flow (Power Automate), sorry Power BI you know you are in the platform in name only 😎.

Power Apps in particular was heavily pushed as 'Evolution of Excel'. Excel with the help of VBA became the backbone of shadow IT (the original Citizen Developers). Every organisation, no matter the size, relied on the ingenuity of selected employees to spin up IT solutions in Excel (or Access). I've heard multiple story's of an Excel Spreadsheet with VBA costing millions for an IT team to replace.

Microsoft had a big issue, the move to the cloud. Copying Googles App Scripts with Office Scripts was never going to cut it, you could do so much more with VBA. And that's where Power Apps came from, they had Dynamics and built out a low code version. So the Power Platform was their Citizen Developer tool:

  • PowerFX - Excel expression based language
  • All license are makers, just like Excel if you use it then you can build on it
  • Default environment means that everyone with a licence has somewhere to make something

power fx like excel

It was a brilliant idea, with Power Apps and Power Automate shadow IT could pretty much replicate VBA functionality, with the benefit of it being fully automated, and a licence model. The license was often given away free/heavily discounted to get the ball rolling, and a fantastic community sprang up.

Users could create something in hours, deploy themselves and share across the company, just like a Excel workbook. There was no need for ALM, components were not designed to be easily moved (not solution aware back then), and it all ran off you and your users credentials (connections). That meant no need for spn's, segregation of duty, change control etc, just like Excel. They didn't even have platform analytics for the admins, want to see what a flow did, you had to share the flow directly with you (from a terrible screen that loaded 20 flows at a time, with no delegated querying. I still have nightmares of trying to find a flow in the thousands within my default).

So why do I think it failed, sounds like a success (and it was for a long time), well that's because it hit a ceiling. For small to medium companies this was brilliant, small amount of users could be managed and it helped stretch IT budgets. But for large organisations this would not do. IT teams hate Excel, imagine an unexpected million dollar project because someone left and no one can run their VBA. Having no visibility of what's going on drove security mad, if the genie wasn't out of the bag they would disable all macros and be done with it (some companies even did).

They could see quite quickly Power Platform would be Excel on steroids. Running without observation, one maker could have hundreds of flows, they could share a app and then have access to the users Outlook/OneDrive/SharePoint/Teams. Add in Power Automate is so much easier to use then VBA, literally anyone could build a flow that adds massive business value (it's why it's so good!).
And just like Excel if they left then they would be on the hook to fix it and maintain it.

So they started saying no, turning it off, locking the DLP policy down, and Microsoft realised they needed to change.

Again don't believe me, just look at the changes:

  • Fundamental architecture change to solutions and Dataverse storage
  • Improved DLP granularity
  • Pipelines
  • Tenant admin reporting
  • Managed Environments
  • Key vault integration
  • SPN owned actions

managed environments

All this investment was for a reason, they wanted mass adoption in the big Fortune 500 companies (it's easy to say 'X' are using it, but how many pay for price and have it as a pillar of their IT strategy).

So now your Excel users is expected to understand ALM, export and import to new environments. The pace of updates is at the point where if you are not 100% focused you won't be able to keep up. Admins can enforce sharing limits to make critical solutions go through Intake and other IT review processes. So these days the Excel user has to build a business case, build system diagram, get security approval, complete code review. And every time there is a bug they have to fix in dev, deploy and test, then get change approval.

Suddenly this isn't Excel, it's React/Angular.

And for me this is exactly right, LowCode shouldn't be just thought of empowering none IT people to make IT solutions, but making IT people more productive. If LowCode was in the building industry it would be a version of Lego, suddenly anyone can click bricks together. But building a house isn't just the skills of a bricklayer/plumber/election. You still need a architect to design it, civil engineer to make sure it's built to last, and a building inspector to make sure it's built to standards. You also need planning permission, register it with Electricity/Water/Gas companies, you even have to register with postal services so you get your mail.

IT apps are exactly the same, from registering it with any other platforms you consume/update (so that they can let you know if they are doing any changes), to informing support desk so tickets are sent to you.

The Power Platform is so powerful, at its most basic is Dynamics with logic Apps. That's an industry standard CRM tool and one of the most used workflow tools in the world. It shouldn't just be used for a form to gather who's attending the next Christmas party and send out reminder emails. You can build full scale business solutions, hell with the right integrations and Azure magic you can replace nearly any out of the box product.

If I had a vision for the Power Platform it wouldn't be Excel, with thousands of people with little to no idea making pointless apps and automations it would be a federated fusion model. Each IT domain would have its own Power Platform team, they could provide solutions for themselves and any business domain linked to them. They could bid against any tender with the added benefits of a bespoke solutions, no compromise, cheaper, and beholden to the leadership like no external company would be. The team would have all the IT experience, connections and governance but with the added benefits of spinning up solutions magnitudes quicker. The IT department don't have to worry about infrastructure or authentication, that's all out of the box. And just to add icing on the cake, there is a robust workforce out there to recruit from when needed.

Don't know about you but sounds like every IT departments dream could come, all from their worst nightmare, and that might just be Microsoft's new vision too.

Top comments (7)

Collapse
 
balagmadhu profile image
Bala Madhusoodhanan

I hope the AI builder utilisation report is part of the Lic report that is planned ahead

Collapse
 
patrick_kitchell_f40868cf profile image
Patrick kitchell

Citizen development is what died - PP admin and tools are too cumbersome and mandatory to run a sound enterprise ship. When the extra work from the CoE toolkit hits the already overwhelmed IT for do “citizen development” than it becomes a cost to value game in a microscope.

All this extra work to do Powerapps safely is a huge hill to climb for many organisations and not to forget that MS seeds PP everywhere trying catch users

Collapse
 
1301950 profile image
1301950

i think this article knocks the nail on the head about citizen development. what you said about if buildings were done with no code everywhere, everywhere will look like lego blocks. that's where architects, engineers and building "codes" come into play.

it's great that it looks more like excel/access instead of angular, all it means is that anyone can do it. but i think we all know, enterprise solution is much more than just "doing it". There's a reason why there are devops, sdlc, agile, etc. they are there to address accountability, visibility, and manageability. just because it can be done, doesn't mean it should. There are processes, the control the changes that go into prod. there are tickets that go into why it's done. That's one of the critical lesson that any junior developer needs to learn. If anyone can do anything to prod, there would be no accountability. It's great that the cost of implementation would be so much cheaper because you don't need to hire a senior c# developer to do something, but there's the process part of it that citizen developer needs to follow in order for a skyscraper to not topple.

Collapse
 
wyattdave profile image
david wyatt

"just because it can de done, doesn't mean it should", truer words have never been spoken.

Collapse
 
scottzhaka profile image
Scott Collins

Question on what you said:

"Admins can enforce sharing limits to make critical solutions go through Intake and other IT review processes."

Have you found a way to enforce this on flows? We have found that makers can share a flow even in a managed environment with sharing limits. The limits only apply to Power Apps. Microsoft seemed to confirm that there is no way to limit when we put in a ticket with them.

Collapse
 
kallom profile image
Miklós Kálló

"imagine an unexpected million dollar project because someone left and no one can run their VBA"

When I imagine it, it also brings up an image of someone, who wrote a code in VBA in his working hours, that's apparently worth a million dollars and the IT department let it go waste.

Collapse
 
simon_owen_e3bc33fa76dbb5 profile image
Simon Owen

What if I told you there was another way? 😁

Your post reads like there's can only be one way to implement, use, and govern Power Platform and it can only fit Cit Devs OR IT Devs... I don't see it that way. We can have it all!

Using your house analogy... Not everything is a house.
If we think about the core outcome being 'Protect some people, and their things, from weather.' we can then apply other scenarios which might change the solution....

  • Small number of people, for a couple of days, with reasonable weather, travelling light, low risk location..... perhaps the answer is a tent?
  • 50 of us... perhaps it's an apartment block?
  • 8 of us at sea it might be a boat?
  • 2 - 8, longer term, it might be a well architected house, with reliable utilities...

I do the same with Power Platform - Identify all the value that could be enabled (solution value, people value, organisation value, IT value) at different levels of complexity, scale, and risk... and design a scalable governance model around it so we can get ALL the value for EVERYONE. Otherwise we're restricting the impact that can be had and lowering our ROI.

This explains more
empoweryour.world/blog/scalable-go...