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 being designed. These LCNC solutions offer a much easier and faster way to develop software, which is something that almost every industry can benefit from. Lets take a look at what low code no code is, why its so disruptive, and explore 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 digital world 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. Typically the purpose of new software development is to prototype a new idea and test its potential applications and functionalities. It is simply common 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 see a clear 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 modern 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. An easy way to think in basic terms of code / programming logic need is the classic term "If this then that" which to me is a sort of the gateway concept to becoming a programmer, most modern ux applications will give this power in a basic sense to its users. Thinking simply about logic like this 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. This is ultimately 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 manipulated without using code. Its a form of design freedom when compared to the more legacy modality of strict limits and restrictions to all the functionalities within.
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 which 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 derivative.ca has done so with me. 😉
Side note: Another intereting parallel trend to the LCNC boom is the sandbox platforming movement. Some of the highest adoption software is in the form of the most prolific "games" that are built as open sandbox platforms. The Games and platforms that allow users to create their own levels, experiences and functionality are exploding in popularity, precisely because they can be hacked. (Minecraft, Roblox, Dreams, etc) ... I draw this parallel because, well... "power to the people"