Managing Change in the Rapidly Evolving World of Code
Managing Change in the Rapidly Evolving World of Code
Low code is a-coming'. But never fear! Take a look at the role you will play as a developer in a low-code, solution-filled future.
Join the DZone community and get the full member experience.Join For Free
In 2018, it's more than likely you work for one of the 88 percent of companies using or planning to use low-code application development platforms in the next year . As a development manager, you are thinking about the benefits low-code brings to bear: greater agility from shorter development cycles, increased productivity enabling you to shift resources to more strategic and innovative initiatives and transforming the business into active participants in the application development lifecycle.
The downside is many of your developers are freaking out. They look at low-code and think their coding experience isn't valued by their bosses, model-driven visual development is over-simplified and can't handle anything beyond simple forms applications, or their jobs are at risk because the company will transition to business analysts building apps without code. How do you get your team excited and engaged while they are experiencing panic attacks, existential crises, and visceral reactions to a new technology?
Change Management Is Fundamental
Introducing any new technology in an organization impacts the people and processes it aims to update or enhance. That's why, when you overhear your CIO and enterprise architect talking about digital transformation and low-code, it's crucial your developers are included in the evaluation. Getting them involved early on to explore what the technology can do to enhance the application development lifecycle will make developers feel valued. They will learn it's easier to create applications with low-code, and the technology doesn't constrain the types of applications they can build. Rather, it abstracts away the tedious effort required to stand up traditional development projects.
Moreover, low-code is extendable using traditional programming languages like Java and .NET, so your developers can use their existing skills to build native functionality through extensible and reusable components. All these benefits enable your developers to maximize their true value, and it's not their coding ability. Rather, what your developers should want, and what you need, is for them to focus their time on thinking through complex problems and delivering creative solutions.
Low-Code Isn't the New Visual Basic
It's more than likely your developers have had a brush with some form of low-code in their past experiences, and it didn't turn out well. Sold the promise of rapid application development (RAD), developers found themselves hitting walls as soon as they needed to create an application that did something more than forms-based data entry with a basic user interface. With limitations like this, along with the perception their computer science background is wasted, it's no surprise your developers are skeptical about this new crop of low-code platforms.
A lot of time has passed since the first wave of RAD tools hit the market and much has changed. Low-code platforms handle more use cases with greater complexity, without requiring developers to become experts in the fine grain intricacies of next-generation technologies like IoT, AI, and blockchain. Using industry standards like HTML5, CSS, and frameworks like Bootstrap to create compelling and engaging user experiences through cloud native, component-based architectures offering continuous integration and deployment flexibility, low-code abstracts away the tedious work developers don't want to do, so they can work on the projects with strategic impact on the business instead of the repetitive tasks that slow them down. The reality is, low-code is just another level of abstraction, something your developers are already benefitting from using languages like Java and C#. I mean seriously, ask your developers how they would feel if they had to use punch cards to write their programs.
The Business Is a Partner and an Asset in the Development Process
Accomplishing this level of abstraction requires a low-code platform offering tools to enable a continuum of developers to create applications.
From right to left, the continuum shows how hardcore and professional developers keep on coding to extend the low-code platform. While low-code platforms are completely capable of building great enterprise applications out-of-the-box, vendors offer the flexibility to add custom code to satisfy aspects of use cases that are unique to the organization. Some vendors encapsulate custom code into reusable modules extending the core platform functionality to make these components native to the platform. What this means is your hardcore developers add value and make an impact extending the platform for the benefit of the continuum of developers. Professional, business, and citizen developers use low-code and no-code development environments to take advantage of the managed components driving consistency and quality through the application development lifecycle.
"We have a number of different agile teams working with Mendix for different strategic business projects, and both business and IT are very pleased with the way that we're working together, but also the speed in which we can realize value giving results. I could say it's a factor 20x faster which is true, but there's more. We realize things that were not even possible in the past." - Jan Paul Buijs, Manager CIO Office at Enexis
Professional developers have a lot to gain using low-code. You can position them as mentors to the business and citizen developers in the continuum. They teach these new developers in the business lines how to think about solving problems using logic, and in the process, offload programming tasks so they (the pro devs) have the bandwidth to work on more strategic initiatives.
In addition, as these new developers gain proficiency, a synergy forms between the business developer and professional developer, where each brings their specific domain knowledge to the act of application development. The outcome here is increased productivity delivering impactful applications, collaboration with business lines increasing their involvement and ownership in the solution, and happy developers who can quantify their impact on the business on multiple levels.
Low-code is gaining traction in the app dev space as organizations embrace it as a mechanism to enhance agility in the marketplace. This is not the RAD technology of unfulfilled promises as articles, surveys, and analyst commentary provide technical proof and validation of contemporary low-code's capabilities. Those who are successful with integrating the technology have managed the change and achieved the buy-in from their developers by valuing their opinion, exposing them to next-generation technologies that underpin and expand the addressable use cases, and engaging developers to play a strategic role in partnership with the business. Interested in learning more about what developers expect in a low-code platform? Check out this executive brief.
This article was originally published on the Mendix blog.
Published at DZone with permission of Jeffrey Goldberg , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.