If you were to go out on the street and ask ten different
people what OpenSource software is, you would most likely get ten different
answers. So, let us begin this blog with
just exactly what we mean by OpenSource software. The official definition, from The Open Source
Initiative, can be found on Wikipedia. We
won't go into all the details here, but rather highlight the most important
aspect, from an engineer's standpoint:
"Open-source software ... is computer software that is ... provided
under a software license that permits users to study, change, and improve the
software."
If an engineer is going to rely on a software package for
making design decisions that can have significant safety or cost impacts, our
engineer needs a mechanism whereby the validity of the algorithms and their
implementation can be verified easily. Granted, not all of us are going to go
digging around in the code to determine that a particular piece of software
actually cranks out viable results; however, the fact that there are a large
number of other users who ARE validating and improving the code provides us with
a greater sense of confidence than taking some commercial entity's word for
it.
There is another peripheral benefit that is often overlooked:
the user community can be quite diverse. Through forums and mailing lists, a
good deal of support and assistance can be accessed without having to navigate
through some corporate "Help" desk.
Cost and Licensing
Considerations
Note that there's nothing in the definition of OpenSource
software about its cost. Fortunately, many of the OpenSource solutions now available
for engineering applications also happen to be free of any licensing fees (although
this is not always the case). Some of
the OpenSource software that is available for free is restricted to personal-use;
you are not allowed to use it in your commercial engineering practice. Yet many of the best tools we have
encountered are not hindered by restrictive licenses. Still, one must be aware
of such restrictions to avoid ethical violations or possible legal problems.
Although our focus will naturally be upon Free and
Open software, this particular category may not provide a viable solution for
every circumstance. Therefore, we will occasionally swerve off the path to
explore some possibilities that are not free, or that may involve restrictive
licenses. The goal is to identify the most cost-effective tools for engineering
applications. And, of course, part of
the cost that must be considered is the time one must invest in learning how to
use the software. Sometimes, it may be
more cost-effective to bite the bullet and splurge on that fancy commercial
package.
|
Comments rated to be Good Answers:
Comments rated to be "almost" Good Answers: