The landscape of software development is ever shifting. As a professional software developer I’ve long since come to accept that as far as emerging technology is concerned, there are some words that a wise philosopher once said that I believe to be true; “I don’t know half of you half as well as I should like; and I like less than half of you half as well as you deserve”.
The Low-code and no-code paradigm
“Low-code and no-code development is often seen as the realm of citizen developers, but the segment of the enterprise where low-code and no-code has gained significant traction is among professional developers themselves.“
a report from ZDNet
Well when you’ve been in the industry long enough you learn what trends tend to stick and what trends need to remain in their area. I used to view python for example as a well-defined data science language. Yet it’s taught across university syllabuses and has been used to create some truly astonishing solutions outside of what I would have thought it’s original purpose would have been as a language. The same applies to Low-code or no-code development, when it first became publicly available I remember working on PowerApps and thinking; “this isn’t great”, I’ve nested 10 if statements because we couldn’t do single line data filters in the way that I would have naturally written it in my coding language of choice back in the day. At the time if asked whether or not I’d recommended it for businesses I’d have said that although it may be able to provide professional users with the ability to automate tasks, it would never be able to do anything at scale and solve those enterprise challenges. In my mind it wasn’t efficient enough.
Low-code and no-code (LCNC) frameworks have come an incredibly long way; these innovations have been tucked away amongst the steady progress of AI moving into the mainstream and access to big data tools now being readily available at a whim by anyone with relevant cloud access. There are a lot of accelerators available to developers in 2022. It’s understandable then that developers who find themselves developing in the cloud also end up being exposed to low-code and no-code resources as a genuine alternative to code-based implementations. More often than not we talk our-selves into the code-based approach; even though the accessibility trade-off of utilising low-code or no-code can often be a significant benefit to the business. We do this because we’re used to living and breathing a clean software development life-cycle (SDLC) with our code. An effective SDLC allows for developers to efficiently follow DevOps principles some of which include re-usability, continual integration, continual deployment, we’re used to storing solutions in GIT-based source control and having build pipelines, code reviews and gated deployments. Low-code and No-code don’t require these; at least not in the same way code-based solutions do.
LCNC frameworks provide a user-friendly interface that allows developers to easily create and deploy applications, without the need for a deep understanding of complex coding languages. They also come with built-in features such as reusability, integration, and deployment, making the development process more efficient and streamlined. Additionally, LCNC frameworks are often integrated with cloud technologies, providing developers with easy access to big data and AI tools. Overall, LCNC frameworks provide a valuable alternative to traditional code-based development and can be a significant benefit to businesses looking to streamline their operations.

One example of a business problem solved using Microsoft’s low-code solutions is a retail company that needed to improve their inventory management system. The company had a manual process for tracking inventory which was time-consuming and prone to errors. This resulted in stockouts, overstocking, and poor inventory visibility.
To solve this problem, the company used Microsoft PowerApps to create a low-code inventory management system. PowerApps allowed the company to easily create a custom app that could track inventory in real-time, provide alerts for low stock levels, and generate reports on inventory levels, sales, and other key metrics. The company also used Microsoft Power Automate (formerly Microsoft Flow) to automate the process of ordering new stock when inventory levels reached a certain threshold.
The low-code solution allowed the company to improve their inventory management, increase efficiency and reduce errors. The company was able to increase the accuracy of their inventory tracking, reduce stockouts, and improve visibility into inventory levels. Additionally, the solution was able to be created and deployed in a short amount of time with minimal technical expertise required.
Code-first solutions; are they still needed?
Code-first solutions are traditional development approaches where code is written to create and deploy applications. These solutions are still needed in certain situations, such as when creating complex and large-scale applications that require custom functionality or integration with other systems. Code-first solutions also offer more control and flexibility for developers, allowing them to fine-tune their applications to meet specific business needs.
One example of a business that uses code-first solutions with Microsoft Azure technologies and .NET is a financial services company that needed to create a highly secure and compliant trading platform. The company used Azure Virtual Machines to deploy a .NET-based application that could handle large volumes of transactions and handle the necessary security and compliance requirements. The application was built using a code-first approach, which allowed the company to create custom functionality, such as real-time trading, and integrate with other systems, such as market data feeds.
Code-first solutions are still crucial for businesses that require complex and large-scale applications, or when more control and flexibility is required to meet specific business needs. The use of Azure technologies and .NET allows for the creation of robust and secure applications that can handle large amounts of data and transactions, while also providing the necessary compliance and security requirements.
In conclusion, low-code and no-code solutions have come a long way and have proven to be valuable tools for developers, providing a user-friendly interface that allows for easy automation and streamlined development. However, it’s important to remember that code-first solutions are still needed in certain situations, especially when creating complex and large-scale applications.
As cloud native developers, we have seen the rise of these low-code solutions and it’s easy to get caught up in the hype, but remember, just like choosing the right outfit for a fancy event, choosing the right development approach is also important. We should be mindful of the right tool for the right job.
In a way, low-code and no-code solutions are like the sweatpants of the developer world, they may not be the most glamorous, but they certainly get the job done and make our lives easier. But, just like sweatpants, code-first solutions are still needed for those fancy events, where we need to look sharp and make sure everything is just right.
So, let’s embrace the rise of low-code and no-code solutions, but also remember to keep our code-first solutions close at hand, because you never know when you might need to put on a suit and tie.