The Mendix Revolutions

When I first encountered low-code, I was coming into a company that wanted to revolutionize the way they operated. They were embarking on a journey toward the panacea of every modern business: Digital Transformation

There’s a difference between knowing the path and walking the path

It sounds like some sci-fi machination but, for those who may have been hiding under a rock for the past five years, it’s actually the process of taking your old disjointed manual processes and legacy systems and turning them into an all-singing, all-dancing, digital solution. Something that ties everything together in a neat package, helps everyone work together in harmony and fixes all your process problems.

At least that’s the dream.

Rarely is it that simple and rarer still is it ever finished. It’s an ongoing process of finding pain points in the business, fixing outdated processes, replacing or removing systems, and plodding ever onwards to what feels like an unreachable goal.

It may sound hopeless but honestly, it’s not. It’s a fantastic challenge and something every company should be striving towards. Those founded in the last 10 years probably already have a head start and operate on mostly integrated systems… But there’s always that dark corner, usually in the finance department, where Sam has created a monstrous spreadsheet to manage some core process. We see you, Sam. You can’t hide!

Image 1_Mendix Revolutions_Matrix-style screen with descending green and white numbers.

Which leads us to the question? What does this have to do with low-code?

Ignorance is bliss

There are lots of ways low-code can help to enable a digital transformation and most of it starts off with understanding where you currently are. The architectural state of your business probably fits, predominantly, into one these categories (although there are many shades of grey in between):

  1. A clean slate – you have literally no digital systems to speak of. You might be a new business or maybe you have some spreadsheets, but no large applications
  2. A core system and supporting applications – You have one main system and a handful of integrated or disconnected systems
  3. Everything, everywhere, all at once – You may or may not have a core system, but you have no discernible architecture, and everyone has gone off and bought various applications to do a whole host of different things and even some of the same things

In my experience, the third situation is way more common than it should be but the second one is where I suspect most modern companies will find themselves. Anyone in the first situation, you’ve probably got the easiest job (outside of trying to decode spreadsheet formulas).

We’ll assume you’re in the situation of a typical use case and that you’ve got some kind of core system that holds the bulk of your data. It does a good job of storing that core data and supporting a few key users who are trained to use and maintain it. However, the data isn’t the easiest thing to access for anyone outside that core group and they may have to also pull data from a few other systems. Some of those supporting systems probably also pull data from the core system. They might be integrated in a modern way with REST APIs or an older model like SOAP or flat files.
It’s also likely that there’s no mobile offering for your core data which means people tend to either carry a laptop everywhere they go or print off files to take with them.

On top of all that there’s a layer of shadow IT (like Sam in Finance, we’ve not forgotten about you Sam). These are generally tech-savvy users who’ve built their own complex spreadsheets or have possibly even bought their own applications (probably without consulting IT). Anyone who’s been in IT for as long as I have will remember the scourge of Access Databases out in the business; some of which got so big it was a daily task for someone to go in a delete a few thousand rows so it would keep running.

The business has probably operated in blissful ignorance like this for what seems like forever but someone progressive has come in and kicked off a digital transformation. Now you and low-code are part of the solution and you’re going to help them to become more effective and efficient. What are you going to do?

2_Mendix Revolutions_Meme of Morpheus from The Matrix in sunglasses saying What if I told you I have no plan.

A world where anything is possible

Often the best place to start when introducing low code to a business is to create something quickly that immediately adds visible value. Something that clearly demonstrates the benefits of the new low-code platform; big impact at speed. Often the best way to do this is with some kind of portal. It could be back-office, customer-facing, or mobile.

I mentioned earlier that core systems are often hard to access for non-proficient users, making finding information difficult. You’ll also find that a lot of the time key data is distributed across multiple pages or even multiple systems. This means that anyone who wants to access a customer’s data, for example, may have to connect to trawl through many pages or multiple systems (like a core ordering system, a CRM system, and a delivery management system). Surfacing this data up in a centralized, read-only back-office portal can be a simple process, depending on integration options available, and can save people a great deal of time by optimizing the way data is accessed to match a particular business process.

