What Is a Low-Code Software Development AI Framework?
If explaining the thing is difficult, it might be because it's adequately abstracted, to the point where that which it abstracts has been forgotten.
Join the DZone community and get the full member experience.
Join For Free10 //
You won't understand this line of code quite yet, but relax, it will become clear as we proceed.
AI is incredible. However, AI is just a sub-section of automation, and automation is something we've had for a very long time. Some would argue we've had automation for thousands of years.
The amount of automation AI is promising us is baffling to the point where it's almost difficult to believe. Still, it's not a new thing. Automation has been here ever since we invented the wheel 15,000 years ago. This implies that AI is actually just smaller incremental steps, one built on top of the other, to where we're now at the point where we can almost create artificial sentience, that almost seems to exhibit human nature.
My First Computer Program
I remember the first program I wrote, it was as follows.
10 PRINT "THOMAS IS COOL"
20 GOTO 10
Whether or not I'm cool I presume is in the eye of the beholder, but to understand what a low-code software development AI framework is, is to understand the above program from an economized point of view. If I was to use pen and paper to write the above millions of times, I would need thousands of hours. Yet, here I've got this thing, that allowed me to spend 10 minutes writing out a couple of instructions in a terminal, for then to execute it, and have it write my sentence trillions of times, without getting tired or misspelling any words.
Magic Cloud and Low-Code
A friend of mine asked ChatGPT to suggest an open-source low-code software development platform for AI solutions, and it suggested Magic. Magic is our flagship product, and when I describe what it does I tend to use a lot of words. Below is the identity definition of it.
Magic is a Low-Code software development and business process workflow orchestration platform, particularly well suited for creating and managing AI solutions.
Describing it using the above is of course impossible in everyday conversations. Magic as a word eliminates the debate, and it's not as if anybody (besides me) will probably ever understand all of its internals, so I refer to it as "magic". The argument goes as follows.
Any sufficiently advanced technology is indistinguishable from magic.
The above is a quote from Arthur C. Clarke. Since I'll probably be the first and last person to truly grasp it, "magic" does the job of communicating what it does. Below is how ChatGPT sees the world when asked for what Low-Code platform to use for AI development, so obviously I must have done something right.
Abstractions
An abstraction is a simplification of a higher-level complexity. Language is itself an abstraction of thought, or "logos" as the ancient Greeks would say. Abstractions are useful for communicating ideas, something illustrated by condensing the identity definition of Magic down to a single word. Abstractions are therefore useful as communication vehicles. When I talk about "magic" for instance, everybody knows I'm talking about "the thing whose identity definition is too long for me to be bothered using it in everyday language."
The funny thing is that software development as an art form is really nothing but communication. When I create software I communicate my "intent" to the machine using a programming language. The machine sees my code and transpiles it to CPU instructions. This results in a "logos machine", that on a good day is capable of executing my intent, producing (hopefully) the result I intended for it to produce.
So my thoughts or "logos" have gone through several layers of abstractions, to the point where it's capable of executing my will, whatever my will happens to be on that particular day.
It follows that software development is really just another form of language. It's a human-to-machine type of language, instead of a human-to-human type of language.
Code is language, and to create software is to communicate with the machine.
Low-Code
Low code again was defined back in 2017, and it basically implies a framework that allows us to create systems with less code than what would typically be required using traditional means. A good low-code framework again, is thereby simply just another abstraction, built incrementally on top of millions of other abstractions, providing a result where productivity increases significantly, and therefore reduces the cost associated with creating solutions.
If we're to create a common denominator at this point, encapsulating all of the above ideas, we could grasp for words such as follows ...
Economize and optimise the ability to exchange ideas between humans and machines.
Everything is about optimizing processes, delivering more with fewer resources, and economizing, which results in releasing energy, creating "a better world, where we have more, with less work."
Wrapping Up
We've now got all the elements required to create a common foundation for understanding low-code, AI, and where they intersect — at which point answering the question I started out with becomes superfluous. At this point you either get or you don't. If you don't, no amount of explanation will ever make you understand — but I'll try anyway.
A low-code software development AI framework is an abstraction that simplifies the ability to create AI solutions, making it faster to communicate intent to the machine, such that the machine can better leverage AI, to act upon the human being's will, where the end result is to "magically" create more wealth, while having to apply less resources.
If you still don't get it, my suggestion to you is ...
GOTO 10
Published at DZone with permission of Thomas Hansen. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments