[Mono-list] laus stultitia

Steve Mentzer steve.mentzer@mullinconsulting.com
Fri, 18 Oct 2002 11:57:39 -0700

As stated, this subject is **really** off-topic for the purposes of this list. But since everyone is throwing their two euros in, I will to.

The open source model, while far from being a "utopia" has distinct advantages **and** disadvantages. *nix and many other "somewhat open" operating systems have always supported the "compile and use" model for software deployment. While it certainly has advantages (which I won't name), it's main disadvantage is the protection of IP through obscurity.

Western corporate culture simply focuses on the balance sheet. The linux zealot-rags (such as /.) as well as mainstream publications continually inform the techies of this massive "paradigm shift" (i hate that phrase) in corporate america from proprietary unix and Windows systems toward GNU/Linux.

Lets make it perfectly clear that corporations have NOT gone through a cultural shift or "saw the light". They are not interested in open-sourcing their proprietary systems and algorithms. They want to capitalize on the fact that they can deploy Linux on their server farm for 5% of the baseline cost of the proprietary *nix and windows platforms.

It is all about the holy dollar. And they are going to eat up whatever the open-sourcers feed them. Don't delude yourself into thinking that you are appreciated by Joe CEO.

There are two main advantages to the distribution of binary code vs. source.

#1: Ease of use: RPM's, .sit, .sea, .pkg, .zip, .exe installations do not require a competent person to install. Want to install Quicken or Medal Of Honor? Throw your CD in the tray, and click "install". If you can use a mouse, you can do it. Source code distribution, while being the most flexible, is a burden on the common user. Take a look at most header/source/makefiles. They are full of ifdefs and dependency checks. If you system differs in the slightest way, the compile could fail, and the typical target user will be left out in the cold. That is one indisputable fact that is haunting the Linux install base right now!

#2: Binary distribution is a way to protect IP through obscurity. Remember the primary tenet of corporate culture: PROTECT YOUR INVESTMENTS AND MAKE MONEY.

Binary (bytecode) distribution in JIT'ted systems have one huge advantage.

Modern technology has given the jit'ters the ability to dynamically re-link external references during the JIT process, which provides a wonderful buffer against version dependency. Given bytecode obfuscation, they retain the "ease of use" benefits, IP through obscurity, and the flexibility of source code (version independence). You cannot change the assembly to suit your needs, but then again, that is not a requirement for the largest target audience. 

Anyway, I must get back to work. Gotta make a buck for corporate america! :)

-----Original Message-----
From: Hans Van Wesenbeeck [mailto:h.vanwesenbeeck@computer.org]
Sent: Friday, October 18, 2002 11:12 AM
To: Michael Poole
Cc: mono-list@ximian.com
Subject: Re: [Mono-list] laus stultitia

> The question "Is this technology a good thing?" (where the technology
> is bytecode or whatever else you like) is totally different from the
> names one uses for it.  Erik Poupaert complained about the amount of
> detail and the number of divisions in the system, not about the fact
> that the ".NET platform" uses bytecode.  You replied (to Zaphod) with
> a rant about the jargon.
I felt a point was being missed... 
> Any time you have a highly technical application domain, there will be
> jargon specific to it, for reasons that are incredibly off-topic for
> this list and which you (as an IEEE member and computer user) should
> know already.  Would you clarify whether you complain about the use of
> jargon, or the use of the technology it describes?
The terminology that is being adopted, without questioning the
motivations behind the technology it describes. My question is really
how a technology that once again finds its justification in the
dissemination of software in binary form can be compatible with an open
source model, especially when this dissemination model results in an
incredible penalty in terms of performance and complexity, leave alone
the effort it takes to bring it about. I question the meaningfulness and
motivation behind JIT compilation and dissemination of software in
bytecode format.  

Mono-list maillist  -  Mono-list@ximian.com