‘We had some painful experiences with C and C++, and when Microsoft came out with .NET, we said, “Yes! That is what we want.”‘
–Miguel de Icaza, October 2008
I agree wholeheartedly with Groklaw, which wrote: “It’s hilarious to see the push on “Linux” named sites to push Mono lately. But if you are like me and want to avoid Mono, the list will help you. If you use Mandriva, avoidance includes noticing the automatic updates offered and unchecking the ones that relate to Mono, if you have update set to offer everything there is, not just updates to what you have installed.”
“We have already seen Novell ‘gagging’ journalists or pressuring them to cover Novell news, so this is definitely worth a quick review.”Where is all that coverage coming from anyway, and why? If a lot of people cover Mono, there will be this illusion that it’s liked and accepted by many. We’ll try to explore this situation and find some answers later in this post. We have already seen Novell 'gagging' journalists or pressuring them to cover Novell news, so this is definitely worth a quick review.
Having asked Microsoft for Mono patent licences, we are saddened to inform that we received no response. We can wait though. Maybe Microsoft is doing the ‘patent math’ to produce a bill for us
[sarcasm /]. Why does Novell obtain 'protection' for Mono anyway? We’ll continue to pursue this question until we have some hard answer.
Last night we received a headsup from a reader, who found suspicious in the following page the inclusion of contributors: “jeff stedfast ,joe, miguelito.”
There is actually a much larger list in there and it includes C.J. Collier, a Microsoft consultant who always hangs out in our IRC channel. It’s suspicious. Anyway, also pointed out was the inclusion of “patented winforms using Mono.” We wrote about WinForms before, in a variety of different contexts in fact [1, 2, 3]. Didn’t Miguel de Icaza say that code will be removed where it is known to infringe on patents? Microsoft patents in particular?
The Mono page says:
Windows.Forms: New Controls
Mono 2.0 contains an API complete implementation of .Net’s System.Windows.Forms (winforms) namespace, allowing winforms applications to run on Linux, MacOX and other Unix systems.
Thank you to everyone on the winforms team (past and present), everyone who has contributed code to winforms, and everyone who has submitted bug reports, helping to make winforms (and Mono!) what it is today!
Look at this one: US patent, owned by and granted to Microsoft.
Winforms control hosting in unmanaged applications
Geoffrey Charles Darst et al
Systems and methods for hosting managed code controls within unmanged hosts, such as MICROSOFT Word and Excel. There are two components to the hosting architecture, a wrapper control that implements various interfaces and a container control that hosts the managed code control. A design-time implementation allows for a designer to drag and drop managed code controls onto documents that run in a design component process. A runtime component allows managed code controls to run within hosts under security permissions specified by a policy.
Application number: 11/148,620
Publication number: US 2006/0282817 A1
Filing date: Jun 9, 2005
Inventors: Geoffrey Charles Darst, Eric Hyde Carter, Michael Shneerson, Stephen James Styrchak
Assignee: Microsoft Corporation
Is this one relevant at all? If not, there are plenty more candidates. It’s a bad neighborhood to play in.
A Question of Control
As we stressed before, s/he who seizes the API will subsequently make the rules. Also, from the Mono FAQ:
Should GNOME programmers switch over to Mono now?
Yes, we believe that Mono 1.0 is ready to be used as the main development platform for building applications for the GNOME desktop. Mono includes Gtk# a .NET binding for GTK+ and various GNOME libraries which together with C# and the System libraries provide developers with great productivity for building graphical applications especially when compared to GTK+ or Java Swing.
Wonderful. Where is Jeff Waugh when he’s needed? He said there was no intention to have Mono enter GNOME (dependence in particular), yet according to Novell, which is bashing GTK and Java as usual [1, 2, 3, 4, 5], GNOME developers should turn to Microsoft’s intellectual monopolies to (re)build the Free desktop. You can’t make this stuff up!
Anyway, as promised, here is a rundown through some of the coverage Mono received.
A Glance at the Hype
No company other than Novell Incorporated was the one to pay for a press release touting Mono. Not so long afterward it hit the wires and even reached Trading Markets. The headline was: Stockwire.com: Novell (Nasdaq: NOVL) just released some important news.
Wow! Important news. Got to cover it then, right? Here is ‘the scoop’
Novell (Nasdaq: NOVL), just announced Mono 2.0 for Cross-Platform Microsoft .NET Development
Then came the OSS/Linux journalists, believing this thing was innocent and important enough to be worth coverage. Sean wrote: Is .NET on Linux Finally Ready?
Novell releases Mono 2.0 with compatibility for Microsoft .NET 2.0 but Novell execs admit it still some catching up to do.
It clearly says in the opening sentence that “Novell execs admit it still [has] some catching up to do.” Well, so why not use something complete then? Like….. err….. Java, anyone? Has GNU/Linux run out of programming languages and frameworks? Why embrace Microsoft, a sworn enemy of Free(dom) software, whose framework snubs GNU/Linux? Why use a poor copycat that’s owned by Microsoft’s close partner, Novell?
Eric Brown and Henry Kingman wrote about this too and Henry later published an interview with Miguel de Icaza. We covered it earlier in the week.
Mono is a from-scratch implementation of Microsoft’s .NET runtime and application development framework. Novell acquired the technology with its 2003 purchase of Ximian, a start-up co-founded by Mono project instigator Miguel de Icaza.
That sentence is interesting because Novell called Ximian a "red carpet". Red carpet to Microsoft maybe?
Following this initial ‘flock’ there were several more articles about Mono, including:
DaniWeb: Linux Has Mono
Today the Mono Project released the much-anticipated Mono 2.0 for Linux. After two-and-a-half years in development, Mono 2.0 is finally here and ready to run your .NET 2.0 applications, Windows Forms, ASP.NET content on Mac OS X, BSD and Linux. Mono is multi-language capable–choose your own path from C#, VB, Java, PHP, Python, Ruby, Eiffel, F#, Oxygene and more.
Ars Technica: Mono 2.0 released, brings C# 3.0 to Linux and Mac OS X
Windows.Forms in 2.0 offers improved implementations of the .NET DataGridView and ToolStrip/Strip controls. It also includes support for the SplitContainer table and flow layouts. A growing number of C# applications developed for Windows can now work on Linux and other platforms supported by Mono without requiring recompilation.
Other features include the Mono Tuner which is a tool to apply arbitrary user-defined transformations to assemblies. Mono uses this library to produce the Silverlight core libraries from the main system libraries and the Mono Documentation tools framework has been upgraded to support documenting generics and extension methods. The tools can be used to produce online and offline documentation for any any APIs, and are used by the project to document our own APIs.
Phoronix: Mono 2.0 Platform Released
For those using Mono to run F-Spot, Banshee, and other C# and .NET programs, you may be pleased to know that Mono 2.0 has been released.
Charles Babcock at InformationWeek: Mono 2.0 Brings Microsoft C#, .Net To Linux
Mono, the project that brings Microsoft’s C# and .Net to Linux, has released version 2.0 of its development framework. The framework provides a runtime system for C# and Visual Basic code to run on the Linux operating system instead of Windows, although it doesn’t attempt to duplicate the complete .Net environment.
Mono 2.0, the open source implementation of Microsoft’s closed source .NET framework has been released. Mono 2.0, unlike .NET, runs on Unix, Mac OS X and other non-Windows platforms. Version 2.0 has C# 3.0 and LINQ (Language Integrated Query) built into the Mono framework, bringing Mono closer to the current state of .NET 3.5.
The Mono Project, which develops an open source implementation of the .Net Framework, released the long-awaited 2.0 version on Monday.
Mono 2.0 offers complete API compatibility with ASP.Net and Windows Forms applications, and is compatible with desktop and server components of Microsoft’s 2.0 version of its .Net Framework.
The Register: Mono delivers Foundation-free open .NET alternative
The open-source implementation of Microsoft’s .NET is due to hit its second release today, with many .NET 3.5 features and a few notable exceptions.
Dr. Dobb’s: Mono 2.0 Released
The Mono project, an open source initiative sponsored by Novell, today announced the availability of Mono 2.0, an open source, cross-platform .NET development framework. Mono 2.0 provides all the necessary software to develop and run .NET client and server applications on Linux, as well as other operating systems. The new Mono 2.0 release is now compatible with the desktop and server components of version 2.0 of the Microsoft .NET framework and features the Mono Migration Analyzer (MoMA), an analytical tool for .NET-to-Linux migrations
Mono also uses Microsoft-compatible bindings to ADO.NET for sequential data operations, Windows.Forms for building basic dialog boxes and control panels, and such familiar APIs as System.XML and System.Drawing.
OStatic: Mono Project Releases 2.0
People often think of open source as being purely a Linux and BSD thing. Perhaps they’re aware of open source on OS X as well, but in general Windows is seen as hostile to open source. And at the heart of the hostility surely must be Microsoft’s proprietary .NET framework, right? But no: the Mono Project provides a cross-platform, open source implementation of .NET. Version 2.0 was released this week, and it has matured into a serious development framework.
Mono 2.0 can be run on a range of operating systems including Linux, Windows and Mac. Mono 2.0 can be downloaded for free.
There is either some pressure to create this level of hype or simply some sort of ‘cattle effect’ (like the naked emperor). Some blogs and other Web sites covered this too. Paula Rooney included it only in this roundup
As one ought to expect, some of the most vocal promoters of Mono are existing or former Microsoft employees, who are happy about Mono. It makes .NET more widespread, at the expense of Microsoft’s competition that it was never able to defeat. Java, for instance, leads by a long shot, according to Evans Data Corporation and Java is already GPL licensed.
Let’s assume for a moment that Microsoft is, at least in part, involved in this Mono push. Here, for example, you can find MindTouch cited as an example (‘case study’), but it doesn’t say anything about the company’s roots in Microsoft.
“Aside from the great Gtk# applications that are now available on the Linux platform, such as Banshee and GNOME Do, Mono is also seeing wide deployment on the server through ISVs such as MindTouch, which is built on Mono, and sees more than 90 percent of deployments of its Deki collaboration platform on Linux,” Hill said.
MindTouch was mentioned in some other news articles. Just because ex-Softies adopt Mono doesn’t mean it’s ‘safe’. Just because a Microsoft partner (Novell) sponsors Banshee doesn’t mean it’s naturally being selected.
Here is a former Microsoft employee blogging about Mono in ZDNet.
Not being privy to analysis on the issue that I’m sure must have been done by some team within Microsoft, I can’t say what kind of effect a truly cross-platform, fully-supported .NET runtime would have on Windows operating system sales. On the other hand, there has to be some value to be derived from giving Microsoft more heft in the cross-platform API space.
Here is another “Microsoft-centric” product that makes use of Novell’s Mono. From this new article:
SplendidCRM Launches 2.1 on Mono/Linux
SplendidCRM Software, a vendor of Microsoft-centric Customer Relationship Management (CRM) products for open-source use, has announced the launch of Version 2.1 of its flagship platform SplendidCRM on the Mono/Linux platform.
The Microsoft universe sure benefits from Mono.
This new headline is amusing or at least slightly baffling:
Open source Microsoft .net platform available today
The open-source implementation of Microsoft’s .net development platform is expected to be released today.
Whose platform is it anyway?
Here is a new article about the Novell-sponsored Banshee, which is based on Mono.
Watch some comments in the following article about Mono and de Icaza. Watch how the writer, Bruce Byfield, goes out of his way and actually joins the commenters in attempt to defend de Icaza and Mono from many critics. This is hardly surprising, but it’s a rarity.
De Icaza acknowledges that Mono may always be struggling for parity. “Microsoft is always going to have some APIs we want to get our hands on — but, for that matter, so will other people. There’s always going to be some APIs we want to have.” However, he points out that parity goes both ways, and, given Mono’s support for projects such as D-Bus, it is also true that “Microsoft has a lot of catching up to do with us,” although he admits that such a comment is “probably a stretch.”
Mono 2.0, a major new version of Novell’s open source .NET implementation, was released earlier this week. After I wrote about some of the new features, I got responses from readers who were looking for a way to try the new release without having to compile the code or install new packages on their production systems. If you want a simple and easy way to try Mono 2.0, check out the new Live CD.
The ISO file is installable Live CD image of OpenSUSE 11 that includes Mono 2.0, the MonoDevelop IDE, the MoMA migration tool, and a collection of WinForm demos. It also includes recent versions of popular Mono-based GNOME applications such as Banshee, Tomboy, and F-Spot. It is available for download via torrent or directly from Novell’s FTP servers.
So, what’s behind all that Mono hype. Readers are encouraged to draw their own conclusions. █