Object-oriented analysis and visualization
click the image to enlarge
The four main work windows of O-Matrix 5.8
Yes, another language and environment for technical programming. However, before the menu-driven, “I don’t ever want to program” crowd tunes out, let’s take a little closer look at the program’s capabilities and learning curve. According to the developers, O-Matrix is “an easy-to-use matrix-based scripting language and an intuitive integrated computing environment.” The program already contains hundreds of subroutines for mathematical, engineering and graphics functions, so no one is starting at ground zero. Files from common data platforms such as Excel and Matlab are readily imported to save time. The heart of the software is a matrix-based language that is addressed through a command line or built-in editor. Built-in functions are written in optimized assembly and Fortran code to provide flexibility, robustness and accuracy. There are menu options for certain simple operations and GUI building facilities for common applications.
The software is described as a complete, object-oriented analysis and visualization environment for scientists, engineers, numerical analysts and students. I strongly suspect that the scientists, depending upon discipline, might either use other menu-driven programs, or have their IT folks do some programming for them. As to the other groups, there is a definite niche here for the product. It was specifically designed to handle large data sets quickly.
As with many Web-based products, the program and its manual are only available as downloads (or mailed as a CD), but this is not a problem as the download process is automated and proceeds smoothly. Written for Windows 98, NT, 2000 or XP, it takes a mere 40MB of hard drive space and will run quickly on Pentium IIIs or better. This review employed the Windows 2000 platform. The online manual will be minimally needed by programmers, but is detailed enough to step non-programmers through the code-building process with minimal pain. The only annoyance was having the ‘Next’ page choice at the top of the page rather than at the bottom, thus necessitating a manual return to the top at the end of each page. Now on to the tests….
The very fact that just a few hours time with the help section and a tutorial will ground the novice in efficient use of the program hints that it doesn’t take an expert (let alone a beginner) weeks of time to master the programming logic and steps. In fact, there are very few areas to review before starting out. Once the user recognizes the command line, the command window, the debugger window and the editor, there is very little to do but start examining the code. From there, it is a short hop to writing your own. The windows may be tiled for ease of reference and use so everything that the programmer needs is readily available.
On my first attempt at using the code, I merely copied and pasted from the tutorial. Here my complaint is that this must be done with toolbar commands rather than Windows shortcut keys, so the process is somewhat slowed. It also would be nice to have a ‘Run’ button on the toolbar so, again, time wasn’t wasted with a File/Run Program command. Once it became apparent how easily the editor could be invoked, it was on to the code. O-Matrix has the nice feature of not requiring everything in quotes or each line ending with a semi-colon or special character. Matrix definition and algebra are almost intuitive, but I felt as though I were reinventing Matlab. Despite the curly brace/square bracket conventions (like Mathematica), the construction of vectors and matrices is straightforward. A summary of code conventions somewhere in the manual would help here.
For the C programmer, the IF/WHILE/FOR statements to control program flow will be really simple. For the Matlab user, once the basic matrices are in the program, algebra will be second nature. For the Mathematica user, the brace/bracket convention will seem intuitive. So, for the novice, there is much already included that will move the work along. The advantage for the engineer, already used to writing code, will be the existence of a platform to string routines together, many already available, and to customize an analysis. Also, it would be really easy to supply useful tools to the non-programmer by developing simple GUIs for specialized applications. At $285, the price is quite reasonable and there are many free utilities, toolboxes and add-ons available. The Web site contains much additional information and a demo download is readily available. It’s worth a look.
• Standard version $285
• Development Kit $480
Harmonic Software Inc.
P.O. Box 7365, Breckenridge, CO 80424
206-521-1008; fax: 970-547-5307
John Wass is a statistician with GPRD Pharmacogenetics, Abbott Laboratories. He may be reached at email@example.com.