
Mono Relicensed as MIT - Vespasian
http://www.mono-project.com/news/2016/03/31/mono-relicensed-mit/
======
rdtsc
With Oracle's Java lawsuits wondering if Microsoft has a chance to make a move
and try to displace Java. It won't happen completely because it is the new
COBOL but if they can deliver on performance and stability on Linux and other
platform there might be a chance.

Go is making progress there, but those that want a more mature type system
will probably appreciate C# more.

~~~
olavgg
Java is far far from the next COBOL. It is still my first choice when I want
to choose a technology that will run for the next 20 years with minimal amount
of code maintenance.

~~~
kbenson
Is that a joke? I can easily imagine that having been said about COBOL at some
point. It's an honest instance of Poe's law.

~~~
e12e
Actually, while unorthodox, I _think_ one could read that sentence so that
_it_ refers to COBOL; as in "COBOL is still my first choice..." \-- implying
java will never be as good/stable... ;-) (No, I do not think that's what gp
meant -- unless you're right and it's meant as irony).

------
0x0
This should be good news for Unity3d, didn't they hold back on upgrading to
modern mono versions for some sort of licensing issue?

~~~
pjmlp
Yes, they rather spend developer salaries implementing IL2CPP, which is still
work in progress, instead of paying for new licenses.

I do wonder if $developer_salaries < $Xamarin_licenses, specially taken into
account most of the team is on Danish salaries.

~~~
iso-8859-1
Are you sure they are on Danish salaries? Isn't the most of the company in San
Francisco?

~~~
pjmlp
Might be, the point I was trying to make was that the cost per month for
IL2CPP development isn't insignificant.

Being US salaries in SF doesn't change that much.

------
jordigh
Hm? Wasn't it already dual-licensed MIT and GPLv2? I guess they just got rid
of the GPL option? What's the point if it was already dual-licensed?

edit: Oh, I see. They used to sell LGPL exceptions for the library and GPL
exceptions for the tools. I guess they have decided to stop selling exceptions
and just give everyone an exception:

[https://web.archive.org/web/20150718093635/http://www.mono-p...](https://web.archive.org/web/20150718093635/http://www.mono-
project.com/docs/faq/licensing/)

Seeing how they were already able to sell exceptions, they must have been sole
copyright holders, so they should have no problem changing the license of
everything.

~~~
Vespasian
It was dual-licensed LGPL and commercial

Edit: The class libraries where in fact always MIT. The runtime however was
not.

------
amag
I think (L)GPL has reached a point where in most cases it is self-defeating.
It does not encourage adaption in the same way for example MIT does. This
means that copy-left becomes a moot point. Open-source is happening (just look
at Microsoft for example). But it's happening not so much thanks to GPL, but
rather despite it, out of the realization that we all have something to gain
by sharing. IMHO GPL hinders sharing because it puts a lawyer between the
developer and the code.

~~~
cyphar
GPL doesn't hinder sharing. GPL hinders proprietary software. Now, if you
don't believe in the morals behind the free software movement, then you might
decide that hindering proprietary software is hindering "sharing with
companies". It's a very odd kind of sharing to give something to a company and
they make it proprietary so they don't give anything back and end up also
mistreating their users.

~~~
amag
A bit late maybe, but GPL does not _only_ hinder proprietary software, it also
prevents the use of a more permissive license, such as MIT. Personally I would
never GPL any of my code because of this. I prefer a more permissive license
(such as MIT or similar) but that also means I cannot put GPL code inside my
code. So whenever I see GPL:ed code, whether for private (open-source)
purposes or business (proprietary, closed-source), I steer clear. So if I'm
not able to use the code for any purpose, does that not mean that sharing is
hindered?

Btw, I never said I don't believe in the morals of the free software movement,
I just said I don't believe GPL is the way forward. GPL is idealistic but not
very pragmatic. Open-source is the future and (ironically) a lot of big
(traditionally closed-source) companies are paving the way.

------
grandalf
MIT is a more business-friendly license, but it also reduces the risk of
lawsuits tremendously for companies who might decide to become part of the
ecosystem for a project.

Consider that Apple is still using the oldest GPLv2 version of bash on OSX.

While this is a blow to Stallman's goal, I think it's a step in the right
direction for broad corporate acceptance of the benefits of open source.

~~~
lottin
Forget Stallman. It's basic human decency. If I benefit from someone else's
work, the least I can do is let others benefit from my work as well.

~~~
jbandela1
It being basic human decency is actually an argument against the GPL. One of
the worst things you can do is make basic human decency a legal obligation. If
every time someone did something nice for me, I was worried about now having a
legal obligation to do something, the world would be a much worse place. Basic
human decency should be freely given and freely received with no legal
obligations. Let karma decide about basic human decency, not the courts.

