In our world of process, there are a lot of low-code or no-code platforms on offer.? Being a realist, it often turns out that there are certain things these platforms allow you to represent visually - by "drawing" - that take the place of code which, while it may not be hard to write, may be quite difficult to visualize and explain to stakeholders or future maintainers. And then there are other things that just don't lend themselves to the chosen visual paradigm.? Not all "models" are process models or BPMN.? Not all models are decision models or DMN.? Not all visual programming models fit neatly into just one category.? As a result, either the platforms offer more than one visual modeling approach for more than one key use case, or they also allow for connecting with other software that is written as code, or configured properties.
In the following video by Emily Nakashima, she explains attempts at more generalized visual programming:
As you can see, it is challenging to solve generalized software engineering problems with purely visual programming. And yet, there are certain uses - laying out a user interface, representing a business process, or a decision model - where the visual layout is quite useful.
Another footnote: you can also see how some of these approaches would get quite complicated for a reasonably interesting problem's solution... we'll be needing lots of software engineers for years to come.