EditorsAbout the SiteComes vs. MicrosoftUsing This Web SiteSite ArchivesCredibility IndexOOXMLOpenDocumentPatentsNovellNews DigestSite NewsRSS

01.30.10

On Novell, Ubuntu, Microsoft and Mono

Posted in GNU/Linux, Java, Microsoft, Mono, Novell, Search, Ubuntu at 9:09 am by Dr. Roy Schestowitz

Summary: Another exploration of circles of interest that favour Mono

YESTERDAY we wrote about Novell promoting Apple with .NET. The story is in Slashdot under the headline “Novell Bringing .Net Developers To Apple iPad”. It links to this article about Novell supporting the Apple iPad and also about Citrix doing something similar (earlier on we wrote about the possibility of a Citrix/Novell merger).

Anyway, it helps one identify Novell as a promoter not only of .NET but proprietary platforms too. This is not the first evidence of its kind. Novell does not do it directly though. It uses a surrogate of .NET, just as Ubuntu will use a surrogate of Microsoft’s ‘search’ engine [1, 2] (biased against GNU/Linux by design), which led to a lot of debate. The fact that Ubuntu supports both Mono and Yahoo (.NET and Microsoft search by inference) has upset one of our readers, who wrote:

I personally migrated to Linux and FOSS after repeated let downs by Microsoft technology, I am loathed to give my custom to them again until they produce something which can compete with what I use now; thats either directly or indirectly. I am rather disturbed that after years of being dictated to as to how to do things by Microsoft, when I finally break away and get a better experience, I see Microsoft trying to creep into that better experience. Having said that Ubuntu is not on my main rig.

Conversely though, Canonical deserves to make money, as I say Canonical has made a great product that many people enjoy, but they need to keep in mind that whilst they may need revenue to keep “alive”, they are just as dependent on the users to keep with Ubuntu. Now its obvious that to change back to Google is a simple step, but could the perception of Yahoo provide a negative feeling from its user base towards Canonical?

[...]

With Ubuntu seemingly going in a pro-Mono direction, Mr De Icaza getting his MVP & Yahoo getting a default search status, without conjuring up any allegations of foul play, what we can say is Ubuntu seems to have a growing Microsoft theme about it. (Either directly or indirectly)

And what of GIMP? Have we had confirmation if it is definitely to be left out of 10.04 and if so replaced with what? A Mono app perhaps?

It is the Mono part of the situation which repels at times. Groklaw too has responded negatively to Canonical’s attitude when it comes to Mono. Jeremy Allison suggested removing it on numerous occasions [1, 2, 3, 4, 5, 6, 7, 8], but the desktop manager at Ubuntu is a former Microsoft employee, so to explain that Microsoft is a problem might be hard.

Pawel told us yesterday that “it seems someone is lobbying against mono at lkml”. A former employee of Microsoft is using the kernel mailing list to promote his Ubuntu-themed blog (and getting told off by some people for doing this).

Among the text he posted there:

And to the outside community:
* Garbage collection is necessary but insufficient for reliable code. We should move away from C/C++ for user-mode code. For new efforts, I recommend Mono or Python. Moving to fewer languages and runtimes will increase the amount of code sharing and increase the pace of progress. There is a large bias against Python in the free software community because of performance, but it is overblown because it has multiple workarounds. There is a large bias against Mono that is also overblown.

What about Java? Why promote Mono in a Linux mailing list? It is a Microsoft patent trap. We contacted the poster to get further insight*. We had communicated with him in the past and he seems sincere and innocent with his intentions, even though he sometimes publishes GNU/Linux-hostile material (a week ago, for example, he published “Linux Needs to Master Hardware to Beat Windows”, even though Linux has much broader hardware support than Windows or any other platform for that matter).

He told us: “I think Java got old before it got input from the community. And because there were so many runtimes, they couldn’t evolve the language anyway. How did you find that email? I presume you don’t read the insanely busy list, right?”

I told him that someone who reads the mailing list had alerted me, calling it “Mono lobbying”. Then he explained:

I debated putting Mono in there. But it is a codebase built by a quite diverse free software worldwide community. And I think it would be a shame that, after having built it, we throw it away. That is terribly inefficient. We can win any legal battles.

Flash isn’t treated like such a pariah! Unlike Flash, the specs are free, the code is free, it has a lot of runtime and language
tinkerers, etc. It is also good for Python to have competition. Python has no default IDE and debugger and is not JITed, unlike Mono. Python can learn from Mono.

Anyway, my major focus is on moving away from C++ and not moving to 100 different languages and runtimes.

[...]

Oh by the way, that doesn’t mean I support building apps in XAML today. It is fine to separate the big tech pieces out and evaluate them each separately. Likewise, I wouldn’t recommend VB.Net even though it is there.

