To code or not to code - Transitioning to low code

“To code or not to code, that is the question”. I often wonder what William Shakespeare would create in the modern digital world. Would smartphones replace daggers to inflict modern tragedy? How would he create complex characters molded by binary digits, searching for their version of perceptive truth?

One truth that we now all accept is that the web has dramatically shaped how we view and interact with others and the world around us. Nearly every process relies on a piece of technology or software and at the forefront, end-user interaction via a website or web application. As such, there is a vast amount of technology available to choose from.

In the business world, keeping up with the latest technological trends or digital landscape can be a real challenge. The ability to rapidly prototype, develop, and scale applications that solve business problems for both business and their customers is the digital holy grail of enterprise application development. In recent years, many enterprises are now choosing a low code development environment in order to achieve this goal. Outsystems, a company that provides such a platform was launched in 2001. To date, they support over 1.200 customers in 60 countries worldwide.

So what is low-code?

In a nutshell, it’s a visual development environment where users drag and drop blocks and widgets using the same common application theory of traditional programming.

While one may argue that you do not need the same level of comprehension of some specific programming language, you will still need the fundamental knowledge and understanding as to how web programming works.

Low code does not require an extensive understanding of one language or another.

As a developer I bet you have heard this conversation; “Boy, I wish this was coded using framework X, or if we were using Y-Programming language we could do it this way and that would be so much easier and faster”. In fact, a common question I often get asked when giving lectures or talking with business owners is “But which one is better?” and I always give the same response. There is no such thing. There are only scope-based advantages and disadvantages.

Keeping it agile

In the Agile development world, true business success comes from understanding and solving customer problems, not technical ones. Low code helps build the bridge between developers from different backgrounds, languages, and levels of proficiency. The rapid development of functional working apps that solve these customer problems help business, as apps can be created faster and at a lower cost.

But I already know how to code?

Great! If you are a web development professional, budding graduate or student, web development concepts will be familiar to you. Transitioning into low code should be a fairly smooth process. Obtaining a low code certification can be the feature that really makes your résumé pop. You will be adding an extra skillset to your already impressive arsenal and in the ever-competitive world of in-demand developers, this can only be an advantage.

You can get started by visiting the Outsystems website and signing up for a free account and personal development environment. There will be features of the platform that you will love. For me, it was the visualization and the hierarchy of the data flow. And also the automatic features and functions that make rapid prototyping a breeze, the intuitiveness of the platform, the knowledge base and not to mention the wonderful development community. That being said if you are from a strict coding background, then certain elements will require a bit of getting used to. The most obvious being the extra mouse clicks and dragging and dropping. Certain tasks that could be completed with a few keystrokes may take a little more time. This is not a criticism of the platform, more so a self-observation of the adaptability required inside your new workflow. The whole ideology behind low code is the ability for rapid development and reduced complexity.

An Outsystems Data Flow (left) & Web Screen (Right)

That being said, do not be fooled into thinking you will be a low code Jedi master in just a few short weeks. While yes, you can be up and running quickly, OutSystems is a fully-fledged development environment. It has its own way of doing things, it’s own workflows, best practices, procedures, and standards.

Certification levels range from the basic Associate level to the master Expert level and achieving this will take time, dedication, and more than likely some years. I always remember a quote from my old music teacher about learning bass guitar: “It’s easy to play but hard to play well.”

Conclusion

As with all programming languages and software applications, there is a learning curve and Low Code in Outsystems is no different. The good news is that the OutSystems learning curve is not a steep one. If you are already familiar with variables, conditional statements, functions, APIs, and the fundamentals of programming then you will be up and running quite quickly with the basics of Outsystems. That being said, you will have only scratched the surface with what can be achieved with the platform.

As we emerge from the post COVID world, the only certainty is uncertainty. The technology sector has ridden the waves of the storm better than most with its adaptability being a key factor. Tech companies, innovators, and businesses of all sizes will be charged with shaping our new world. Innovative apps and solutions will drive demand for more developers and development companies.

One thing is for sure, web development will be at the forefront, and OutSystems will be ready to play a huge part. To quote the Irish playwright George Bernard Shaw:

“Progress is impossible without change, and those who cannot change their minds cannot change anything” — George Bernard Shaw.

James Fitzgerald is one of ITUp’s  OutSystems Trainers