~~~
belorn
That is a common argument on why copyright should not exist. Every time
someone do something nice and want to share their favorite song or movie to
me, I am told by society that they are doing something wrong and I have a
legal obligation to decline. Its crazy, basic human decency should be freely
given and freely received with no legal limitations. The courts should not be
involved.

~~~
jbandela1
This is not an analogous situation. With open source or basic human decency, I
am sharing something that I have a right to (either code I created, or my
time/energy). It is not basic human decency for me to give your money away
without your consent to someone else.

~~~
belorn
If you consider that copyright is equal to someones money, you should really
respect their choice in what situation they are consenting to have it getting
shared!

But why did you say that the world would be a worse place if every time
someone did something nice to you, you would have to care about the legal
obligation of that act? You either respect that authors has copyright, or you
don't. I could never respect someones opinion if they thought that only
_their_ copyright is valid.

------
blainesch
Do they not need permission from the nearly 500 contributors to do this?

~~~
r3bl
Not if they requested the contributors to sign the Contribution License
Agreement (CLA) before accepting their changes.

Or, the other way ( _although I can 't guarantee that this is true_) would be
to choose a compatible license with the one they were using before. Compatible
license scenario basically means that the license changes are small enough so
that they don't have to request from people to agree with the change.

~~~
jevinskie
And they do. I've seen their pull request bot block a merge many a time
because of a lack of a signed CLA.

------
cm3
So the plan is hopefully to eventually converge and leave just a couple few
feature differences with the open CLR, right?

~~~
migueldeicaza
Correct, there are many areas where we can converge, and we have been working
on that for the last year and a half.

~~~
cm3
Off-topic, but knowing that Nat and you met (from what I recall) while
interviewing for a position in Redmond and then went off to create GNU's COM
(GNUNetworkObjectModelEnvironment) which became a desktop, what is it like
landing at Microsoft after all those years? Final destination?

~~~
migueldeicaza
Nat and myself knew each other for a couple of years before that. It is only
that we first met in person for the first time when he was an intern, and I
was interview for a position on the IE team at the time.

We are joining a new Microsoft, with a team that is highly energized to give
developers the tools they need and in particular, we are happy to be joining
forces in their development efforts for .NET. With .NET Core about to be
launched, there has never been a better time to get into C# and F#.

------
Sir_Cmpwn
Did this cause any problems for third party contributions to mono? Did
everyone agree to have their work relicensed? There's well over 400
contributors to mono.

~~~
migueldeicaza
Mono was always designed to be dual-licensed, because we needed a way of
monetizing the investment.

Because of this, the LGPL and GPL portions of the code required either
copyright assignments, relicensing rights, or the contribution to be made
under the MIT license.

This is how we built a business that allowed us to dual license the runtime
for many years.

~~~
Sir_Cmpwn
Makes sense. Thanks for clarifying.

------
melling
What's the advantage of MIT vs CC Zero? Someone told me that I should use CC0
instead of MIT.

[https://creativecommons.org/publicdomain/zero/1.0/](https://creativecommons.org/publicdomain/zero/1.0/)

~~~
the_mitsuhiko
They are completely different licenses. Read the text and decide on the
license if you like it. CC0 is effectively the closest we have to
international public domain.

~~~
r3bl
I would argue that WTFPL[0] is also fairly close to being a public domain,
right there next to CC0. Even FSF recognizes it as a valid (but not a
recommended) license[1].

[0] [http://www.wtfpl.net/](http://www.wtfpl.net/)

[1] [http://www.gnu.org/licenses/license-
list.html#WTFPL](http://www.gnu.org/licenses/license-list.html#WTFPL)

~~~
DannyBee
No, it isn't. It's so far from CC0 it's ridiculous.

It has no explicit right grant at all, no disclaimer of warranties, blah blah
blah blah blah.

(i've been through all the issues before on hacker news)

------
rubber_duck
Does this include Moonlight project ?

I would love to try to hack on that to try to get a cross platform GUI toolkit
that's similar to WPF.

Silverlight was a great peace of tech with a ton of stuff developed for it
(widgets, testing tools, libraries, etc.) having that as a cross platform GUI
framework that works on windows/linux/mac and ios/android/wp would be amazing
and is doable - for simplicity you could strip out the codec parts, DRM and
stuff like that, implement rendering on top of OpenGL ES and do platform
specific input handling.

LGPL kind of makes phones a no-go so I would like to see if it's also covered
in this switch before spending time on it.

~~~
migueldeicaza
It does not include Moonlight, we do not have the rights to relicense that.
The rights for Moonlight stayed at Novell.

~~~
rubber_duck
A shame :(

I wonder what your thougts are on this - personally ofc. - you probably
thought about it at some point given your work on moonlight and xamarin. Even
the MS implementation was ported to osx, you could strip codec/DRM stuff - you
could get a fully featured GUI toolkit native to .NET - a _lot_ of work went
in to that before Microsoft pulled the plug - now that it's laying dead and
new MS OSS trend it doesn't seem that far fetched that they could OSS it.

------
systems
anyone care to explain the difference/relation between mono and the open
source .net core are they the same thing / do they complete each other / do
they overlap

~~~
valarauca1
.NET is a run time much like Java.

.NET largely only exists for Windows/OSX, or at least Microsoft Supported
Platforms.

Mono was started by Novell, later Ximian starting working on. The goal was to
build a C# compiler and compatible runtime for _all_ platforms (PS3, Xbox360,
wii, Linux(SPARC/IA-64/x86_64/x86/PPC/MIPS/ARM), Mac, FreeBSD, Solaris,
Android, and iOS).

dotNETcore is the _Microsoft_ implementation of .NET which supports OSX,
Windows, Linux. dotNETcore vs Mono is more or the less same as OracleJVM vs
OpenJVM (except they're both owned by the company). They use different JIT's.
Microsoft built their own. Mono uses LLVM

~~~
ChicagoDave
Mono was not started by Novell. Miguel originally worked on his own with
volunteers on a purely open source project. Miguel later pulled the mono dev
team into Novell and started a commercial development side with SuseLinux.
When that partnership was desolved, Novell gave everything to Miguel and he
created Xamarin.

~~~
joeshaw
Mono was started by Miguel at Ximian, and most of the Mono code was owned by
Ximian. Ximian was bought by Novell and with it, all the Ximian-owned Mono
code. (I don't remember if a CLA was required before or after Novell bought
Ximian.)

The Novell-owned IP was either sold or licensed to Xamarin later.

~~~
migueldeicaza
Joe is correct, the code was always owned by Ximian.

And we did require copyright assignment or relicensing rights from the start
to support a dual-licensing business. It was the One Blessed Business Model
endorsed by Richard Stallman at the time.

------
X86BSD
Too little to late?

Maybe when mono first hit, using a 2 clause BSD would have helped them win
share. But now? I don't see anyone switching now because they switched to a
free'er license. You either liked using it before because of the lgpl or you
smelled the lgpl and ran away to use something else.

At this point in the game I don't think it matters much.

~~~
ZenoArrow
C# is one of the most commonly used programming languages, I'm not sure where
you're getting this "too little, too late" narrative from.

~~~
X86BSD
That is what everyone says about their preferred language.

~~~
ZenoArrow
It's not my preferred language, and you can see C# in the top 5 languages
listed on the TIOBE site:

[http://www.tiobe.com/tiobe_index?page=index](http://www.tiobe.com/tiobe_index?page=index)

------
giancarlostoro
I think this is great, I wonder if this means Microsoft is going to (I'm not
sure if they already do and have) contribute directly into Mono itself, which
would be really fantastic to finally see Mono support more of .NET's core
features. I would love to see the day where I could compile a C# (or
potentially VB.NET / C++/CLR) application on any OS with Mono available to it,
just as I can on any machine with Visual Studio / .NET available to it. Then
we could see a serious competitor for Java. .NET already has things like NuGET
which would be amazing to see all those projects just run on Linux without
effort.

------
mhd
Neat. C# looks more attractive day by day. Is there a decent non-commercial
AOT compiler for it (I know that Mono has one, but not sure whether it's any
better than GCJ was)?

------
diskcat
Stallman cries a single tear

~~~
cyphar
I actually sent him an email about this and asked for his opinion (as well as
ask a few questions about CLAs in general). I'll post the response here if
it's interesting.

~~~
cyphar
His response was fairly short. However, I learnt something I didn't know --
the FSF CLA actually requires that the FSF will always maintain your
contributions under a copyleft license. They also provide recommendations on
how to make contributions to projects that require CLAs (such as negotiating
similar terms for the project).

Here's the complete contents of his email:

\---

[[[ To any NSA and FBI agents reading my email: please consider ]]]

[[[ whether defending the US Constitution against all enemies, ]]]

[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

This doesn't change my views on the general issue of assigning copyright to
free software projects, which I stated in
[http://gnu.org/philosophy/assigning-
copyright.html](http://gnu.org/philosophy/assigning-copyright.html). There are
sometimes good reasons for license changes.

\---

------
hacker_9
Is this an attempt by Mono to battle Microsoft's open source Roslyn compiler
and upcoming cross platform '.net core' I wonder? Those two technologies could
make Mono irrelevant in the future.

~~~
Vespasian
Not very likely since Mono is developed by Xamarin which was recently acquired
by Microsoft ;)

~~~
nickpsecurity
I was worried they'd lock the stuff up more. This is a really, pleasant
surprise.

