Will Holland is a Principal Software Engineer at ThreeWill. Will has proven to be adept at understanding a client’s needs and matching them with the appropriate solution. Recently he’s developed a passion for working with .NET, MVC, and cloud-based solutions such as Microsoft Azure and Microsoft 365.
Low-code/No-code solutions created quite a bit of buzz in my world, buzz certainly helped along by pushes made by Microsoft marketing and them coining the phrase “Citizen Developer”. After having explored and experimented with the Power Platform, I’ve seen how it can be used to accelerate creation of business solutions by empowering end-users to “self solution”.
I’ve also seen enough DIYers get themselves in trouble that I sometimes feel like Mike Holmes, an overalls-wearing HGTV personality who specializes in rescuing homeowners whose DIY attempts have turned sour.
5 Considerations Before Becoming a Citizen Developer
If you’re planning for a new app your users need and you can’t decide if you should go the DIY route with a low/no-code solution or if you should hire a professional developer, I’ve shared the five things I ask my clients to consider that may help you in your decision making process.
Your needs are simple and straightforward
Back in 2020, when the whole world was entering the COVID pandemic, traceability became the word of the times, and organizations quickly recognized that they needed a way to know who was coming and going from their offices…and we started getting calls for help from our clients.
The requirements weren’t complicated. They needed a form for people to fill out as they entered the premises to answer a handful of questions that we’re all familiar with by now:
- Have you traveled outside of the US?
- Do you have a fever?
- Have you been in contact with someone with COVID-19?
Users filled out the form, submitted their responses, and the entry was stored for record-keeping. The fanciest that any of our clients got was to give users an “Access Granted/Denied” screen depending on the user’s answers.
Low-code/No-code solutions, like Power Apps or Microsoft Forms, absolutely shine in these single-purpose scenarios and virtually anyone can spend a few hours experimenting with these tools and produce a workable solution.
That’s not to say that Low/No code solutions can’t handle complicated or feature-rich requirements. I recently helped create a full-featured solution for a tax accounting group using nothing but the Power Platform with multiple screens, forms, tabbed interfaces, and even Excel-like editable data tables. However, the more complicated your app becomes, the more having a professional developer starts to make sense.
You need it fast
There’s an old saying “You can have it fast, cheap, or good. Pick one.” Tools like the Power Platform make it (theoretically) possible to achieve all three, but there’s no doubt that it’s MUCH quicker to get a minimal viable product (MVP) up and running compared to traditional start-from-scratch development methods.
If you think of development building with LEGO’s, a “No Code” solution would be like assembling a pre-packaged step-by-step set, a “Low Code” solution would be the box of random LEGO pieces and your imagination, and a traditional solution would be like manufacturing the actual bricks before you get to build the car.
You’re trading flexibility for raw speed. The less code you need, the quicker you get to an MVP, but you’re limited to the predefined “bricks” that are given to you.
If the “look and feel” of your application is a distant second compared to a quick MVP, going the DIY route may make sense. However, like LEGO, a master builder can build “better and faster” than a novice; so if you need speed without sacrificing your user experience, calling in a professional could help.
Your need is temporary
I’ll refer back to the COVID-19 facility access app I mentioned in the first section. COVID-19 will (hopefully) one day be a thing of the past and, when it does, this app will no longer be needed.
In the past, this situation was either handled with an analog solution (aka Pen & Paper), or organizations had to sink time and capital into an application that was going to be useless after a set amount of time. Either users were forced to deal with inefficient solutions or an organization was forced was fork out cash with little hope of seeing a return-on-investment.
Whether you’re creating an app in response to a global pandemic or if you’re looking to create a temporary solution while a permanent one is in the works, low/no-code solutions have carved out a nice little niche in what I like to call the “disposable app” space.
If you need a “throwaway” application to meet a temporary demand, then building a low/no-code solution makes a ton of sense.
You ARE the support
I’ve worked with clients of all shapes and sizes. While larger organizations typically have a rather large IT organization and may even have in-house developers, most have a smaller IT department that is mostly made of support specialists. If you work for a small business, you might even be the entirety of the IT organization simply because your co-workers say you’re “good with computers”.
If that sounds like your organization, and you’ll be the one supporting the application, then going with a low/no-code solution is certainly going to make some sense. Most platforms are what we call WYSIWYG (pronounced WIZZY WIG), or “What You See Is What You Get”, and the development experience can be as simple as dragging and dropping controls (like dropdowns or text boxes) onto a screen where you want them.
Unless you’re a developer or have access to developers, you’ll have a much easier time fixing/updating a low-code application compared to a traditional coded application.
If you can correctly answer the question “How do you push a commit to a git repo?” (without Google) chances are you’re probably capable of supporting anything. Otherwise, consider a low code solution.
You want an app that’s everywhere
One of the beautiful things about PowerApps (and the other tools in the Power Platform) is that they can be surfaced and used on any number of devices, often with little to no changes. A single canvas Power App can be created that works in your web browser, your smartphone, and your tablet. They can also be embedded in Microsoft Teams, SharePoint, and a few other places as well with no significant effort.
A full-code solution can do this as well, of course, but it has to be designed and coded. Speaking from first-hand experience, developing a solution that has to target multiple devices is a real challenge, and that challenge is almost completely done away with by using PowerApps.
If you’re looking to build an app that works on mobile devices, especially if you’re already on the M365 platform, a low-code solution can remove a lot of technical challenges associated with doing such.
If you’ve made it through these fives points, you should have a pretty good feeling about whether or not you can go the DIY route or if you’d end up needing to call for some expert help. If at some point, you do decide you need some help, I and my fellow ThreeWill-ers would be thrilled to talk with you to understand your challenge and help guide you to a workable solution.