Given his background at Microsoft, it’s expected that he might be biased, but anyway, it is worth pointing out where advocacy of Mono often comes from. As we wrote here many times before, a lot of pro-Mono pressure comes from former Microsoft employees, some of whom are part of the Mono project.
____
* This hopefully invalidates the myth of bias, as we do try to show other perspectives. We contacted him because we don’t want to write about it without hearing the other side of the story. He permitted us to quote him.

Share this post: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • co.mments
  • DZone
  • email
  • Google Bookmarks
  • LinkedIn
  • NewsVine
  • Print
  • Technorati
  • TwitThis
  • Facebook

If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

Pages that cross-reference this one

9 Comments

  1. dyfet said,

    January 30, 2010 at 10:30 am

    Gravatar

    Java is a perfect cross-platform language and runtime in that it really is very platform agnostic. There is no advantage to creating a Java application on any platform over any other, nor are there tie ins to the way Java applications are created, deployed, and executed, and the expected behavior of any platform.

    Python can be a rather good cross-platform choice as well, though it has some tie in’s to traditional scripting language practices and development concepts found commonly on pretty much all operating systems other than Microsoft Windows. The difficulty of deploying and using Python applications on Microsoft Windows is perhaps further hurt by the fact it is the only widely “in use” platform that does not include Python by default.

    Mono/.NET is the only “claimed” cross-platform solution that has deliberate and deep tie in’s to a specific vendor’s platform characteristics, and hence cannot be described as either platform neutral or agnostic in the same way as the other two. Starting from .exe files and expectations of how what we would normally call shared libraries would not be “shared” but rather bundled with each application (something one better appreciates once reading Debian policies on packaging “Mono” applications), to language libraries and classes strongly to existing and Microsoft specific technologies and libraries, it is NOT a cross-platform technology or platform neutral at all, but when it is represented this way it is like the Trojan horse.

    The real use of Mono could have been in enabling an “off-ramp” for certain ISV’s and people that have been trapped in the Microsoft development world to migrate. Indeed, I think that could have been a worthwhile project goal, even if, like Wine, that methodology might be considered controversial by some, though at least Wine has a legal firewall between their implementation via reverse engineering, and without relying on Microsoft code or agreements.

    But it seems to me those features for Mono which would be most helpful to such a goal are the very ones that deliberately never get developed or completed, while the ones most closely tied to Microsoft patents are the ones worked on and promoted by Novell, while at the same time the Mono team has merged their development with Microsoft ways that clearly does maximize potential legal liabilities in the future, and I mean in ways that may yet prove far more damaging in the long term than even the Novell / Microsoft patent agreement itself, and hence the reason I choose to compare it to how Wine carefully separates itself and contributing developers from such potential liabilities.

    Indeed I once had a very neutral opinion of Mono, as there was a time I was looking for something to use simply for writing a purely cross-platform package. The more deeply you look at using Mono for such purposes, the more problems that rapidly rise out of it, both technical and legal, including some that are immediately obvious, as well as those which can be both short and long term risks.

    Bertrand Reply:

    Quote :
    “expectations of how what we would normally call shared libraries would not be “shared” but rather bundled with each application (something one better appreciates once reading Debian policies on packaging “Mono” applications)”

    I’d like to know what you are referring to.
    The Debian CLI policy states : “Libraries that are installed into the GAC should provide decent ABI stability and be useful for other packages. Otherwise, they should remain private to the package.” (http://pkg-mono.alioth.debian.org/cli-policy/ch-packaging.html)

    dyfet Reply:

    That is a rather selective quoting and refers to native glue libraries. Let’s go to the start of section 3.1.2, file locations, the very sentance before, “The package’s applications, libraries and meta-data must be installed into /usr/lib/upstream_package_name.” that you have ignored as the lead-in sentence before discussing special-case gac libraries.

    This practice is from Microsoft Windows, where everything seems installed in a /Program Files/packagename, and libraries (in this case C# ones) for a package are bundled together with the application rather than shared in a common /usr/lib like location, which is easier when you have freedom to share, such as free software licensing offers. Hence, I feel this is about better supporting proprietary programming practices, and hence contrary to the intent of the Debian social contract.

    NotZed Reply:

    Isn’t this pretty much the standard practice for Java applications too? Again it’s probably related to microsoft windows usage as well, but since there’s no universal ‘package management’ system, cross platform projects don’t have much choice to start with (i’m not sure if javaws addresses this).

    Although it is better, I’m not sure the Linux way is really *that* much better on the whole anyway, particularly the debian idea of splitting out internal shared libraries into separate packages just because they can. Because it takes a huge team of distro maintainers to keep track of the huge number of libraries and versions in use, and keep all the code up to date so you’re not drowning in so many (incompatible) versions of each. And with so many api’s to choose from, there’s not a whole lot of ‘sharing’ going on of the ‘shared libraries’ anyway. e.g. out of the 275(!) loaded shared libraries i have on this system (admittedly not running much), 136 are only used by 1 process, with only 32 used by 10 or more (and they’re the sort of system-stuff provided by any operating system so wouldn’t need to be packaged). Hate to imagine if I fired off a random kde app that I rarely use ontop of that.

    AmigaOS was about the only OS I know of that made shared libraries work effectively for code re-use. Partly because much was provided in the OS, so everyone used it (i.e. the 1 graphics library, not 10 different ones, the 1 font library, not 5, etc), and after a few misteps with the gadget toolkits, it moved to a more extensible architecture, like having single gadgets (widgets) in separate libraries. And since libraries were a bit funky to write, had a strict policy of backward compatibility, and only 1 version of a library could ever be loaded into the system globally – when people wrote shared libraries they wrote them with the intention of re-use by anyone, not just as a way to package up a few common utility routines.

    But even this failed in the end to some extent since it is impossible to plan ahead so far into the future that you wont end up supporting so much baggage eventually that you need to clean it out. Even the best designed interface needs an overhaul once in a while.

    Bertrand Reply:

    I think you are mistaken :
    My quote is from section 3.2, and is about all libraries for the CLR (not native libraries).

    The whole point of the GAC is to share libraries while managing versionning issues.

    When referring to “the package’s [...] libraries”, I think it is implied that they are not shared libraries.

    It seems that for application-specific libraries that are of no interest for any other application, installing them under /usr/lib/application-name/ is common practice : for example there’s quite a lot of .so files under /usr/lib/gimp/ on my system.

    dyfet Reply:

    That might well be, but it was clearly the impression I received when originally reading the Debian policy for Mono as a whole. Also many applications do install even private libraries in /usr/lib. Some use a private /usr/lib/xxx path when they need a place to drop plugins, but that is different. The Mono packaging policy still points out some unnatural aspects of making Mono packages work based on problems introduced in (characteristics of) the original platform. Java, by contrast, is actually more straight-forward to package applications for on Debian as well as being truly platform agnostic. In some ways, Python apps I think can also be a bit difficult to package, but this is a consequence of the way that bytecode is generated and cached at install time.

    Dennis Murczak Reply:

    Yes, Java is probably the most platform agnostic. Desktop integration is a problem however IIRC because it uses its own widget toolkit. I would rather use Python for a desktop GUI, and Python with cross-platform C/C++ libraries for a game or professional app. Both are nice for writing something web based though. I’d really like Java to kill Flash in terms of browser based gaming.

    dyfet Reply:

    I am guessing you might suggest something like python with qt or wx, and either can be used to write great cross-platform gui solutions that are also great for freedom. The only platform again it seems difficult to produce a simple, cohesive and consistent application install without having the application effectively bundle and become responsible for python and a gui library seems to be Microsoft Windows. Since I do not use that platform, maybe this problem has been solved?

    Roy Schestowitz Reply:

    WebGL might contribute towards that.

What Else is New


  1. Diversity and Inclusion: When Corporations Hijack or Co-opt Social Causes

    Whether minorities care to realise it or not (each person is a minority in one particular place/context or some particular aspect), corporations seek to control the narratives surrounding popular movements, facilitating social control and thus corporate power (exercising control over nonprofit communities that cannot be bought)



  2. Thirteen Years of Techrights This Year

    We're the survivor of a dying breed of sites, which are largely dedicated to FOSS-centric news



  3. Tell Lawyers That 'Privilege' Without Encryption is Just a Mirage

    The sad truth that law firms claim to respect privacy and security; they do in principle, whereas in practice they respect neither



  4. Links 25/8/2019: Happy Birthday to Linux, Enlightenment DR 0.23.0 Release

    Links for the day



  5. Openwashing Report: It's Not Just Microsoft, But Microsoft is by Far the Biggest Facilitator of That

    A weekly roundup looking back at distortion if not intentional misuse of the term "Open Source"; Microsoft is still working hard and spending a lot of money to control the narrative (e.g. to limit "Open Source" to what's on its proprietary platform, GitHub)



  6. Patent Maximalists Refuse to Accept That Their War on Patent Quality Also Dooms a Pan-European Patent Court System

    The EPO‘s embrace of patent maximalists’ agenda, which necessarily means significant decreases in patent quality (and deviation/departure from the EPC), dooms patent certainty; it also, however, dooms the Unitary Patent (UPC) because an extension of this rogue regime to the court system won’t be tolerated



  7. Links 24/8/2019: Wayland’s Weston 7.0 and More

    Links for the day



  8. Outsourcing to Microsoft and Openwashing as a Service (OaaS): This is the Linux Foundation in 2019

    The concept of "Open" at the Linux Foundation gives room for thought; are things really being opened or mostly marketed as "Open" and, if so, is the Foundation more like a marketing agency?



  9. Links 23/8/2019: Wine 4.0.2 Released, Removing Qt 4 From Ubuntu

    Links for the day



  10. Links 22/8/2019: KDE ISO Image Writer, GNU Parallel ‘Jesper Svarre’

    Links for the day



  11. Guarding and Rescuing the FSF Titanic: A Free (as in Freedom) Library, and Federation of Advocates

    "This library is not just for cultural works, but also for software."



  12. Linux Foundation's Linux.com in 2019: Zero Articles (Nothing Original) and a Terrible, Rookie New Design

    Linux.com has become a curated syndicator of news (edited by one single Microsoft proponent); the site has also eliminated its traditional design in favour of something only 'hipsters' can appreciate



  13. Managing IP as Team UPC's Megaphone and Lobbying Front

    Managing IP is lying on behalf of Team UPC yet again; the site's long history promoting the UPC hasn't ended even when prospects of the UPC are slim to none



  14. No More Rights for EPO Staff?

    The oppression and the crackdown on labour rights in Europe's second-largest institution has deepened to the point where staff is paid as little as is legally possible



  15. Links 22/8/2019: GNOME 3.33.91, Systemd 243 RC2, Cockpit 201, Ubuntu Touch OTA-10, FreeIPMI 1.6.4

    Links for the day



  16. Some Patent Attorneys Dislike Techrights Not Because It's Wrong But Because Software Patents Are Wrong (and Sometimes Illegal)

    Odd rants which misuse common law and ignore alleged Fair Use (and misinterpretation of copyright law, for censorship purposes) would have people believe that we're wrong; but it's more likely that the person in question is jealous, insecure, or offended by our stance on patent scope, which is very much rooted in the law itself (and the views widely held by software developers globally)



  17. Guarding and Rescuing the FSF Titanic: Distro-libre and feature-schema

    "Every time a distro does not suit a user's purposes, and it is less work to adapt the distro on one's own than to affect the distro in any other way, a distro is born."



  18. Links 21/8/2019: Dell's XPS 13, Mesa 19.2 RC1, Librem Update

    Links for the day



  19. Links 21/8/2019: Open Source POWER, Alpine 3.10.2, Netrunner 19.08

    Links for the day



  20. Edward as a Nodder to Team UPC Kool-Aid

    Bristows LLP is at it again and it's getting pathetic, not just dishonest as usual



  21. Guest Post: António Campinos' European Patent Office Redefines Modern Slavery in the Heart of Europe in 2019

    The European Patent Office’s (EPO) President António Campinos — like his predecessor Battistelli — emulates Chinese labour practices



  22. Guarding and Rescuing the FSF Titanic: There is More Than One Iceberg Ahead

    "This strategy is not far from when Microsoft talked about "de-commoditizing protocols" in the late 90s, as part of their plans to control, dominate, and end Open Source and Free software."



  23. EPO Cannot Handle Patent Justice With a Backlog of About 10,000 Cases at the Boards of Appeal

    The EPO's long war on judges and on the law has proven to be costly; it's difficult to pretend that the EPO functions like a first-world legal framework



  24. The European Patent Office Increases Surveillance: Can't Get Food Without Being Spied on

    The infamous "War on Cash" has been 'won' at Europe's second-largest institution, where people's diet can now be monitored and indefinitely retained on the system



  25. To GNU/Linux, the Operating System, GAFAM (Google, Apple, Facebook, Amazon, Microsoft) is Not the Threat. Microsoft is.

    Don't let Microsoft get away with its bogus narration; GNU/Linux is primarily under attack from Microsoft, whereas Software Freedom in general is under attack from many directions



  26. The Free Software Foundation (FSF) Has the Full Support of Techrights

    Our support for the FSF is strong enough that we want to occasionally suggest improvements; there are growing frictions designed to isolate the FSF and cause self-restraint/censorship



  27. Why We Support Phoronix (Whereas Some Others Do Not)

    Some people try to characterise Michael Larabel as the 'bad boy' of Linux even though Michael is probably the hardest working Linux journalist out there



  28. Guarding and Rescuing the FSF Titanic: The Simplest Ways that AI will Change Computing

    "AI is already used to help kill people. We should be cautious, and know that the best rules we come up with (like no doing magic outside the school grounds) won't be followed all the time."



  29. Links 20/8/2019: DragonFlyBSD Developing DSynth

    Links for the day



  30. Guarding and Rescuing the FSF Titanic: Narcissism in The Community

    "Narcissists are drawn to intelligent people. They take great pleasure in attacking, controlling and defeating intelligent people because it makes them feel smarter and more important."


RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

Recent Posts