PowerApps Rocks!

Musings of a Former Citizen Dev

Low-code tools are wonderful things. Specifically Microsoft's low-code app development platform, PowerApps. I love how empowering it feels to code up some requirements right in front of my customers. I love hitting Publish and watching their face light up when their app appears on their iPhone! I really like the community of people that come together around it to learn and share.

Beyond the tool itself, there is a higher level appreciation I've developed for PowerApps. My poetic side would say:

"The PowerPlatform has provided me an on-ramp to anywhere."

Sounds pretty fanboy, no? Let me elaborate. I started my current career (2001) literally digging ditches. Yep. A software engineer, in disguise, digging ditches. Rain, muck, hail, heat, all of it. Heave!, Ho! Dig dig dig. A couple years of this, I graduated to Laborer (2003), a couple more, on to Maintenance (2005), a decade more and landed in Training (2015). Training people is actually a great love of mine. I enjoy giving structure to concepts and guiding newbs through. It was as a Technical Trainer where I began interfacing with the IT Dept. They challenged me with rolling out a monster they had created, I dived into UAT, capturing user feedback, reporting bugs, providing support and training a largely non-technical user base (of ~1000 folks) how to use the app that IT had built.

Looking back, this was actually a great way to be introduced to IT. I didn't start with a degree. I didn't start with mean computer skills. I started with the users, by understanding their needs and empathizing with their pains and frustrations. My position also allowed me to peek under the sheets and see the app's backend, hear rumor of its budget, and marvel at the amount of resources needed to sustain it... good God! My skin in the game was rollout. Get the app adopted, asap. And thats what I did, successfully.

Fast forward a few years, an IT Management Degree later, and I found myself with a seat at the table. I also found out how hampered-by-lack-of-tools everyone felt. "We need form X for people to capture data Y from the field."

Options at the time:

  • Get some on-prem server space
  • Get an on-prem database and tables
  • Write a custom CGI script
  • Craft up some HTML and CSS (no JS allowed)
  • Serve it within the company network
  • Forgettaboutit if the form had to pull in data and prepopulate fields, etc.
  • "Branching logic!?! Seriously!?!? What do I look like a wizard?"
  • "You want it on mobile?!? HA!!! We don't do mobile."
  • "Data viz? Ha!...ha!...HA HAHAHAHHH!"

Even before any of that runaround, you had to get "approvals". Get everyone on the same sheet of music. Meet with the DBA, the sys admin, the security lady, the network team and try to explain to them you..just..need..a..form.

Nothing really ever got built. LOTS of POC's. Lots of talking and planning, a couple coding classes trying to figure out how the heck to pull an app together in such an environment. But in the end, a spreadsheet, emailed around, leaving trails of data everywhere. Trying to be something more.

Then one day in 2018 someone introduced me to PowerApps

And... it changed my life. Seriously. All of a sudden, I had the key to unlock the vault. I had the first V8. I weilded something actionable! And I just tore into it! Skkkkeerrrrrrtttt!!! Learning everything I could ALL DAY. At work, personal time at home, I spun up my own personal tenant and my own Azure subscription so I could try all the premium stuff with no barriers. I joined the PowerApps community. I. Went. Deep.

Guess what I found when I was swimming around... everything. Every tool and process that my org was struggling with; databases, API's, storage, UI's, CI/CD, hosting, all access, no gatekeepers. I was free to experiment, test, try, poke, connect, crash, fail, and crash again! I spent an entire year (easy, maybe 18 months) on-boarding myself into all these domains that would have never been available to me if I was stuck in old tooling.

I learned SQL and relational databases because I wanted to write data from a PowerApp. I learned about JSON because I had a Custom Connector to dabble with. I learned about API's because I wanted to pull 3rd party data into a PowerApp. I learned about SVG's because of how powerful they are as UI elements in PowerApps. I learned basic concepts of programming (variables, loops, etc.) from the PowerApps low-code syntax.

After a few years of accellerated exposure and meaningful experimentation, I find myself with a "Software Engineer" title pushing Python Azure Functions to PROD on a Friday :). Quite a path, no?! Much of it attributed to the unlocked potential this toolset exposes.

The moral of the story: PowerApps is an up-skilling tool that you can leverage as an on-ramp to anywhere. Go get it!!

Related posts