[Mono-list] Why mono has a long way to go..

Miguel de Icaza miguel@ximian.com
04 Nov 2003 17:06:35 -0500


> I love mono. Open-source dotnet. But for my line of work it is unusable
> and will remain so for a long time. You see certain parts seems to be
> ignored in mono and it is of great concern to me (and I hope others).

Our goals are stated on the web page, and our resources are not as large
as Microsoft, we depend on the community to build things to a large

There are areas that we take on, because they are of strategic
importance to us (Core, compiler, GUI apps), some we do on our spare
time, and some that third parties contribute or fund because its on
their own interest.

For example, Web Services support was funded by SourceGear. 

If your favorite feature is not available, you have a number of options:

	* Wait.

	* Contribute it yourself.

	* Fund someone to do it.

That being said, for some of the features you mention, they are not
likely to show up in Mono 1.0, just because they would require a lot of
work and coordination. 

> 1) Code Access Security
> Little has been done in this area. And I believe in the great security
> motto : You can't hack in security afterwards, it will lead to a mess.
> CAS spans most of the class libraries.

That might apply to the design, but not the implementation.  CAS was
designed by Microsoft, but we cant implement it now, because we just do
not have the time nor resources required.

Today we consider all apps running on Mono fully trusted, just like
Python or Perl would.  If this is not acceptable to you, then Mono is
not ready for you, nor it will be for a long time as you said yourself. 

> 2) Messaging
> .NET is to compete with J2EE. .NET has messaging based on MSMQ. We have
> no implementation of this, and no credible alternative. Without it we
> can't be taken seriously in the enterprise domain.

This one, just like EnterpriseServices as outlined on the roadmap, are
areas that we wont be supporting in 1.0, and very likely we wont be
supporting at all.  

Indigo will provide a lot of this functionality, and we will instead
focus on implementing that.  It is still a long time away though.