That’s when you really blow their minds and show them that it is actually fully responsive and can be accessed via a mobile device. It’s an easy process to add mobile views to your application so that it can be viewed on a phone or a tablet and it’s usually a big leap up for people to be able to access this information whilst they are out and about.

The other option is to create a customer portal. Maybe your business is very customer focused but your customers currently have limited access to information via an old website provided as part of your core system. If that’s the case, it’s probably hard (and expensive) to customize and doesn’t actually contain most of the information they might want to see.

Creating a well-crafted customer experience with a modern, sleek looking portal is easy with Mendix. It can also be a great way to create good sentiment with customers and the business if satisfaction with a current offering is missing or low.

Whilst you’re building these portals you should always be asking yourself, “What’s next?”. Where do you see the current app evolving? I’m of the opinion that very few applications are ever done. There will always be improvements to be made and enhancements to be created. I like to build with these things in mind as well as where it will fit into the architectural goals. Is this system going to be the hub of your new digital landscape? If it’s not, then how does it connect to that hub?

I can only show you the door…

During the introduction of low-code to the company, you might be called upon to explain the benefits of low-code to the wider business. Whilst someone from a technology background may quickly see the benefits of using low-code rather than traditional code, people from the business may just stop at, “It builds applications faster.” Whilst this statement is true it’s only part of the truth and doesn’t accurately show everything a platform like Mendix can bring to the business.

Part of the digital transformation needs to be focused on rooting out “Shadow IT” and bringing it into the light. This means explaining to the business that their power users, like Sam in finance, can use Mendix without necessarily needing a professional developer to get started. Through Studio, they should be able to import an Excel spreadsheet to create an application or create a one-form system without any support (above and beyond Mendix’s training paths).

This is when the collaboration message needs to be made loud and clear. That’s where you can help them to understand that they can reach out to the professional developers in the organization for support through the Mendix platform. Together they can create more advanced solutions. Doing away with massive spreadsheets or the business being forced to buy yet another off-the-shelf solution.

Everything built is controllable through Control Center so there’s also no fear of them going rogue and publishing hundreds of applications. They can also be supported with shared modules on an internal Marketplace, private to your business, and easily accessible data sources shared through DataHub.

You take the red pill – you stay in wonderland, and I show you how deep the rabbit hole goes

During this transformation someone will need to map out the entirety of your digital landscape. They’ll need to find:

  • All the applications in your company (excluding standard software like Office): The main purpose of this step is to find the applications that have been bought by teams around the business to tackle a specific problem for them. This may have led to duplicate functionality in systems and you could identify something that is easily replaceable with low-code (saving some money on licenses in the process).
  • The integrations between systems: Anywhere data is transferred from one system to another by either an API or a flat file you’ll want to note, specifically highlighting the weak points.
  • Any duplication of data that might be happening: This could be as simple as someone keying data into two systems or as complex as duplicate processes. It all needs to be rationalized to one source of truth, or as close as possible, and never asking the same questions twice (unless the process dictates confirmation of course!).

3_Mendix Revolutions_Image of precarious stack of blocks piled high and wide on a dubious foundation. At the top of the stack, the script says

Then there’ll need to be a new map of what you’d like your landscape to look like. This should rationalize the redundant systems and data and optimize the integration layer.

Every new development then needs to have a home on the new map and preferably replace or combine some parts of the old map.
You’ll find that you’ll then get into a cycle of creating new applications whilst also managing requests for changes to existing applications and possibly even some bugs! (It happens to the best of us). To stay on top of all this, a carefully and consistently managed backlog is essential. Once there’s a well-maintained and prioritized backlog in place everything can move along, following your chosen Agile processes, like a well-oiled machine!

Will you ever complete digital transformation? No. It’s an endless game. However, with Mendix you’ll at least be competitive and be able to make impactful, manageable change at a great pace whilst also reducing technical debt and the presence of shadow IT. With all that business collaboration taking place, you may even make friends with Sam in finance!