Development

Low-Code No-Code Design and Development Systems

Low Code No Code (LCNC) software solutions are not only disrupting the way business logic applications and solutions are built, but also changing the way creative design tools are changing.  These LCNC solutions offer a much easier and faster way to develop software, which is something that almost every industry can benefit from. In this article we will explore what low code no code is, why its so disruptive, and take a look at its potential roots in early Node based GUI art and design prototyping tools.

Supercharging Prototype Speed

When we think of software development, we may think of code. Coding from scratch is a complicated and time consuming process, however, as the world of digital has advanced, new methods of developing software have emerged.  Low code development is one of these new methods, and whilst there are many reasons for its adoption, one of the major drivers is that it allows developers to create software more quickly and easily. In a lot of cases the purpose of new software development is to prototype a new idea and test its potential applications and functionalities.  It is commonplace for developers to approach the first iteration as a "prototype", wherein speed is certainly a priority.  By removing the need to write code, this prototype process is supercharged, allowing for exponentially more iterations, which ultimately results in better final results, more intuitive UX, and more complete, purpose driven functionality.

LCNC in the Design Field

I tend to draw a parallel between the business oriented LCNC solutions and the modern design tooling field.  These new age design tools, especially those focused on web experience design are evolving and are ultimately bringing designers closer to UX logic and developers closer to design.  Publishing web ready code directly from design applications is a perfect example of a no code philosophy.  These days its not uncommon that all UI/UX logic is being designed, tested, and even published right out of these design tools themselves, which makes designers programmers.  One way to think in basic terms of code / programming logic need is the classic term "If this then that" which to me is the gateway to becoming a programmer as it can really help boil down node logic purpose and demystify logic design in general within these new tools.

Node Based GUIs in LCNC Software

Since the earliest image manipulation on consumer computers, design and visual art software has always been carried by a competitive philosophy of tool innovation; using new tools in new ways to create new looks and visual effects.  Among these tools are a set of visual prototyping and programming environments that used Node based visual programming GUIs.  This type of UI involves a library of node components used for specific tasks with their own set of ins, outs and settings implemented creatively into more broad pipelines.  And ultimately is a type of logic programming.  This type of Visual programming language GUI albeit quite old (Among the oldest known as GRaIL in 1968) has finally become somewhat of a staple in modern design tools, if not ALL major creative applications as well as now business class LCNC solutions.  I bring this up because I see a clear legacy of inspiration around these tools.   Node module GUI design is ultimately an effort to over expose functionality of the software itself allowing for it to be hacked and used in ways not even the authors would anticipate.  This ultimately can be seen as turning every piece of software into its own prototyping environment, which in essence allows itself to be creatively hacked without using code vs. giving strict limits and restrictions to all the functionalities within.  

Houdini
Nodes
Unreal Engine - Blueprints
Touchdesigner

In Conclusion

This can all be seen as a bit scary to industry veterans in development, creative technology and Systems architecture as it truly does stir the pot, while redefining the speed at which concepts are tested, built and even deployed.  I for one however, am incredibly excited about all this and want to leave you with my favorite "inception" style example surrounding this type of creative development.  This actually blew my mind when I first truly tested it.  Touchdesigner, a prolific procedural node based programming environment by derivative.ca is itself built in Touchdesigner.  The chicken IS the egg.  The actual applications GUI can be broken apart to reveal that the buttons, menus, and sliders themselves are made up of the same operator component modules you use within the software to make your own software networks.  This level of exposure and expandability can hook a creative technologist for life, and derrivative.ca  has done so with me. 😉

Side note:  Another parallel trend to the LCNC boom is the sandbox platforming movement.  Some of the highest adoption and most prolific "games"  are the open sandbox ones.  The Games and platforms that allow users to create their own levels, experiences and functionality.  (Minecraft, Roblox, Dreams, etc) ... I draw this parallel because, well... "power to the people"