Linked by Thom Holwerda on Tue 7th Jul 2009 08:51 UTC, submitted by PLan
Mono Project We've already seen some heavy discussion on Mono and C# here on OSNews the past few weeks, as it became clear the patent situation regarding the ECMA parts of Mono was anything but faith inspiring. This issue seems to be resolved now: Microsoft has made a legally binding promise not to sue anyone who uses or distributes implementations of said ECMA standards. Following this news, Mono will be split in two; the ECMA standard parts, and the rest.
Thread beginning with comment 372039
To read all comments associated with this story, please click here.
Comment by kaiwai
by kaiwai on Tue 7th Jul 2009 09:55 UTC
kaiwai
Member since:
2005-07-06

That is nice but how much is actually covered? in the case of .NET, does the promise cover both the ECMA components as well as the likes of ASP.NET, Winforms, WPF etc.? The issue isn't the boring and mundane components but the sexy parts that sit on top which Mono require for compatibility between their implementation on *NIX and the Windows implementation.

The way I read the agreement is that the promise is only over the ECMA specifications; which basically means nothing in the grand scheme of things. Without those components outside the ECMA specification, .NET is pretty much useless. It is the stuff that sits ontop of the ECMA specification in the form of ASP.NET, WinForms etc. that bring value - and .NET needs to implement those technologies for compatibility (whilst persuading programmers to use GTK# instead of WinForms).

We're back to square one until Microsoft makes a promise for the whole .NET stack and not just the ECMA specifications.

Reply Score: 4

RE: Comment by kaiwai
by bsharitt on Tue 7th Jul 2009 10:12 in reply to "Comment by kaiwai"
bsharitt Member since:
2005-07-07

I agree that this doesn't do to much for those that want to do .NET on Linux, but it should be a big boon to those who aren't interested in the entire .NET stack and instead just see the C# language itself as something of interest.

Reply Parent Score: 3

RE[2]: Comment by kaiwai
by kaiwai on Tue 7th Jul 2009 10:25 in reply to "RE: Comment by kaiwai"
kaiwai Member since:
2005-07-06

I agree that this doesn't do to much for those that want to do .NET on Linux, but it should be a big boon to those who aren't interested in the entire .NET stack and instead just see the C# language itself as something of interest.


Its useless for someone interested in C# because anything of any value sits above the ECMA specification and if they wish to turn it into a real world skill then they'll have to learn about the technologies about the ECMA specification. C# has no value unless there are some value added components that sit on top - and given that Windows holds the dominances, compatibility with the value added components on top of the ECMA specification is paramount, not only for compatibility, the viability of interoperability but also for developers interested in C# and turning it into a real world skill.

Just as there is no value in C, C++ or any other language without the stack that sits on the top, be it win32 in the world, .NET Framework when it comes to managed C/C++ or the SUS03 specification when it comes to the *NIX world. Microsoft is the only company I can think of right now who threatens third party projects who reimplement a given framework on an alternative operating system. Ballmer first threatens opensource programmers over the re-implementation of win32, file formats, 'icon lay outs' etc. on *NIX by claiming that Microsoft will 'exert it's patent portfolio". When it comes to the .NET Framework they do the least humanly possible on the parts that have the least amount of value, namely, the ECMA specification is covered by a promise but anything of any value is still threatened by Microsoft's business policies.

This is Microsoft as usual, muddy the water in a hope that the murkiness will hide what their real business plan is - suck developers and third parties into an abyss so difficult to escape that when the time is right, they can screw those organisations for all they're worth. The patent challenge to TomTom was merely a shot over the bow, "f*ck with us, and we're happy to tear you a new hole - even over a trivial thing like an ancient file system driver".

Reply Parent Score: 1

RE: Comment by kaiwai
by jhominal on Tue 7th Jul 2009 10:22 in reply to "Comment by kaiwai"
jhominal Member since:
2009-07-07

That is nice but how much is actually covered? in the case of .NET, does the promise cover both the ECMA components as well as the likes of ASP.NET, Winforms, WPF etc.?

Everything I have read here seems to mean that only the ECMA parts (CLI, C#) are covered by that promise.

What this promise accomplishes, AFAIU, is that applications developed with the "Community promise + Free software" stack will be as much at risk from patent litigation from Microsoft as any other free software.

As for .NET being useless without the "sexy parts", I can only argue that GNOME Do and Banshee (Music player) are two very useful applications, for which I have yet to see better alternatives for my Gnome desktop.

Reply Parent Score: 3

RE[2]: Comment by kaiwai
by lemur2 on Tue 7th Jul 2009 10:56 in reply to "RE: Comment by kaiwai"
lemur2 Member since:
2007-02-17

[quote]As for .NET being useless without the "sexy parts", I can only argue that GNOME Do and Banshee (Music player) are two very useful applications, for which I have yet to see better alternatives for my Gnome desktop.[/quote]

Dare I say it, but Amarok and Krunner would be two at least as useful applications for your Linux KDE4 desktop.

Reply Parent Score: 2

RE: Comment by kaiwai
by lemur2 on Tue 7th Jul 2009 11:02 in reply to "Comment by kaiwai"
lemur2 Member since:
2007-02-17

That is nice but how much is actually covered? in the case of .NET, does the promise cover both the ECMA components as well as the likes of ASP.NET, Winforms, WPF etc.?

...

The way I read the agreement is that the promise is only over the ECMA specifications


Agree. No parts of .NET are covered except C# and CLI.

This conclusion is strongly supported by the act of Mono splitting itself into two parts ... essentially being one part which is covered, and one which is not.

What it does mean, happily, is that recent announcements by Debian and Ubuntu have lost a lot of import ... both can now ship just one half of Mono (the covered half) as part of the default install.

So GNOME will have the covered parts of Mono installed by default ... that is almost a guaranteed outcome now.

This will quite possibly cause some defections from GNOME.

Reply Parent Score: 3

RE[2]: Comment by kaiwai
by memson on Tue 7th Jul 2009 11:40 in reply to "RE: Comment by kaiwai"
memson Member since:
2006-01-01

Agree. No parts of .NET are covered except C# and CLI.


Please read through Annex D of the EMCA 334 spec. This pretty much lays out what is included as part of the "C# language".

This conclusion is strongly supported by the act of Mono splitting itself into two parts ... essentially being one part which is covered, and one which is not.


The spit is entirely driven by the hysteria you and others like yourself exhibit with regards to Mono.

What it does mean, happily, is that recent announcements by Debian and Ubuntu have lost a lot of import ... both can now ship just one half of Mono (the covered half) as part of the default install.

So GNOME will have the covered parts of Mono installed by default ... that is almost a guaranteed outcome now.

This will quite possibly cause some defections from GNOME.


Yay, progress! Hmmm...

Reply Parent Score: -1

RE[2]: Comment by kaiwai
by Slambert666 on Tue 7th Jul 2009 16:03 in reply to "RE: Comment by kaiwai"
Slambert666 Member since:
2008-10-30

So GNOME will have the covered parts of Mono installed by default ... that is almost a guaranteed outcome now.

This will quite possibly cause some defections from GNOME.


I completely agree, and I think it is a good thing. The gnome community will come out of this much stronger than it was before.

Reply Parent Score: 1

RE[2]: Comment by kaiwai
by sbergman27 on Tue 7th Jul 2009 16:18 in reply to "RE: Comment by kaiwai"
sbergman27 Member since:
2005-07-24

So GNOME will have the covered parts of Mono installed by default ... that is almost a guaranteed outcome now.

What this does is to allow decisions regarding the covered portions to be made on a technical basis. Mono has some problems on that front; Notably, resource usage. But those issues have, so far, mostly gotten lost in the heated political debate.

This will quite possibly cause some defections from GNOME.

Ever the KDE troll, huh, Hal? An alternative, or perhaps complementary view, would be of an influx of devs who prefer a safer, managed language to the buffer overflow minefield that is C++.

I'm hardly an enthusiastic Mono/C# fan. But at least this legally binding promise, and clear separation of code, will neutralize the political doomsayers and allow the debate to move on to matters of technical merit.

Edited 2009-07-07 16:18 UTC

Reply Parent Score: 3

RE: Comment by kaiwai
by vivainio on Tue 7th Jul 2009 11:03 in reply to "Comment by kaiwai"
vivainio Member since:
2008-12-26

The issue isn't the boring and mundane components but the sexy parts that sit on top which Mono require for compatibility between their implementation on *NIX and the Windows implementation.


I think much of the drama has been about the "boring parts". Namely, the boring parts ensure that Tomboy, F-Spot, Banshee and Gnome-Do are on firm legal foundation.

Which is just snazzy. Congratulations for everyone involved.

Edited 2009-07-07 11:03 UTC

Reply Parent Score: 3

RE[2]: Comment by kaiwai
by chris_dk on Tue 7th Jul 2009 18:52 in reply to "RE: Comment by kaiwai"
chris_dk Member since:
2005-07-12

Namely, the boring parts ensure that Tomboy, F-Spot, Banshee and Gnome-Do are on firm legal foundation.


As far as I know, F-spot uses ADO.NET to interact with sqlite. So they need another database technology. This has been known for YEARS.

Reply Parent Score: 2

RE: Comment by kaiwai
by abraxas on Tue 7th Jul 2009 13:11 in reply to "Comment by kaiwai"
abraxas Member since:
2005-07-07

We're back to square one until Microsoft makes a promise for the whole .NET stack and not just the ECMA specifications.


It's not a problem for Linux software. Linux applications don't use WinForms or any other non-standardized code from Microsoft.

Reply Parent Score: 5

RE[2]: Comment by kaiwai
by lemur2 on Tue 7th Jul 2009 14:04 in reply to "RE: Comment by kaiwai"
lemur2 Member since:
2007-02-17

"We're back to square one until Microsoft makes a promise for the whole .NET stack and not just the ECMA specifications.


It's not a problem for Linux software. Linux applications don't use WinForms or any other non-standardized code from Microsoft.
"

Precisely.

Also, if as a developer you are looking to be able to write cross-platform C# applications, then the obvious thing to do now is write the apps on Linux with Mono/Gtk#/C#/CLI in the first place, and then deploy them on all platforms. Even better if there is a Qt# library instead of Gtk#.

Make sure however that you don't install the "bad half" of Mono. You are then covered by Microsoft's promise, and your application's users won't have to pay any license fee to Microsoft.

Edited 2009-07-07 14:06 UTC

Reply Parent Score: 4

RE: Comment by kaiwai
by google_ninja on Tue 7th Jul 2009 13:13 in reply to "Comment by kaiwai"
google_ninja Member since:
2006-02-05

There are two things that mono tries to do. The first is provide a modern, free platform to develop against. The second is to provide an easy way to port existing .net apps to linux.

If you are using mono to develop linux apps, you aren't going to use anything that is not covered by this promise, you are going to use the linux stack that has been built on top of mono. If you are using mono as a compatibility layer to deploy your .net apps on linux, the future legality of that is still up in the air.

Reply Parent Score: 3

RE: Comment by kaiwai
by redbeard on Tue 7th Jul 2009 14:09 in reply to "Comment by kaiwai"
redbeard Member since:
2006-03-11

Basically it is a promise to keep their promise required under the EMCA standard?

"Microsoft will be applying the Community Promise to the ECMA 334 and ECMA 335 specs."

It only applies to the ECMA specification material, yes a step in the right direction but doesn't do that much for mono implementation as mono is much more than the ECMA specs. So again, lot of current and future MS "IP" still out there to be wary of.

This basically is just an easy way to comply with the ECMA standards RAND requirements. Now MS doesn't have to deal with RAND licensing request . . .

BTW still not posted (9am CST, 7-7-09) on the Microsoft Community Promise web site, so this is a promise by a blogger ATM . . .

Edited 2009-07-07 14:12 UTC

Reply Parent Score: 1

RE: Comment by kaiwai
by boldingd on Tue 7th Jul 2009 16:02 in reply to "Comment by kaiwai"
boldingd Member since:
2009-02-19

We're not "back to square one" at all. As I understand it, Mono is being used to develop GTK applications, mainly targeting the Gnome desktop; potentially providing compatibility with .net applications targeting Windows is a side-benefit, not the main goal. The "sexy windows bits" can be removed completely -- and apparently will be, in one of the distributions -- and Mono will still be able to perform its primary intended function (of enabling GTK/Gnome development) perfectly.

Reply Parent Score: 2