Consequently, it is not surprising that commercial systems built with proprietary code are more popular than free and open source systems. (By the way, MAGMA is technically not commercial - being "not for profit" - but for the purpose of this discussion we shall not distinguish MAGNA from Mathematica or Maple or Matlab, as they all follow a similar funding model.) The cost is based on what the market will bear and that gets leveraged into further development. As they improve, their customer base increases and solidifies.
On the other hand, the current status of many open source computer algebra systems, such as Maxima, is largely based on U.S. government funding (e.g., Dept. of Energy and NSF support) and corporations such as IBM (who developed Scratchpad to illustrate the value of its computers). These days, government finding has dried up and IBM has turned from Scratchpad to programs such as the chess-playing Deep Blue to help sell its latest line of computers.
How does the future look for open source computer algebra systems? Not good, if you think the following hypothetical scenario is reasonable. Programs such as MAGMA will become more and more popular with researchers, especially young ones at NSF-funded top-tier universities with heavy pressure to publish and a software budget to match. Systems such as Maxima will become less and less relavant. Development and maintanace will be supported by community-minded volunteers having full-time
jobs in industry or academia.
Is it healthy for scientific papers, mathematical ones in particular, to be supported by computations which cannot be verified, except by the relatively few employees of the commercial software system they use. Let's think about this for a moment.
By law, the US givernment cannot favor one commercial system over another. Is it ehical for them to favor commercial systems over non-commercial ones? It is right for the NSF or its agents to support proprietary commercial systems over open source systems? It seems to me that this is a sitation where the letter differs significantly from the spirit of the law. In spirit, competition is to be encouraged, with the idea that quality is thereby increased by competitive forces. Open source software fosters competition in the marketplace and at the same time provides a product for lower-income educational institutions. Both of these are in the spirit of the
law. However, the favoring of commercial products by the NSF is not in the spirit of the law. Indeed, in that case, the money simply goes not to the lowest bidder but the best (in the eyes of the NSF agent in charge of awarding the funds) of the commerical products. This is essentially the same as awarding a no-bid contract to the product the NSF thinks is best.
Consider the argument that the NSF shouldn't support open source systems since they (being free) undermine the capitalistic process and do not contribute to the marketplace. This is completely incorrect. Indeed, free software increases the value of the computer and operating system itself. (In fact, this is precisely why corporations such as IBM supported these free systems in the early days. They made the software free since to run it back then, you had to buy their computer.) So, as long as the free program is cross-platform, free software does contribute value to the marketplace as a whole, yet does not favor one company over another.
Finally, let us try to design a CAS based not on human behavior but on objective, logical principles. We want a CAS which is
open source (for verifiability and correctness),
easy to use and free (for greater availablity, thus fostering cooperation
and collaboration, and greater practicality),
scientifically beneficial (obviously).
These are the three basic principles which are demanded by scientific requirements. Should not organizations such as the NSF and ACM support these open source systems rather than other systems?
No comments:
Post a Comment