Frequently Asked Questions
HOW SECURE ARE TRUDELLO SYTEMS?
Developers can create very secure systems using Trudello. As Trudello is very powerful and flexible, it can also be used to create insecure systems, the difference is the skills and knowledge of the developer. While Trudello cross-compiles to PHP, the PHP generated by Trudello avoids many of PHP’s security risks.
WHAT DO I NEED TO DEPLOY MY SYSTEM?
Trudello Systems can be hosted on any web server. If server side code is used then PHP 5.6 or later is also required. PHP is included with almost all commercial web hosting packages.
WHAT BROWSERS ARE COMPATIBLE WITH TRUDELLO?
Trudello systems work on all modern browsers and do not require any downloads or add-ins.
WHAT ARE TRUDELLO’S SYSTEM REQUIREMENTS?
The development environment needs Windows 7 or later.
WHAT ARE THE ONGOING COSTS?
There are no ongoing licencing fees or charges for Trudello.
WHAT CODE RUNS ON THE SERVER?
All code behind a Trudello web page begins by running in the browser. Trudello provides a wrapper function called “RemoteCall()” that will cause the included function call to run on the server. The transition is seamless.
HOW DO I DEBUG MY SYSTEM?
Trudello has an interactive debugger which allows break-points, stepping into, over, out of and allows watches to be set and data to be modified. The debugger allows the developer to step-into function calls made to the server. Amazingly, the debugger allows program changes to both browser and server code within a debug session.
HOW COMPATIBLE IS TRUDELLO WITH BASIC?
Trudello uses the BASIC programming language and implements many BASIC specific language characteristics. These include the treatment of classes, types and arrays, passing parameters by reference and eager expression evaluation.
HOW FAST IS TRUDELLO?
WHY ARE CALL-BACKS BAD?
Call-backs are bad because they cause the structure of a system to depend on minor technical requirements. This makes it impossible for structure to reflect the important business needs of the system. The system becomes more complex and much more difficult to maintain later.
HOW DO I ACCESS WEB SERVICES?
Trudello systems can access many web services through HTTP requests.
WHAT IS THE DIFFERENCE BETWEEN TRUDELLO AND LOW CODE TOOLS?
Both Trudello and Low Code Tools can implement pre-built applications that can be configured and extended. Trudello also allows these to be fundamentally changed or written from scratch.
WHAT MAKES TRUDELLO PRODUCTIVE?
Trudello improves programmer efficiency from end to end by simplifying, automating and eliminating work wherever possible, examples include:
- Page design is visual, because pages are visual objects;
- The page designer is aware of the code and links code to pages automatically;
- The code editor has auto-complete;
- Technical tasks such as server calls are handled by the tools;
- Trudello has high level features for business systems such as table arrays;
- The programming language and API are simplified;
- The compiler checks for errors including the interface between browser and server code;
- It has an advanced debugger that allows stepping into server code and modifying running code; and
- Code re-use is facilitated by strong object oriented features.
IS TRUDELLO EASY TO LEARN?
Trudello has many features to simplify the learning curve:
- The design paradigm of Trudello would be familiar to many developers, especially those coming from Visual Basic or Powerbuilder backgrounds;
- The BASIC programming language is familiar to many developers;
- BASIC is a powerful but simplified programming language;
- The visual page designer provides immediate feedback so that developers can quickly find the right settings;
- The code editor provides autocomplete so that new developers can be aware of possible functions, values and methods; and
- All available properties and events are visible on the tool pallet.
WHAT ARE THE BENEFITS OF SINGLE PAGE WEB APPLICATIONS?
Single page web applications are much more responsive and reactive than traditional web systems. Traditional web systems perform all of their processing on the server. This meant that an end-user would enter their data into the web pages, press submit and wait while the server processed their information. If an error occurred, a message would be shown on the resulting page.
Single Page Web applications do more processing in the browser and can provide immediate feedback on any invalid data entry. In addition, the page stays present while the server is processing and potentially allowing the user to continue working at the same time. Single Page web applications can also be compiled into mobile applications. Trudello creates single page web applications by default.
CAN I REALLY CREATE DIALOG WINDOWS IN TRUDELLO?
Yes! Traditionally creating dialogs in a web page meant that the “OnClick” event of the “OK” button became a structural part of a program. Adding a Dialog Window was a significant change. Trudello allows the elegantly crafted business process to “Pause” while a dialog is shown and to continue after the dialog is closed.
HOW DO I DYNAMICALLY CREATE TABLE ROWS ON A PAGE?
WHAT IS THE DIFFERENCE BETWEEN DEPLOYING FOR “RELEASE” AND DEPLOYING FOR “DEBUG”?
When a Trudello project is deployed for “Debug”, the web site exposes additional functions so that the Trudello debugger can debug server side code. This is insecure and so Trudello development environments should not be accessible from the wider internet.
Trudello projects deployed for “Release” only expose those functions that the developer has called using the “RemoteCall()” wrapper function.
CAN I ADD GRAPHICS TO MY SYSTEM?
Yes. The HTML 5 canvas object is a general purpose graphics and drawing element. While it is suitable for gaming, it is also suitable for business graphics such as graphs and charts. It is also possible, using the object oriented features of Trudello, to build a reusable Chart Class for showing graphs on screen.
HOW DO I MAKE MY CODE MORE REUSABLE?
The object-oriented features of Trudello allow the development of reusable components. These components can include:
- business objects (for example, orders, customers etc);
- custom controls (for example, custom edit fields, custom buttons); and
- custom screen types (for example, list edit screens, search screens).