Sucked in by advertising, Jameson C. Burt bought a proprietary mathematical software application four years ago. This year, he discovered that he couldn't move that program to new hardware without paying hefty license fees. That's when Burt realized he'd made the wrong choice.
The proprietary product in question is Matlab, a technical computing environment created by Natick, Mass.-based MathWorks Inc. Burt, an IT professional working for a federal agency, has used Matlab to test theories about the stock market. He has downloaded quarterly statistics for 10,000 stocks daily since 1995. This data conveys a historical view of the stock market during boom and crash years.
In one of his tests, he wrote a program in Matlab that created an algorithm that tests stock-buying strategies. Surprisingly, the Matlab tests of mock purchases and sales showed that treating purchases and sales asymmetrically improved returns.
"Monopoly/oligopoly stocks, with little competition, offered few short-term fluctuations from which to capture increases," Burt said. "Capturing dollars in a fluctuating market would be analogous to sitting on a roller coaster with a device that saves energy from the ride."
As Burt continued to alter his program, he ran into hardware problems. He'd licensed Matlab on a 300 MHz CPU. "On this computer, running all 10,000 stocks takes two weeks, with 24-hours-a-day processing," he said.
This year, he started shopping for a new workstation. Then, it dawned on him that he couldn't move that software to a faster workstation computer without paying for a new version of Matlab and getting a new license. "So my greatest expense would not be a faster computer but new software," Burt said.
Burt had paid about $500 for previous Matlab modules under a student license four years ago. If he were to upgrade in 2003, he'd have to pay for the corporate license.
Suddenly, Burt realized how restrictive a proprietary license can be. The Matlab license restricted him to hardware that runs at the same speed as the machine on which he first used the software. "I couldn't use my license to instead run Matlab on a dual-processor, 3 MHz Xenon CPU computer," he said.
Reading more fine print, Burt found restrictions on the class of hardware used under the license. For example, he has access to a four-processor AIX computer with 8 GB of memory, but he can't use Matlab on it without a separate license for that hardware.
After more research, Burt found that many vendors today offer only one-year licenses. That essentially prohibits future hardware changes without software costs and new license configuration time.
"One shouldn't underestimate the various time costs, programming restrictions, and other costs induced by licenses," Burt concluded.
Determined to free himself from Matlab's restrictive license, Burt found two open-source alternatives, Octave and R. Like Matlab, these applications are programmable as vector-based mathematical software.
Octave is a general purpose math tool used for heavy-duty calculations. Burt's evaluation showed that that the capabilities of Octave and Matlab Version 4 are similar. A drawback to Octave, however, was the low volume of support mailing-list messages -- about four -- delivered via e-mail each day. That told him that user participation, in terms of sharing expertise and making contributions to Octave, was lacking.
By comparison, R's support mailing offers 30 to 70 messages each day. Reading R's mailing list entries, Burt found that the majority of contributors are statistics and medical experts, most of whom are university professors. "No commercial help desk provides the type of support represented in the R e-mail list archives," he said.
R is an integrated suite of software tools for statistical computing and graphics. A GNU Project development, R bears similarities to the S language developed by Lucent Technologies Inc. and commercially packaged as S-Plus by Seattle-based Insightful Corp.
In April, Burt began converting his Matlab programs to R programs. He knows he's made the right choice, he said. Without incurring additional software costs, he said, he can run those R-based programs on any hardware, even on four-processor AIX servers.
FOR MORE INFORMATION:
FEEDBACK: Did Jameson C. Burt make the right choice converting to R?
Send your feedback to the SearchEnterpriseLinux.com news team.