how does it work?
With our approach, organizations and individuals can leverage what they already know. They need only to write their requirements using the language they already understand.
Our platform does not rely on programming or code -not even auto-generated. We bypass it entirely by creating and instantiating knowledge models inferred from a semantic understanding of source text. As such, all needed to create software is the capability of describing it.
But what does that even mean?
Allow us to sidestep for a moment and help you think of it like this:
Consider a machine capable of producing music sheet automatically, out of capturing some form of musical input. It captures someone singing, or playing an instrument, for instance, and after analyzing the audio it creates a music sheet that represents whatever it recognized. Nice.
Now consider a second machine, capable of receiving a music sheet as input, and producing sound, actual music, as a result. It 'plays' whatever it found on the sheet. Nice as well.
Surely, today these machines already exist in some form. Impressive nonetheless. However, for these two machines to be able to exist, a third invention is required, one more basic, that enables those two to actually do their thing: the musical notation. This is, the formal protocol with which you can represent any music. Since the protocol is known and is exact -mathematical even, then it is easy for these machines to know how to structure, sort and interpret their doings in order to work.
The beauty of the musical notation is that it is fairly limited, yet endlessly modifiable. With only seven notes, dotted over 5 lines, most any music that was, is or will be, can be represented. 1500 years ago, most music died with the composer, if other musicians weren't present and committed to memorize it and carry it on. With the advent of music notation, composers were able to simply persist their masterpieces onto paper, enabling future musicians, at any other time or place, to recreate the very same music just as it was created.
Fantastic! But what does that have to do with software development and this platform?
Everything! Just as with music and how its notation system is able to formally represent any composition, we have devised a way to formally represent any linguistic composition, that is, anything that you can represent through language. By inventing a protocol that formally represents any language input (and with a very exact and limited set of components, just as music´s seven notes) we can create machines that produce formal models from source language and then manipulate them with other formal applications, such as creating software.
Our platform has three main parts:
The first one is a Natural Language Processing (NLP) protocol that can formally and efficiently model any concept represented through language. Since it is an abstract model, it does not matter which language is actually used, any will do. In fact, the actual, specific words don´t matter either. We are not comparing against preset dictionaries or taxonomies, but rather understanding the role words are playing by analyzing the semantics of each sentence. As with music and music sheets, any informal text composition, arbitrarily described by a user, can be formally modeled and represented with this protocol. We call these abstract models BIMs.
The second part is Analyzer, the 'machine' that does the actual text capture, analysis and conversion into a BIM (the formal representation, or music sheet). This is a cloud app where users type in or upload their text, and it creates a BIM that exhaustively represents whatever was found in that text.
The third part is Engine, which is the BIM 'player' machine: it reads a BIM as input and creates an instance of it specific for a target platform, say, a web app via Windows Server on .NET, or an iOS app. This is where the only code is found: static code that understands BIMs and knows what to do for each platform.
Just as you don´t need to edit music sheets to have them performed by different musicians on different instruments, you don´t need to edit BIMs to run on different platforms. You just need different Engines, one per target platform, that understand how to read BIMs.
This approach allows users to create software by writing in their own words, in their own language, in whatever articulation they can to characterize their application. Not following some artificial guidelines, or giving programming instructions in pseudo-language, nor using normal words to describe technical conditions or algorithms. Nothing like that. just telling their thing however they can. The platform takes that text, creates a formal BIM, and from it creates instances in the form of platform specific applications.
This is too much! I just want to make software without coding!
Well, you did ask. But we get it: it´s a mouthful. Suffice to say this is an innovative approach to software development, one where anyone can create apps without learning to code, or learning some foreign rules that might as well should have been code anyway. This is just ordinary writing, describing in your own words, however inspiration comes to you.
And we´d love to have you try it out! Stay tuned for a closed beta invitation.