The Limits of Open Source -
Jet Engine Control Software Won't Go Open Source
My brother manages jet engine control, software development for
the Aircraft Engine Division of General Electric. GE is the
largest manufacturer of jet engines in the world, selling more
than its two primary competitors combined, Pratt Whitney and
Rolls Royce. These competitors sell enough however, that there
is no way to regard GE as a monopoly. Because GE is bigger, it's
reasonable to conclude that it can invest more in it's engine
control software development. As a result GE jet engines are
likely to be better than its competitors.
Ignoring any possible legal issues (anti-competitive collusion),
if one applied open source arguments to this software
application, one would conclude that if GE, Pratt Whitney and
Rolls Royce collaborated on jet engine control software, and made
the results public as open source for scrutiny by other
engineers, the result would be better jet engine control
software. There is no reason to limit this cooperation to software
as most of the arguments regarding software can be applied to
other engineering issues. All three major jet engine
manufactures would make better engines if they shared all their
engineering knowledge. Taking this even further, all this
engineering knowledge could be made publicly available under open
content licensing, which would help the small specialty jet
engine manufactures to make better jet engines too.
There is a major problem with this approach aside from legal. GE
effectively gives up its primary competitive advantages in this
model. What possible, rational reason would one of the most
successful companies in the world have, for giving up its primary
competitive advantages, just so it could make a somewhat better
engine. GE's reason for being is not to make the best possible
jet engine, but to make a profit for it's shareholders.
The market recognizes that GE already makes the best jet engines
in the world. For those who don't know, jet engines are
generally purchased separately from aircraft bodies they propel.
An airline can order a Boeing 747, or most other models, with the
engines from any manufacturer who makes an engine appropriate to
that model plane, typically the big three, GE, Pratt Whitney and
Rolls Royce, for large commercial airliners.
These are not casual consumer purchases influenced by marketing
hype. These are large corporations with knowledgeable staff,
making purchasing decisions in a competitive market. The clear
market preference for GE engines suggest that most buyers think
GE builds better engines for their purposes. That Pratt Whitney
and Rolls Royce remain viable competitors means that their
engines offer enough points of differentiation, that the buyers
of these engines see enough advantages to these products to keep
Pratt Whitney and Rolls Royce in active competition with GE.
I used this example because it meets every test I know of, for a
competitive market working the way it should. There are no first
to market issues: GE claims a 120 year history. F. H. Royce & Co.
was founded in 1884 and became Rolls-Royce Ltd. in 1906. Pratt
Whitney was formed in 1925. All predate jet engines, which are
about 70 years old, by at least 15 years. Primarily however its
a competitive market in which knowledgeable buyers operate. The
buyers aren't free to pick features based on whim; engines must
meet reliability and safety standards, they must deliver necessary
thrust while maintaining good fuel economy (airlines second major
expense after employees), and must operate within certain noise
limits. While there are other methods of defining best, in a
competitive market, clear market leaders are generally accepted as
the best. If you don't like this then don't argue with me;
please take your arguments to the appropriate economic or
political forum. Following the collapse of Communism more than a
decade ago, the majority of the (industrial) world accepted that
some variation on a market economy represented the best way to
organize an economy.
In the short run, the open source / open content model might
result in somewhat improved engines from the three major
manufacturers. It would also likely result in improved engines
from the smaller manufactures as well.
There is also the possibility that the resulting software would
be inferior. Jet engine control software has an intimate
relationship with the hardware it controls. To the extent that
the engines built by the different manufacturers are physically
different, the control software needs to account for these
differences. The software either needs to detect the hardware it
is controlling and dynamically invoke the appropriate code or the
appropriate code needs to be statically linked. In either case
custom code needs to be developed for hardware that is different.
This is analogous to hardware drivers for network and video
cards.
On a PC, it might be OK to use a generic network card driver that
doesn't take advantage of every feature of a specific card but
uses only the lowest common denominator features of the
underlying chip set. On jet engines with critical safety and fuel
efficiency issues, it's not likely a "generic" driver will be
good enough. The jet engine manufacturers surely purchase some
number of subassemblies. Where these happen to be common to all
manufacturers, joint software development is likely to result in
better software. Where different manufacturers have selected
different subassemblies or build their own parts in a different
manner, joint software development will introduce overhead to
account for these differences. Since what we are discussing is
hardware control software in the first place, no one without
access to large amounts of currently proprietary information from
all three companies can even make an educated estimate as to how
joint (open source) software development would impact the quality
of the resulting software. It's pure speculation that the result
would be better software.
What is not speculation is that an open source software
development and engineering model would eliminate most of GE's
competitive advantages over the entire market and the big three's
advantage collectively over the remaining market. Only economy
of scale would be left to the big three, as most of the
proprietary engineering and software knowledge that was
previously their primary basis for competitive advantage, would be
gone.
Assuming initial improvements from sharing, it's not at all
clear that the big three would have any reason to pursue
extremely expensive, further independent innovation as each of
their competitors would gain as much as the innovator, putting
the innovator at a disadvantage because the innovator would have
higher costs. Further, it's pure speculation that the jet engine
industry could coalesce and develop any cooperative development
model that's better than the existing competitive model. Again,
anyone who does not like this should be arguing in an appropriate
economic or political forum, because this is a simple fact of how
the industrial world is organized today and for the foreseeable
future
It's pure fantasy to think that GE would ever cooperate with its
competitors in such a way that GE relinquished it's primary
competitive advantages and a proven profit model to pursue an
arbitrary goal of building a better jet engine than it already
does using an unproven development model. As an airline passenger,
I'd rather ride on planes powered by engines built under the
competitive model than the hypothetical cooperative model that's
under discussion.
The GE example raises a specific example of a more general case.
By definition, the open source model assumes a multiplicity of
user developers. In doing so, it de emphasizes the overhead
involved whenever software is designed to deal with a differing
hardware or otherwise adapt to differing environmental factors
whether they are hardware, software, or network. Anyone who has
done software development knows that complexity increases rapidly
as software is designed to be configurable to work in different
environments. This is nothing other than choices equal
complexity.
The open source movement virtually owes its existence to UNIX. A
fundamental characteristic of UNIX (and most open source
products) is modularity. Relatively small and simple functions
or utilities are put together as needed to adapt to the specific
situation. The only efficient way to do this is with scripts and
scripts are software. Thus UNIX and open source presuppose
unique software that does not lend itself well to the open source
movement.
Every administrator who writes a script and every programmer who
writes a function could make these available via open source
licenses. If you've been in the computer business a significant
period of time you know that after a programmer reaches a certain
level of proficiency with a language, it becomes simpler and
faster for that programmer (or programming team) to develop their
own custom function library than to try to find ready made
functions for every task for which a function is appropriate.
Likewise, system administrators reach a level of proficiency with
their preferred scripting language and knowledge of their
environment that simple custom scripts are written without even
searching for examples.
As problems become more complex, the experienced programmer or
administrator will spend time looking for a ready made solution.
Where the problem being solved really is similar, the joint
development model does make sense but if the problem is unique,
the open source model, by definition cannot provide an answer.
Thus open source makes the best sense where the problem is
complex and shared by many, e.g., operating systems. Even
complex problems, if they are unique will not be solved by open
source methods.
Top of Page -
Site Map
Copyright © 2000 - 2014 by George Shaffer. This material may be
distributed only subject to the terms and conditions set forth in
https://geodsoft.com/terms.htm
(or https://geodsoft.com/cgi-bin/terms.pl).
These terms are subject to change. Distribution is subject to
the current terms, or at the choice of the distributor, those
in an earlier, digitally signed electronic copy of
https://geodsoft.com/terms.htm (or cgi-bin/terms.pl) from the
time of the distribution. Distribution of substantively modified
versions of GeodSoft content is prohibited without the explicit written
permission of George Shaffer. Distribution of the work or derivatives
of the work, in whole or in part, for commercial purposes is prohibited
unless prior written permission is obtained from George Shaffer.
Distribution in accordance with these terms, for unrestricted and
uncompensated public access, non profit, or internal company use is
allowed.
|