A long time Windows column editor emphasizes an old claim that MONO is platform neutral. In it he cites a favorite de Icaza claim:
First, claiming that MONO is "platform neutral" is total nonsense. MONO is more than "joined at the hip" with .NET. It IS .NET. It even includes parts of .NET that are not under the ECMA 334 &335 (WinForms, ADO,. ADP, etc..) and subject, at Microsoft's convenience, to IP lawsuits. MONO is at 2.4.2. Microsoft is about to release .NET 4. So MONO isn't even current with .NET and applications built with MONO could not technically compete with similar .NET applications because .NET programmers can use capabilities added to .NET that won't be in MONO for years, if ever. The whole purpose of the "Glimps of the future...?" thread was to point out that Microsoft added patented COM changes to SilverLight 4 specifically to block MONO on Apple's applet store, after having allowed Apple users to become dependent on MONO/MoonLight based iPhone applets.
.NET is Microsoft's API. MONO is a .NET clone. It is, therefor, Microsoft's API. And, as creator and first manager of the Technical Evangelist group at Microsoft said, "Any code written to Microsoft's API is a WIN for Microsoft...".
de Icaza's second claim, people who appose MONO don't write code, is ludicrous. For that to be true, EVERY FOSS coder would have to be a MONO coder as well, and that is certainly false. MONO is apposed by many, some could say even MORE, FOSS coders who contribute to the Kernel and various GTK and Qt FOSS projects. Even the owner of BN writes software, albeit for his doctoral thesis on medical imaging software. That claim also assumes that ONLY MONO coders have a right to discuss MONO being on Linux. Those who contribute their time (testing, bug reporting, documentation writing) or their money to FOSS aren't entitled to have a say in MONO being on the platform unless, of course, they agree with de Icaza's goal of making the Linux destop dependent on Microsoft's API. The is a position of extreme hubris.
It is not surprising that coders who do not agree with making the Linux desktop dependent on MONO wouldn't go to MONO conferences, or attend MONO adjunct meetings being held at FOSS conferences. Why should they? Then to claim they are "not part of the community" begs the question: which community? The Linux community or the MONO community? The two communities may have some SMALL overlap, but that does not make them equivalent.
Finally, de Icaza claims that those who appose MONO have taken an "extreme position", and so "there's no room for working to a solution". Consider the extreme position claim. Prior to Novell purchasing de Icaza's coding business, and then Novell forming an alliance with Microsoft, MONO was nothing more than de Icaza's experiment with Microsoft's technology, if it was just an experiment. Prior to November 2, 2006 there existed NO major political move to force MONO into Linux and to hijack the GNOME desktop. ALL of the major pro-MONO activity has taken place since Novell & Microsoft began working together to divide and conqueror the Linux community. MOST of the pro-MONO advocates masquerading as Penguins are developers (private or commercial) who prefer and still use Windows as their platform, and see MONO as a method to sell their .NET shareware in a market that owns over 12% of the desktop market share, and growing. The most active pro-MONO folks are employees of firms that use ./NET as their development tool, and have purchased seats on the Ubuntu Advisory Board.
To refresh your history of the "deal", refer to it at: http://www.novell.com/linux/microsoft and notice the occurrence of the word "royalty", and the dichotomy between those who are threatened by lawsuits (coders whose GPL code doesn't make it into SLES) and those who are not (coders whose code does enter the commercial version of SUSE). Why the difference? ROYALTIES paid to Microsoft by Novell for each copy of SLES sold. Said royalty payments "bridge the IP gap", according to Ballmer, and in his mind "proves" IP violations by Linux. By his refusal to dispute those claims Hovsepian gives the consent of silence. The video gives good visual indications of what is the intent of the participants.
I ask you to read that because those who use MONO on SUSE Enterprise Linux Server have protection from a Microsoft lawsuit for using components of MONO which are not under the ECMA. Those who use OpenSUSE or any other distro are NOT protected from an MS lawsuit. If work on making Ubuntu dependent on MONO continues I predict that Microsoft will allow it to continue UNTIL such dependency is too deep to casually remove. Then they will sue.
With the current condition of MONO, what "solution" would work to the advantage of FOSS and Linux? None. What solution would avoid the IP threat? None. One can also ask "what is the problem on Linux that MONO is the solution to?" The claim by MONO coders is that MONO is the best development tool available to Linux. That claim is obviously bogus. IF MONO were the best then why do they need GTK# bindings for MONO in order to make graphical interfaces and dialogs with their apps? Why are they always behind .NET on Windows? Obviously because of patent concerns. The gcc, gdb and the GTK2+ API have given Ubuntu an excellent GNOME desktop, Thunderbird, FireFox, VLC, and many other excellent applications. ALL of it is under the GPL and is free of any known, valid or putative IP threat.
In addition to GTK, there is Qt4. The latest KDE4 is a fantastic desktop. It is, IMO, superior to any Windows or Apple desktop I have ever used. It is what VISTA wanted to be and copied much of. QtCreator & Qt4 is even more powerful and better integrated into a single GUI RAD development tool than any other on the planet. I used MS VC++ 6.0 at work for several years. It doesn't hold a candle to Qt/QtCreator. Of course, that is just my opinion, based on my experience and my preference. Those are the exact same reasons why Windows developers choose MONO, instead of Visual C++, VisualFoxPro, or other GUI RAD tools available on Windows. (Which, although they say are "VISUAL" and OOP, aren't necessarily either visual or OOP.)
MONO enthusiasts claim that they can write once and compile and run on any platform and that MONO is RAD (Rapid Application Development). While developing with GTK on Windows is possible using MinGW compiler and imported Linux utilities, the GTK/Windows combination is klutzy at best and not RAD. QT4, on the other hand is both write once, run anyware AND GUI RAD. It is also unencumbered by IP threats or in need of bindings to make up for abilities it does not have. Java is still universal. It is still state of the art.
.NET was created to compete against Java and its jvm (java virtual machine) and jit (just in time compilation). MONO/.NET use a vm and a jit, which, they claim, runs MONO/.NET apps as fast as a natively compiled C or C++ app. I was on SecondLife before they switched to the MONO powered engine. Quite frankly, running MONO, I see NO improvement in SecondLife's speed or in the number of avatars which can occupy a sim before it lags into uselessness. The limit was 70 before MONO is still is after MONO. The most frequent complaint on SL is "lag, lag, lag, lag, lag" surrounded by a flood of profanity. .NET's solution for the London Stock Exchange was FIVE TIMES SLOWER than existing stock market trading applications running under Linux, which the LSE has now purchased to replace their .NET "solution". Java is still around on Linux and Windows and with the many available GUI RAD front ends it is yet another GUI RAD tool in which one can write once and use on any platform. A skilled Java developer has no trouble matching the development speed of a skilled MONO developer. I have an application called DRUID II, which is a java jar file that runs on either Linux or Windows without changes, if one has the Java jvm installed on the platform. It allows me to design, create, manage, edit and document a variety of database back ends, graphically. To run it on any platform I issue
java -jar druidii.jar
It is a classic example of a cross platform application built with Java. I used it to export my Oracle dbs to PostgreSQL, and visa-versa.
Here is my workable solution for using MONO on Linux. Microsoft should do with .NET what TrollTech did with Qt. Put ALL of .NET under the ECMA 334 & 335 standards, and the Community Promise, including future developments, just as TrollTech did with Qt under the GPL, and then I will have NO problem with MONO being on Linux or of a MONO powered desktop. Otherwise, MONO is represents a valid IP patent concern for Linux users.
Programmers are people with strong opinions. Some people would like more Python or Java; more power to you. Use what you want! But people like [the anti-Mono advocacy group] Boycott Novell do not write a single line of code, so I think there's advocacy coming from people who do not contribute in any real way. They don't even come to the conferences; they're not part of the community in a substantive fashion.
"I'm open to fixing any issues that Mono has. I don't say that Mono is bug-free. They seem to have a more philosophical issue; that Mono is a Microsoft-derived technology, and anything from Microsoft is the devil. I don't think it's a very intellectually honest debate if you start off on that position. And the problem I have is that once you take an extreme position, there's no room for working to a solution."
"I'm open to fixing any issues that Mono has. I don't say that Mono is bug-free. They seem to have a more philosophical issue; that Mono is a Microsoft-derived technology, and anything from Microsoft is the devil. I don't think it's a very intellectually honest debate if you start off on that position. And the problem I have is that once you take an extreme position, there's no room for working to a solution."
.NET is Microsoft's API. MONO is a .NET clone. It is, therefor, Microsoft's API. And, as creator and first manager of the Technical Evangelist group at Microsoft said, "Any code written to Microsoft's API is a WIN for Microsoft...".
de Icaza's second claim, people who appose MONO don't write code, is ludicrous. For that to be true, EVERY FOSS coder would have to be a MONO coder as well, and that is certainly false. MONO is apposed by many, some could say even MORE, FOSS coders who contribute to the Kernel and various GTK and Qt FOSS projects. Even the owner of BN writes software, albeit for his doctoral thesis on medical imaging software. That claim also assumes that ONLY MONO coders have a right to discuss MONO being on Linux. Those who contribute their time (testing, bug reporting, documentation writing) or their money to FOSS aren't entitled to have a say in MONO being on the platform unless, of course, they agree with de Icaza's goal of making the Linux destop dependent on Microsoft's API. The is a position of extreme hubris.
It is not surprising that coders who do not agree with making the Linux desktop dependent on MONO wouldn't go to MONO conferences, or attend MONO adjunct meetings being held at FOSS conferences. Why should they? Then to claim they are "not part of the community" begs the question: which community? The Linux community or the MONO community? The two communities may have some SMALL overlap, but that does not make them equivalent.
Finally, de Icaza claims that those who appose MONO have taken an "extreme position", and so "there's no room for working to a solution". Consider the extreme position claim. Prior to Novell purchasing de Icaza's coding business, and then Novell forming an alliance with Microsoft, MONO was nothing more than de Icaza's experiment with Microsoft's technology, if it was just an experiment. Prior to November 2, 2006 there existed NO major political move to force MONO into Linux and to hijack the GNOME desktop. ALL of the major pro-MONO activity has taken place since Novell & Microsoft began working together to divide and conqueror the Linux community. MOST of the pro-MONO advocates masquerading as Penguins are developers (private or commercial) who prefer and still use Windows as their platform, and see MONO as a method to sell their .NET shareware in a market that owns over 12% of the desktop market share, and growing. The most active pro-MONO folks are employees of firms that use ./NET as their development tool, and have purchased seats on the Ubuntu Advisory Board.
To refresh your history of the "deal", refer to it at: http://www.novell.com/linux/microsoft and notice the occurrence of the word "royalty", and the dichotomy between those who are threatened by lawsuits (coders whose GPL code doesn't make it into SLES) and those who are not (coders whose code does enter the commercial version of SUSE). Why the difference? ROYALTIES paid to Microsoft by Novell for each copy of SLES sold. Said royalty payments "bridge the IP gap", according to Ballmer, and in his mind "proves" IP violations by Linux. By his refusal to dispute those claims Hovsepian gives the consent of silence. The video gives good visual indications of what is the intent of the participants.
I ask you to read that because those who use MONO on SUSE Enterprise Linux Server have protection from a Microsoft lawsuit for using components of MONO which are not under the ECMA. Those who use OpenSUSE or any other distro are NOT protected from an MS lawsuit. If work on making Ubuntu dependent on MONO continues I predict that Microsoft will allow it to continue UNTIL such dependency is too deep to casually remove. Then they will sue.
With the current condition of MONO, what "solution" would work to the advantage of FOSS and Linux? None. What solution would avoid the IP threat? None. One can also ask "what is the problem on Linux that MONO is the solution to?" The claim by MONO coders is that MONO is the best development tool available to Linux. That claim is obviously bogus. IF MONO were the best then why do they need GTK# bindings for MONO in order to make graphical interfaces and dialogs with their apps? Why are they always behind .NET on Windows? Obviously because of patent concerns. The gcc, gdb and the GTK2+ API have given Ubuntu an excellent GNOME desktop, Thunderbird, FireFox, VLC, and many other excellent applications. ALL of it is under the GPL and is free of any known, valid or putative IP threat.
In addition to GTK, there is Qt4. The latest KDE4 is a fantastic desktop. It is, IMO, superior to any Windows or Apple desktop I have ever used. It is what VISTA wanted to be and copied much of. QtCreator & Qt4 is even more powerful and better integrated into a single GUI RAD development tool than any other on the planet. I used MS VC++ 6.0 at work for several years. It doesn't hold a candle to Qt/QtCreator. Of course, that is just my opinion, based on my experience and my preference. Those are the exact same reasons why Windows developers choose MONO, instead of Visual C++, VisualFoxPro, or other GUI RAD tools available on Windows. (Which, although they say are "VISUAL" and OOP, aren't necessarily either visual or OOP.)
MONO enthusiasts claim that they can write once and compile and run on any platform and that MONO is RAD (Rapid Application Development). While developing with GTK on Windows is possible using MinGW compiler and imported Linux utilities, the GTK/Windows combination is klutzy at best and not RAD. QT4, on the other hand is both write once, run anyware AND GUI RAD. It is also unencumbered by IP threats or in need of bindings to make up for abilities it does not have. Java is still universal. It is still state of the art.
.NET was created to compete against Java and its jvm (java virtual machine) and jit (just in time compilation). MONO/.NET use a vm and a jit, which, they claim, runs MONO/.NET apps as fast as a natively compiled C or C++ app. I was on SecondLife before they switched to the MONO powered engine. Quite frankly, running MONO, I see NO improvement in SecondLife's speed or in the number of avatars which can occupy a sim before it lags into uselessness. The limit was 70 before MONO is still is after MONO. The most frequent complaint on SL is "lag, lag, lag, lag, lag" surrounded by a flood of profanity. .NET's solution for the London Stock Exchange was FIVE TIMES SLOWER than existing stock market trading applications running under Linux, which the LSE has now purchased to replace their .NET "solution". Java is still around on Linux and Windows and with the many available GUI RAD front ends it is yet another GUI RAD tool in which one can write once and use on any platform. A skilled Java developer has no trouble matching the development speed of a skilled MONO developer. I have an application called DRUID II, which is a java jar file that runs on either Linux or Windows without changes, if one has the Java jvm installed on the platform. It allows me to design, create, manage, edit and document a variety of database back ends, graphically. To run it on any platform I issue
java -jar druidii.jar
It is a classic example of a cross platform application built with Java. I used it to export my Oracle dbs to PostgreSQL, and visa-versa.
Here is my workable solution for using MONO on Linux. Microsoft should do with .NET what TrollTech did with Qt. Put ALL of .NET under the ECMA 334 & 335 standards, and the Community Promise, including future developments, just as TrollTech did with Qt under the GPL, and then I will have NO problem with MONO being on Linux or of a MONO powered desktop. Otherwise, MONO is represents a valid IP patent concern for Linux users.
Comment