Product Scripting: Simplified Scratch-like Configuration
Title: Product Scripting: Simplified Scratch-like Configuration
Today, the Nova product leverages a lot of Javascript as seen in the Workflow engine, Interface Engine, and Functions builder. In the future it will likely expand to Smart on FHIR data mapping transformations. Javascript is extremely powerful but has three drawbacks:
- It can be daunting for non-developers
- It can be tricky, if not dangerous, to run it as part of a server side event (think automated printing)
- It can be challenging to secure
Proposal
Use a drag and drop Scratch-like system that allows for simple to moderate drag and drop "scripting". Because you are not writing Javascript, you do not have to worry about malicious code execution. Because of its drag and drop / block design, you dont have to worry about syntax errors or the get the feeling of having to write Javascript for the first time. Since this is not Javascript, each "transformation" achieved by this system can be programmatically executed safely on the frontend and backend. Today, running scripts on the backend is not possible due to the potential for abuse.