Not much information (yeah, mono has a brigh future kind of interview) and when the interviewer wanted to ask more indepth he pinted to Miguel for answers.
Agreed. The interviewer did try to get some technical questions in, like asking about the performance issues compared to the .NET VM and problems they had moving ASP.NET apps to XSP. However it’s quite disappointing to see the responses take a more ‘marketing droid’ type approach of saying how good the Mono team is, how responsive they are to suggestions, yadda yadda and completely side steps the issues raised.
Look at Samba, they have their work cut out for them and I admire that they have perservered that’s what I am saying about Mono if dotnet compatability is a stated goal…I am not saying it will fail, far from it.
I think you’ve gone on the defensive for no reason Miguel
I think that’s pretty much inevitable to be honest. The client end of .Net will be a continually moving target, and will increasingly depend on Windows specific components that will be impossible to replicate. The weight of numbers of people using MS.Net will ensure that the pressure on Mono to replicate everything MS.Net does will maintain this status quo, and ensure that Mono is never in control of its own destiny. Mono was always an absolute non-starter from the begninning, and anyone who thought it was going to succeed was naive in the extreme. Of course people always get blinded by the open ECMA standards – something Microsoft does every time, and there is always a sucker willing to take it up. You have to avoid getting into that trap from day one, and the Mono people haven’t done it.
On the server and web app side Mono has a chance because it doesn’t have the baggage of the the demands for MS.Net and Windows compatibility. However, when you look at the massive Java and J2EE infrastructure around Apache and other established alternatives like PHP and Python that people are actually using, you have to ask yourself what on Earth Mono and ASP.Net is going to bring, especially considering its performance for such things is not up to scratch. Anyone who is using ASP.Net is doing so on Windows.
Bizarrely, not even Edd Dumbill felt qualified to talk on those subjects, and totally avoided giving any answers on ASP.Net, XSP and whether they were fully ready to develop highly qualified business applications. Novell obviously doesn’t think so as all their web applications run via Java and Tomcat, and I see no moves afoot for them to move to Mono, XSP and ASP.Net on Suse and eat their own dogfood any time soon.
I’m afraid that Mono is a solution that has taken four or five years (and still isn’t complete) looking for a problem, has represented quite a bit of wasted effort and is basically a lemon for Novell. I don’t know what on Earth Novell themselves are doing with it.
Nevertheless, its provided some nice publicity and photo opportunities for people . An open source implementation of .Net. Now that has a certain ring to it…….
I think you make some valid points about mono on the server, but it isn’t all gloom for the desktop. Although as you have pointed out the project will have to put in a lot of work once MS starts shifting the sands a bit.
Your criticisms are unfounded. You ask what the point of Mono is. May be it is to provide a free and open alternative to .NET. One that is also portable and isn’t restricted by onerous licensing schemes. May be it is to provide a unified development platform for free software developers who wish to design, develop and deploy their application with ease.
As Mono gains more momentum and as developers become comfortable with its concepts, Mono will begin to look less like .NET. It’s already begin to do just that. Yes, .NET compatibility might be a hindrance, but it’s not Mono’s only option. Many GNOME developers that have deployed Mono applications cannot emphasize enough how wonderful this platform is.
Maybe if Java were truly free software, free software hackers would take it seriously. As it stands today, if their is a bug in the Java class libraries, all I can to is wait for SUN to fix it, that is if they agree it is a bug through their wannabe open committee. Contrast that with Mono were one and all are invited to write patches for it and contribute to its evolution.
If Mono is such a failure, why do I see more Mono desktop applications than I do .NET. To date, I haven’t seen one .NET desktop application. Today, Mono may have to be compatible with .NET, in the future, it might not need to.
…when I say, I wish Sun had open-sourced Java the SECOND Microsoft released .NET in polished form, the SECOND .NET started to gain steam.
The reasons they _didn’t_ do this just absolutely baffle me.
(1) Releasing it open source DOES NOT MEAN Sun could not maintain a “stable” version of Java to be used by the masses. This means corporations supporting enterprise apps could remain happy.
(2) OSS projects would feel perfectly comfortable using it. The second Java becomes open source is the second there are amazingly good GTK and KDE bindings for it, and suddenly all desktop applications seeking a high-level language could use Java. Since Open Source developers care about cross-platform, speed, and other such things, Java would inevitably improve, and new stable releases would be even better.
(3) Linux would have an open source high level language (Java), an open source high level IDE (Eclipse), with open source high level GUI design tools to follow (Glade-Java?)
(4) Sun would finally, finally BEAT MICROSOFT.
Instead, Sun is cowering in a corner while Windows programmers, and now even LINUX programmers, move to .NET, and play catch-up.
I used to be a Mono believer, but you know what places me in disbelief? Marketing. Mono will simply never be as well marketed to low-end programmers (9-to-5ers making ASP.NET or C# applications all day), and will only be used by a handful among very skilled engineers. So we’re stuck with, basically, closed software proliferating like mad. Makes me sad.
I was wondering when David “Spin Machine” would post on
this thread.
That’s funny. You’ll know more about spin than I do. You’ve been doing it since you started.
It is worth replying today, as David has found a new argument against Mono (in reality, anything that helps Gnome is seen as a threat by David).
I don’t know where you get the idea that Mono helps Gnome, or why Novell should naively plough developer resources into it. After five years you’ve got to start looking at what is actually going to be practical.
Novell is not in the business of rewriting existing and
functional code, and that is why the existing server
products continue to use the technologies they were using
before: C, C++ and Java.
What’s the point then? They put a large amount of effort in porting all their existing web applications to Suse and Java so I would hardly call them existing.
As a side note, ASP.NET is the fastest growing web
technology today.
On Windows.
See their web site for quotes and the case study,
as it seems that you are ‘selective’ about what you believe
from a Novell press release or case study.
When it comes from your department or side of the company yes I damn well am, and I then start looking for evidence of what Novell actually uses and actually sells. The reality is always somewhat different.
You ask what the point of Mono is. May be it is to provide a free and open alternative to .NET. One that is also portable and isn’t restricted by onerous licensing schemes. May be it is to provide a unified development platform for free software developers who wish to design, develop and deploy their application with ease.
Maybe it is. The realisation is something else, as people have to start actually using this for something.
As Mono gains more momentum and as developers become comfortable with its concepts, Mono will begin to look less like .NET. It’s already begin to do just that.
Has it?
Yes, .NET compatibility might be a hindrance, but it’s not Mono’s only option.
Given the usage of MS.Net and Windows’ market share, yes it is. People see it as a clone of .Net and will expect it to behave in exactly the same way. That’s the problem.
Many GNOME developers that have deployed Mono applications cannot emphasize enough how wonderful this platform is.
That’s wonderful, but I’m afraid it’s not about Gnome developers.
Maybe if Java were truly free software, free software hackers would take it seriously. As it stands today, if their is a bug in the Java class libraries, all I can to is wait for SUN to fix it, that is if they agree it is a bug through their wannabe open committee.
And how often does that happen? It’s obviously a massive hindrance to all the open source Java applications, infrastructure around Apache and to all the Java app server providers.
If Mono is such a failure, why do I see more Mono desktop applications than I do .NET.
Because they’re open source applications and not in-house developed or commercial applications. There aren’t many commercially sold .Net applications out there, but there are many in-house developed .Net applications. Guess what? They’re all using MS.Net.
Today, Mono may have to be compatible with .NET, in the future, it might not need to.
Any ideas as to what will change that? The weight of usage is with MS.Net, and that is not going to improve. If people then see Mono as a .Net clone they will expect it to do everything MS.Net does. If it doesn’t they’ll ditch it or at best place unreasonable demands on replicating huge parts of Windows and Microsoft infrastructure.
So no, I don’t think my criticisms are unfounded at all. You haven’t addressed many of them.
1. Mono is only partly about getting windows developers and applications over to Linux. It is mostly about getting a great development platform for Linux (and for Gnome). If MS breaks compatability, that doesn’t mean people can’t still have that fantastic development environment or that apps using mono will quit working.
2. Of all the many things you can justifiably accuse microsoft of, being bad about backwards and forward compatability for their api’s is just not one of them. Maybe they are not perfect but compare MS to gnome or kde! Try compiling anything from a couple years ago on Fedora Core 3! Good luck. And try building gnome 2.8 on Redhat 7.3 (I actually tried this). No chance. Microsoft likes to screw over their competition but they also like to keep developers happy enough to stick around. They do this by providing reasonable development environments and maintaining compatability. If they broke compatability just to break mono they would be shooting themselves in the foot big time.
If MS decides to sink mono it will be with patent battles. Not by making it a moving target.
And to you people who criticize the technology itself, you have no idea what you are talking about. This is good shit. Really.
The one bad thing I will say about it is that the documentation and dev tools really suck big time especially for gtk#. Some docs and tuturials exist but they are very incomplete.
I think that’s pretty much inevitable to be honest. The client end of .Net will be a continually moving target, and will increasingly depend on Windows specific components that will be impossible to replicate.
This is not so sure as one might think. Given that MS will still pursue its goals and so it will try to provide better technology around .NET, MONO can easily become a lower denominator for both worlds. As MS will support (of course) .NET 1.1 / 2.0 in future Windows versions (starting from Longhorn), if MONO achieves good compatibility it can play a good role for developers willing to shape their software for more than one single platform. I don’t think MS will shoot in their foot by changing PAST specs to undermine MONO. I think we agree on this, right?
The weight of numbers of people using MS.Net will ensure that the pressure on Mono to replicate everything MS.Net does will maintain this status quo, and ensure that Mono is never in control of its own destiny.
Since MONO is a .NET implementation for Unix systems (and Windows too), MONO doesn’t need to be in control of its own destinity, until of course MONO userbase will be so wide to shadow .NET one. But that’s not the point. Introducing differences on MONO end would be simply dumb because MS controls Windows technology while Novell doesn’t control Linux technology. As a starting, MONO just needs to be as close as possible to .NET.
On the server and web app side Mono has a chance because it doesn’t have the baggage of the the demands for MS.Net and Windows compatibility.
That’s not true at all. Starting from .NET 2.0 there will be many Longhorn-specific (or better, Avalon-specific) enhancements for clients too. However, that’s not the point again. If you knew this technology better, you would know that ASP.NET is very keen to openess, provided that developer *really cares* about it. WebControls technology, for example, allows developers to render contents for multiple clients, from mobiles to Avalon-specific. It’s up to the developer to decide which client technology to support while server processing always stays the same.Of course, if someone decides that supporting 2-3% Firefox market is not worth the pain, your content won’t rendere very good on FF. But again, that’s up to developer. However, this is a weak point caused by the fact you don’t know such technology very good. Or at least, it looks like that…
However, when you look at the massive Java and J2EE infrastructure around Apache and other established
If they’re so good compared to .NET, why are people buzzing to have .NET on Unix? Unix people is so eager that 2 (not just one) .NET implementations are being developed. I guess it was not MS marketing dept. fault…
alternatives like PHP and Python that people are actually using,
Uh? Comparing PHP or Python to .NET ? Are u joking? Those are completely different stuffs.
especially considering its performance for such things is not up to scratch. Anyone who is using ASP.Net is doing so on Windows.
That’s up to them to improve but I think that will improve.
Bizarrely, not even Edd Dumbill felt qualified to talk on those subjects, and totally avoided giving any answers on ASP.Net, XSP and whether they were fully ready to develop highly qualified business applications.
I was highly disappointed by that interview too. It was pretty useless because he didn’t into well-thought questions. However, that doesn’t mean MONO is not good, but just that guy is not good at marketing it 😉
Maybe it is. The realisation is something else, as people have to start actually using this for something.
Yes, and Mono is already being used to for something, to develop applications at all levels.
Has it?
Yes, it has. Mono supports a lot more open source libraries, specifically graphic user interface, database and even web browser libraries, in addition to most of .NET libraries.
Given the usage of MS.Net and Windows’ market share, yes it is. People see it as a clone of .Net and will expect it to behave in exactly the same way. That’s the problem.
Yes, today people see it as a clone, but when they install it and use it, they’d realize it is more than just a clone. Heck, I used to think the Linux GUIs were just a clone of Windows XP, until my naïve thinking collided with reality. I am more enlightened now.
That’s wonderful, but I’m afraid it’s not about Gnome developers.
It is. It is about developers who need a unified platform to design, develop and deploy a wide category of software solutions ranging from server applications to desktop applications and much more. GNOME developers are just a set of Mono end users weilding mono to develop interesting applications for the desktop. It’s proof of the maturity of Mono for desktop development.
And how often does that happen? It’s obviously a massive hindrance to all the open source Java applications, infrastructure around Apache and to all the Java app server providers.
Well it doesn’t matter how often that happens, what matters is I can’t fix a bug in the Java class libraries if there is one. Contrast that with Mono, and if you are sincere, you’d acknowledge Mono is a enticing platform for programmers, especially free software hackers. As a programmer, when I work with a tool I want to be able to modify the tool if need be, either to understand the tool better or to customize it for my needs. SUN tells you only they can change Java, no one else.
Because they’re open source applications and not in-house developed or commercial applications. There aren’t many commercially sold .Net applications out there, but there are many in-house developed .Net applications. Guess what? They’re all using MS.Net.
Well I could also come up with unfounded arguments that there are millions of Mono applications being used in-house. But I wouldn’t. I rather base my discussion on facts and figures, rather than conjured up in-house statistics.
Any ideas as to what will change that? The weight of usage is with MS.Net, and that is not going to improve. If people then see Mono as a .Net clone they will expect it to do everything MS.Net does. If it doesn’t they’ll ditch it or at best place unreasonable demands on replicating huge parts of Windows and Microsoft infrastructure.
Much will change and much is already changing. Mono will become more portable and as a result of it’s portability it will become more robust. While .NET on the other hand will lock you to one hardware and software platform. Mono will continue to leverage open source technology and resources to differentiate itself from .NET. In the process, Mono will prove that open source technologies are just as good as their proprietary counterpart and in many cases better. Since Mono is free software, it will evolve in ways not even envisioned by the Mono founders or Microsoft’s .NET team. It’s a only a matter of time before developers will begin questioning the purpose of .NET, when Mono is portable, free and equally functional, if not more.
So no, I don’t think my criticisms are unfounded at all. You haven’t addressed many of them.
I have, you just enjoy making a mockery of other peoples’ efforts and justify your criticisms with unsubstantiated evidence, false alarms, backward thinking not to mention fear, uncertainty and doubt.
Much will change and much is already changing. Mono will become more portable and as a result of it’s portability it will become more robust. While .NET on the other hand will lock you to one hardware and software platform. Mono will continue to leverage open source technology and resources to differentiate itself from .NET. In the process, Mono will prove that open source technologies are just as good as their proprietary counterpart and in many cases better. Since Mono is free software, it will evolve in ways not even envisioned by the Mono founders or Microsoft’s .NET team. It’s a only a matter of time before developers will begin questioning the purpose of .NET, when Mono is portable, free and equally functional, if not more.
It’s great to be optimisitc but you have to stay connected with the reality. You won’t be able to persuade millions of developers until your product is better in every aspect, including documentation. Judging by the current state of documentation on Linux, I don’t think this “dominance” will happen soon. Not in years, let alone months.
As a .NET guy, I’m surely monitoring MONO and how it’s evolving. I have to admit that having such technology on Unix/Linux would make that platform very interesting for me and my company, which has embraced .NET since almost a couple of years now. Such technology is the main reason while we’re still sticked to MS. There are others, of course, but having .NET is probably the most important.
In my opinion, top reasons why .NET people cannot consider MONO (yet) are:
1) TOP lack of decent tools! Aren’t we supposed to switch to MONO and use Linux’s Notepad to code mission critical applications… are we? 🙂 That’s absolutely top priority! MONODevelop is no way near to Visual Studio.NET but not even to SharpDevelop or WebMatrix (for ASP.NET). As you can see, MS is developing .NET 2.0 AND Visual Studio 2005 together…
2) why did u people worked to implement 2.0 features while you still haven’t all 1.1 features in? Right now, MONO is an hybrid… no 1.1 compatibility but 2.0 features… O_o Iy would have been easier for .NET developers if MONO would have followed a clear path: .NET 1.1 compatibility and then 2.0. This way I could just think to convert my 1.1 applications to MONO. Instead, right now you’re not 1.1 compliant but you’re not 2.0 compliant as well. That’s not good. It should be easier for developers to convert, not harder…!
3) Where’s VB.NET compiler? While this might seem not so important, I think we have to learn from past experiences. MS has driven tons of developers into its technology by VB! Many of them then switched to advanced programming (which was not possible with old VB version) but many just stayed and released software which didn’t need such complexity. Plus, VB.NET is no way comparable to old VB! And being language-neutral IS a .NET feature. I think that having a VB.NET compiler already in is more important than supporting generics!
4) Where are decent tools? 🙂 (I told it was important…)
However, keep up the good work! I’m sure many .NET developers are turning an eye toward MONO and monitor its progress… having an unified way to develop on both Windows and Unix would surely be great.
Or rather the applications that have popped up quickly that use it rule. There is no further evidence needed than that.
I think the pursuit of matching MS’s API is a nice one but ultimatley what matters most is that it makes linux development easier. So as long as the linux side is the first priority (which is is last time I checked : )) then I could care less about the other, I’ll never use it (but I’m sure businesses might find it useful, making the transition to linux less costly comes to mind).
It’s great to be optimisitc but you have to stay connected with the reality. You won’t be able to persuade millions of developers until your product is better in every aspect, including documentation.
I think you are the person who needs a reality check. I can count many technologies that have better documentation, better performance and better standards compared to the de facto technologies we use today, yet they failed in the market place.
If you want to persuade millions of developers to use your product, market and hype it well. All these “it has to be better” mantra is reality distorted.
Despite your claims to Linux’ inadequate documentation, it has already been a force to reckon with in the server market, and is slowly gaining momentum in the embedded and desktop market. It has long been used by several institutions for clustering, scientific computing, super computing to mention a few.
This “dominance” won’t happen very soon, and I never claimed it would. “If” mono continues to gain developers, community support and momentum, it will happen inevitably provided Novell is willing to spend a few million dollars on marketing.
Well it doesn’t matter how often that happens, what matters is I can’t fix a bug in the Java class libraries if there is one. Contrast that with Mono, and if you are sincere, you’d acknowledge Mono is a enticing platform for programmers, especially free software hackers.
Oh, what a naive view! So, you think that you’ve found a bug, then you’re going to fix it. But somebody else could think that it wasn’t a bug, but expected behavior. And, suddenly, somebody have to decide who’s right and who’s wrong.
Somebody else will have to think about compatibility, regressions and other not-so-sexy things.
With java, we know who will take care of this. Also, there IS a way for serious folks to influence Sun, the JCP process, which is working pretty nice.
To sum up, I feel MUCH safer with java class libraries than with mono. I know that there are very extensive compatibility test suites, huge regression test suites, and I have a peace of mind knowing that compatibility is a key for Java.
With pure open-source projects, like, for example, Linux, where every subsequent kernel breaks all existing nvidia drivers, I don’t have that kind of luxury.
So, no, open-source is not the answer. Sometimes it’s handy, but this is not an universal solution.
As a programmer, when I work with a tool I want to be able to modify the tool if need be, either to understand the tool better or to customize it for my needs.
If you want to look at the sources,
core java API sources are packaged with the java.
Also, now you could browse ALL java sources under Research License.
If you want to modify the tool, then in most cases that’s bad decision. It’s hard and boring to maintain your changes and keep up with the latest version.
It’ also funny to hear that mono developers and everybody else are free to modify mono the way they want.
If you want to be compatible with .NET, you DO NOT have this freedom. You have to imitate .NET behavior, even bugs!
SUN tells you only they can change Java, no one else.
Not really true. Plenty of companies AND individuals do contribute to java. Doug Lea, for example, with his concurrency package.
This “dominance” won’t happen very soon, and I never claimed it would. “If” mono continues to gain developers, community support and momentum, it will happen inevitably provided Novell is willing to spend a few million dollars on marketing.
There are A LOT of other “if”s. Like, what if Microsoft will decide to announce that mono in fact infriges MS patents and that MS does not approve of direct copying of it’s .NET APIs.
So, mono indeed built on sand. MS can play with it, as cat with mouse, but when (and if!) mono will start to challenge MS interests, it would be verry easy for MS to shut the whole thing off.
Oh, what a naive view! So, you think that you’ve found a bug, then you’re going to fix it. But somebody else could think that it wasn’t a bug, but expected behavior. And, suddenly, somebody have to decide who’s right and who’s wrong.
I don’t understand your definition of a bug. But by my definition, a bug is an unforseen action that causes software to act inappropriately. Going by my definition, if software acts or behaves inappropriately, it is a bug. So a bug can’t be a feature for person A and malfunctioning code for person B at the same time. That’s flawed logic, assuming we both grasp the concept of a bug.
With java, we know who will take care of this.
No you don’t. You have blind faith in a company who you hope will take care of things. What if they don’t? What do you do then?
To sum up, I feel MUCH safer with java class libraries than with mono. I know that there are very extensive compatibility test suites, huge regression test suites, and I have a peace of mind knowing that compatibility is a key for Java.
Good for you. I don’t have peace of mind with Java or SUN. Java is not free software. I have so many restriction with what and how I should use, interact and deploy the platform. And compatibility is the least of my troubles.
With pure open-source projects, like, for example, Linux, where every subsequent kernel breaks all existing nvidia drivers, I don’t have that kind of luxury.
Yes, that’s what happens when you use proprietary software on Linux. Nobody blames Nvidia for the problem, it has to be Linux. Why is it that the Nvidia open source drivers never have a problem when I upgrade my Linux kernel while the Nvidia closed source driver always borks? Go figure.
So, no, open-source is not the answer. Sometimes it’s handy, but this is not an universal solution.
No, closed-source is not the answer. Sometimes it’s handy, but this is not a universal solution.
Also, now you could browse ALL java sources under Research License.
What does the license entail?
If you want to modify the tool, then in most cases that’s bad decision.
Who are you to tell me what to do and what not to do with my code/project? Or what is bad and what is good for my code/project? That’s exactly what pisses me off about Java and the Java community, for some reason they like to tell me what is best for me, even when their opinion isn’t sought.
It’s hard and boring to maintain your changes and keep up with the latest version.
Nobody said software maintanance is easy.
It’ also funny to hear that mono developers and everybody else are free to modify mono the way they want.
If you want to be compatible with .NET, you DO NOT have this freedom. You have to imitate .NET behavior, even bugs!
Isn’t that equally true for Java. All the Java variants have to mimick SUN’s Java including their bugs. Besides, not many people use Mono for the MS libraries, mono has libraries of its own that are beneficial to *nix developers.
Not really true. Plenty of companies AND individuals do contribute to java. Doug Lea, for example, with his concurrency package.
Yeah, but they have to join a bureaucratic, slow and complex committee. And even then, SUN still has the final say.
There are A LOT of other “if”s. Like, what if Microsoft will decide to announce that mono in fact infriges MS patents and that MS does not approve of direct copying of it’s .NET APIs.
First of all, Mono doesn’t copy .NET APIs, they implement their own versions of the .NET APIs based on the information put forth by Microsoft to a standards committee. Your argument is synonymous to saying Mozilla copies Internet Explorer by implementing a web browser that displays web pages based on open standards.
For more on the patents issue follow the link below.
So, mono indeed built on sand. MS can play with it, as cat with mouse, but when (and if!) mono will start to challenge MS interests, it would be verry easy for MS to shut the whole thing off.
And Java is built on air since it “copies” various aspects of C, C++, Smalltalk and Object-C. The creators of these languages will surely sue SUN for patent infringements and it becomes a whole cat and mouse game. Oh, I’m only following your logic here.
As far as I know, you can still hold patents on ECMA standards and you can also demand reasonably royalities for ECMA standards. Microsoft seems to have said that they will not demand royalities and they will not use their patents against other implementations of .NET. See for example: http://lists.ximian.com/archives/public/mono-list/2002-March/004124…
But there is probably nothing legally binding about such statements.
Personally, I really doubt that Microsoft will not use their .NET patent portfolio if Mono gets notable marketshare. Actually if I would work at Microsoft and would have to decide what to about Mono, I would suggest to wait until it is in widespread use and then use the patent portfolio against it because this would probably hit Linux and the Open Source Community at most.
I never heard any real argument why Microsoft shouldn’t use their patent portfolio like suggested in the above paragraph. I also never heard any real argument why Mono is save if Microsoft really decides to use their patent portfolio against Mono. But then I am not a lawyer, so maybe there are arguments why Microsoft could not use their patents or why Mono is actually safe. Since some of the Mono developers seem to read that thread, it would be quite nice if they can clarify the situation a bit.
It would indeed be interesting to hear about the patent/IP issue from Miguel himself – now that he seems to be around here. After all, the IP issue is the Mono issue that seems make people worried.
MS may well have even quite warm thoughts about Mono in general (why should they oppose getting more tools, support and developers to their .NET platform?), but AFAIK, MS has clearly stated that they have never licensed any proprieatary .NEt stuff to the Mono project. Why do companies like MS have software patents? Don’t they want to get license money (or equivalent benefits) from others using the same technology? Is Novell and the Mono project ready to pay MS later? What about the rest of the open source community?
Thogh many developers are very excited about the Mono project, Mono also seems to be surrounded by lots of negativity and fears (though a lot of it may be due only to the cronic MS allergy among the FOSS community). Just read the comment thread here and you cannot deny it. That negative atmosphere and all sorts of looming IP/patent threats, whether serious or not, are harmful to the Mono project. Those IP issues just should be solved or at least clarified well enough in order to Mono be widely embracd in the open source community.
As about calling it a “terrible” technology, the console works and asp.net works and so the many extensions. Monodevelop works.
I’m pretty sure that many of the people calling Mono “terrible technology” have never even really tried it and just suffer from the MS allergy I mentioned above… Sure, better Mono IDEs are needed, but otherwise Mono seems an excellent thing technically.
The ultimate solution to the combined Mono/MS allergy among the FOSS crowds could be if Novell/Mono could sign some official statement or deal with Microsoft that would clarify the Mono – .NET relationship and the potential IP issues once and for all as clearly as possible. Otherwise, I’m afraid, too many in the FOSS community will continue to feel negatively about Mono. Whether that sort of deal would be possible, I don’t know?
I’ve tried mono on Windows on Linux just to tested with basic programs, mono is highly compatible with .NET.
Despite the lack of good IDES mono it self is a great piece of work, is so easy now make a program with Glade + GTK#, I personally happy to see mono getting the credit it deserves.
Miguel you could probably answer this better than most.
I’ve already said my piece in the past about how the RAND licensing conditions of the ECMA standards are somewhat shaky, especially should Microsoft leave the ECMA. That is written down in a PDF agreement file on ECMA’s web site.
Miguel, the Mono people and the people at Novell could clear this up well if they wanted to but they haven’t. The standard line is “Oh, you could be sued over anything” painting over the fact that the way Microsoft has gone about things with .Net is different. They have also given out confusing signals concerning this mythical letter that says that the licensing terms for the ECMA standards will always be subject to the conditions they are now. No one has seen such a letter.
It begs several questions:
1. If there are no patent or licensing problems with the base ECMA standards, or replication of the other parts of .Net, why bother telling everyone you have some sort of letter?
2. If Mono is in control of its own destiny why bother telling everyone you have a letter from Microsoft, HP et al supposedly guaranteeing the future licensing of them?
The catch with Mono is that if it adheres to the ECMA standards, and many parts are implemented on the top that aren’t a part of the ECMA, then Microsoft can legitimately say it is .Net clone. There’s no real debate about it. Technologies around Java and other things don’t have that problem because they don’t adhere to licensed and/or patented standards. It’s a massive grey area that no company, however large, can realistically get into. They may adhere to a community process or pass a set of tests but that’s about it. All that may not be a problem for a company like Novell, but it is a problem for community software.
Nice one Microsoft. You have to give them some credit sometimes, and it has now become very clear that people just don’t even understand it when it’s infront of them.
Microsoft has been the sponsor of some Mono conferences.
It makes them look good, and it gives them a nice line that .Net is open that they can use it at all these .Net conferences and feed it to the people who go on .Net training courses.
I’ve been on a couple, and they even tell you that Mono uses Rotor code and that the two are interchangeable! It doesn’t really matter though as those people are going to do nothing with either Mono or Rotor.
Should open source developers like GNOME devs first become lawyers so that they could freely implement Mono in their projects without a fear? The current legal situation of Mono is all too confusing – at least to us mere mortals. Mono walks too much in the “grey legal area” currently. Mono should first try to solve those uncertainties, and *then* they would see a huge boost in the Mono popularity too. Even a good IDE or two won’t solve the IP issues.
For example, I’m certain that lots of large companies could be interested in running ASP.NET and ADO.NET on Mono/Linux as ASP.NET/ADO.NET could offer suberb functionality especially for heavy and demanding business web tasks – but they just won’t do it because of all the uncertain legal aspects related especially to those problematic higher level .NET blocks. Now, is it safe to use ASP.NET/ADO.NET on Mono/Linux or not?? If not, stop advertising those things on Mono web site then and concentrate on the basic ECMA/ISO covered parts. Does anyone know for sure? Miguel? (ok, you must feel tired to answer the IP-related questions all the time but you need to as many of us just still don’t seem to get it…)
But also .net is not opensource. But Icaza opened is mouth and hundred, thousand of programmers joined him to make a clone opensource of .net
So the real question is it: WHY??? Why people ask sun to opensource java and not ask microsoft to opensource .net?
Why nobody helps programmers of kaffe sable etc. and hords of programmers helps mono?
Why all these people and programmers want java or .net on linux risking legal troubles when there are a lot of powerful opensource alternatives (perl, php, ruby, eiffel, lamp, apache, kde, etc. etc. etc.) that can be improved in an enterprise optic?
Why there are so many zealots ready to adore mono or java when you have gnustep?
Because those technologies are better documented or you can even say “newbie-friendly”.
If you ask the maintainer of most of the technologies you’ve listed – say gnome’s gtkhtml the reply is “Use the source Luke”.
If you email the eiffel team saying that you can’t install their libraries – the reply is: you must be doing something wrong then.
In short either you get a cold silence – if not ridicule.
While there is no doubt each technology you’ve mentioned are worth every single credit as being superb. Not everyone are hard core programmers but more designer/programmer some even part-time accountant / part-time programmer.
They can’t afford the hassle of hacking and groking each line instruction. Undocumented and newbie-averse.
So naturally the visual ease of Java and/or .Net will have some much more appeal.
Can you do a KDE app in a few days? Try.
Now even not knowing Java you can bung something together pretty fast – why? Because of a plethora of *visual* resources. Geddit?
“As for the patent discussion, there is nothing new to
add. If you really care, we have our FAQ and the archives
for the various angles on the mailing list.”
Archieved mailing list discussions? A couple of short FAQ paragraphs with one link to a short email comment (by Tim Miller from MS)? What use is that sort of stuff for a lawyer, for example?
Are there some more legally binding official documents about the legal position of various Mono technologies, by Novell/Mono and/or Microsoft and/or lawyers and/or patent/IP offices and/or ECMA etc.? If not, rest assured that there will continue to be lots of Mono critics, uncertainty and doubt especially in the open source community and that that natural reaction can also seriously hinder Mono acceptance, development and growth. And if GNOME starts to use Mono more, what will this mean to GNOME development?
I cited gnustep as an example but I would like to underline that now I am using in a new project java with JSF+hibernate and this “new” tecnology let me do the same thing I did ten years ago with webobjects+eof. Then unfortunately jobs said that nextstep technology should be only apple propriety and I had to wait ten years to came out to prehistory. Yes, now we have also garbage collection in ten years is a good improvment I suppose.
That said comparing only “new and more advanced” technologies I think that java was a better choice to reimplement over .net at least for a reason: better specification. For example .net has winforms that is difficult to reimplement in mono. I have already seen some .net opensource software that cannot be used under linux because it uses winforms. With java every software I see I can run it under linux.
Each distro has at least 1000 pages then add the fact that each substantial project then does its own.
Quantity doesn’t matter: quality does. Unfortunately, that is often what is lacking. For example, I’ve recently tried to set up an OpenLDAP server on my Linux server. Pretty much every document I have found was for an outdated version. I’ve browsed some Linux forums and it turned out that I was not alone…
That said, the documentation is still hundred of times better than when I began using Linux (about seven years ago). However, I was targetting the documentation of the APIs, not how to set up a server. Remember that we’re talking of Mono.
Go into your local book store check out the Linux section…big isn’t it
I think you are the person who needs a reality check. I can count many technologies that have better documentation, better performance and better standards compared to the de facto technologies we use today, yet they failed in the market place.
If you want to persuade millions of developers to use your product, market and hype it well. All these “it has to be better” mantra is reality distorted.
So you expect that Mono will become widely used with hype and marketing? Well, I can only wish you luck. I know many developers praising the MSDN documentation and I don’t think that marketing, hype and GTK# doc would change their mind but we live in a free world…
I’m not saying Mono is already doomed. It definitely has a future. I just think some people are understimating what they have to do for beating Microsoft’s .NET.
He wants to develop MONO and want to have it mature till a grade where MONO will lead the standards of .NET and C#. To make this better understandable, we all know that most standards are directed by Microsoft. As in this case it’s .NET. Now Miguel and his folks want to work on MONO so much that it will lead the standards of .NET and C# one day because he believes that an open source implementation will gain better momentum and more acceptance in the software development world. Now Miguel go for it and overrun Microsoft and make MONO become the standards of .NET and C#. Microsoft will soon play catchup here.
any piece of open source software (Mono included) a
blanket right to use patents
Yeah, software patents in general are a real nightmare, of course…
Short of doing a review of millions of patent claims
against every line of code, we are using the industry
standard
Ok, using ECMA/ISO standards is fine. But what about the not-so-clearly-industry-standard parts of Mono that, after all, also seem to be rather a relevant part of Mono and also advertised on the Mono website? As far as I understand, for example, ASP.NET and ADO.NET are among such technologies. ASP.NET may be considered an unessential thing in Mono, but as a person that has been doing web development, ASP.NET is personally interesting to me.
It is very unlikely that MS can threat MONO by enforcing patents… for many reasons:
1) Microsoft almost never threats to stop competition by using patents or legal means. If you ask them, they will answer that they’re proud they never used legal means to overtake competitors. They care about that reputation. If they would force MONO to shut down, their reputation wouldn’t improve for sure.
2) They control technology so they have no need to enforce patents. They can improve, change etc etc.
3) I’m sure they are considering MONO as a way to enter Unix market. Situation is very slippery… we don’t know what Microsoft is going to decide. They might decide to put a step into Unix market by using MONO to convert their products or they could just stick with Windows-centric strategy. There’s no need to kill MONO which might come in handy for them or for .NET developers.
4) In case you didn’t notice, Microsoft already switched technology. Surely .NET is going to stay and they would not harm backward compatibility by introducing changes just to harm MONO. But MS future is INDIGO, AVALON and so on. Note that such technology can be backward compatible. So they have already enhanced .NET and a .NET 2.0 compatibility layer for Unix systems can be handy.
I understand concerns and Miguel and Novell should address this area in a better way. While they’re not ignoring this problem, they can’t say (as for now) to developers “Don’t worry, use MONO: there won’t be any problem”. This should be addressed. At worst, Novell can license .NET… or trade that license for a pending Wordperfect legal issue… 😉
3rd party patents people, you can either face reality that patents suck and you have to work around them[0] or stop developing software. How about you guys stop whining?
[0] From Mono FAQ
1 work around the patent by using a different implementation technique that retains the API, but changes the mechanism
2 remove the pieces of code that were covered by those patents
3 find prior art that would render the patent useless.
@David/other trolls
How about stepping up to the challenge and develop a *superior* development platform. Come on, I’m waiting…
C-sharp; thus, mono, is dead meat. It’s MSFT’s “answer” to Java–make it Windows specific. Which means it will be relegated to fewer and fewer back rooms, in Windows-only shops, while elsewhere increasing amounts of LINUX, BSD, and OSX will be the rule. The fact that one can NEVER deploy .net without totally pissing off tons of customers is a killer.
> when the interviewer wanted to ask more indepth he pointed to Miguel for answers
Where I come from, we call that honesty. Really, there’s a world of difference between writing a decent tutorial on Mono and being experienced with large deployments of it.
Gnome fanatics? I love mono, I love Gnome, but I’m not fanatic. So what if I prefer mono+gtk#, gtkmm, gtk to QT? You mean to say that choice is limited to your toolkits except for fanatics?
What’s funny is that through all of this, when people bring up perl, ruby, python, etc. Miguel never has an answer.
Professionally, I have to write c# ever day, and I’ve been writing c#/.NET apps since before .NET was out of beta. But I’ve been doing it because it’s industry trend, and it’s what people are hiring.
Personally, however, I’ll keep using Ruby until I’m given one good reason to choose c#. Ruby has a better library, better documentation, a better community, is syntactically a better language, is easier to interop with C code, is truly cross-platform, is an OSS project being led by OSS developers (not an OSS project being led by whatever MS throws into the spec.) etc. etc.
furthermore, the languages and the runtime really aren’t that impressive. nor are they anything new. .NET’s OOP system is less than impressive. it’s basically in the same family as Java and C++. (no meta-classes, classes are not objects, no runtime mutation of class definitions, etc.) you can define or manipulate classes at design time only, you have to be mindful of typing and casting all over the place, etc.
yes, i know there’s a ruby version targetting the .net runtime. i don’t care. .net offers no libraries that aren’t available in standard ruby library. All that the .net version offers is memory bloat.
basically, i think mono is stupid. not because of patents. not because it’s copying MS…but just because the technology and language really aren’t that interesting or useful over anything else.
the multiple-language support argument only holds water when you’re talking about developers that can’t be bothered to make a minor adjustment now and then and expand their knowledge.
basically that feature is targetted at VB code monkeys. and i don’t care about vb code monkeys.
some day miguel…you’ll learn what it feels like to use a *good* language and maybe you’ll stop heralding c# as the second coming.
i’ve never seen a developer who spent so much time blogging and talking and attending press interviews.
makes sense when you think about the real reason he’s so excited and protective of the mono project.
Reading through some of these posts, it struck me that the largest impediment to widespread mono adoption is a competitive developer tool. If someone were to create an eclipse plugin for Mono, and then advertise it indicating that it would create .NET code that could run on Windows OR Linux vs. MS Studios lock-in, it might have some success. I’m a java-guy right now, and use a subscription based plugin called MyEclipseIDE, for $29/year.
Low cost development, no system lock in – that would be huge.
> i’ve never seen a developer who spent so much time
> blogging and talking and attending press interviews.
Indeed, when reading planet.gnome.org you see most people usually write up to 10 lines of private stuff that occoured to them during daylife while Miguel is writing 100 lines of basicly commercial marketing crap + coding examples about MONO that no one cares for.
Yes infact .net and java are well documented. But what I want to say is that if programmers that jumped to mono decided to help perl php gnustep etc. projects now also these projects should be better. With these projects almost ready why restart from scratch with mono?
@miguel
Yes JNI code is not portable. But “fortunately” jni api is so bad that noone use it. Yes obviously if I have a platform without jvm I cannot run java software on it. But I use linux and only care about it. Linux has JVM and I can run all java software on it with swing (awt is obsolete) and swt. With mono unfortunately I cannot run all .net software.
@hobbit
I agree completely with you. I use java for work and I am not happy with it. A lot of things can be programmed faster with ruby or perl or other but obviously on AS/400 runs java. And banks managers want java. Mono is the same: novell wants an enterprise api and pays several open source developers to develop it and to spread the word. Then there is zealotry effect and other joins. So now we have “rich” open source projects and “poor” open source projects. Innovation is at an end: if you have a good idea nobody helps you if you do not have big industry support.
Mono has no technical merit (I am not speaking of implementation but of api) but now people think it is the best thing.
No – not in the same way as .Net and any implementation built on top of ECMA that tries to be MS.Net compatible. Please read what has been written, as the above is the standard line we get given all the time with Mono. It doesn’t apply.
ECMA gives Microsoft carte blanche to license their core standard, their IP, their technology and any patents in the future. If that happens, whether Microsoft intends anything or not, the community will be forced to rip out any remnants of Mono or any .Net implementation. It just cannot be risked, as the FUD (and I mean real Fear Uncertainty and Doubt) would reign supreme and no one, certainly in the commercial world, would touch it with a bargepole. You just cannot give that gift away to Microsoft because they’ve got enough of that as it is.
1 work around the patent by using a different implementation technique that retains the API, but changes the mechanism
2 remove the pieces of code that were covered by those patents
3 find prior art that would render the patent useless.
Meaningless. We are talking about the base standard and everything built on top of it. You’re going to have to rip out a lot of code.
Point 3 is also brought up a lot. That’s meaningless because any patents or technology Microsoft may choose to license outside of the ECMA applies specifically to .Net and their implementations and not to anything else. Microsoft will quite rightly point out that they could have went off and implemented something completely different in any way that they wanted.
None of the three above points are going to hold water. You have to ask yourself – is it worth it? The answer is no, obviously.
I am a .NET developer but have unsubscribed from the MONO list, because GUI is my concern. They are working hard now with Cairo, but unless I can’t write gui’s with Mono I can only seek alternatives.
The Qt/GTK World, The Python World, The Ruby world are in no way as accessible as the .NET/Java world.
Which can only add to a few newbies giving up after the 10th try.
Again .NET/Java will appeal more to the semi-developer. No offense, I am not saying those technologies ARE for the semi-developer but it will appeal more to them.
Why?
Because of the “Teach-Yourself Visually” approach.
It is only up to the defenders and documentators of those language above to address the issue *IF* they want also win the casual-developer.
If they want just to remain hard-core (for whatever reason, even endorsing better coding or retainer brainier folks) then they can’t complain.
Otherwise you will always have a big section of enthusiasts being drawn toward these more newbie-friendly highly-motivated languages.
I’ve learnt C# in less than a week just by watching videos.
Java today has a larger ecosystem of open source technologies, but .NET is quickly maturing in this area…
Mono or .Net is quickly maturing? Please be aware that the two are not interchangeable in any way. If you think they are then the last twenty years of Microsoft’s history has totally flown over your head. You can’t even really compete with Microsoft on mindshare (there’s more to it than just patents or licensing) when you’re not on their turf, and you think you’re going to do it on theirs?!
I’m afraid it isn’t zealotry. It’s happened many, many times before.
Not much information (yeah, mono has a brigh future kind of interview) and when the interviewer wanted to ask more indepth he pinted to Miguel for answers.
I like the opening line “Hi Mr. Edd”
Given how young the Mono project is it has come a long way, it’s goals in the end will be hard to achieve given the likelihood of a moving target.
Oh my god.
It never ocurred to me what Ché Kristo said. He
is absolutely right!
Lets abandon all hope! Defeat is imminent!
Lets all purchase a Windows PC or a Mac!
One day, we might be as clever as he is and figure these
things in advance, instead of working for four years on
these things.
Agreed. The interviewer did try to get some technical questions in, like asking about the performance issues compared to the .NET VM and problems they had moving ASP.NET apps to XSP. However it’s quite disappointing to see the responses take a more ‘marketing droid’ type approach of saying how good the Mono team is, how responsive they are to suggestions, yadda yadda and completely side steps the issues raised.
Look at Samba, they have their work cut out for them and I admire that they have perservered that’s what I am saying about Mono if dotnet compatability is a stated goal…I am not saying it will fail, far from it.
I think you’ve gone on the defensive for no reason Miguel
Though I will take that mac if it’s still on offer
Not all of them…
I think that’s pretty much inevitable to be honest. The client end of .Net will be a continually moving target, and will increasingly depend on Windows specific components that will be impossible to replicate. The weight of numbers of people using MS.Net will ensure that the pressure on Mono to replicate everything MS.Net does will maintain this status quo, and ensure that Mono is never in control of its own destiny. Mono was always an absolute non-starter from the begninning, and anyone who thought it was going to succeed was naive in the extreme. Of course people always get blinded by the open ECMA standards – something Microsoft does every time, and there is always a sucker willing to take it up. You have to avoid getting into that trap from day one, and the Mono people haven’t done it.
On the server and web app side Mono has a chance because it doesn’t have the baggage of the the demands for MS.Net and Windows compatibility. However, when you look at the massive Java and J2EE infrastructure around Apache and other established alternatives like PHP and Python that people are actually using, you have to ask yourself what on Earth Mono and ASP.Net is going to bring, especially considering its performance for such things is not up to scratch. Anyone who is using ASP.Net is doing so on Windows.
Bizarrely, not even Edd Dumbill felt qualified to talk on those subjects, and totally avoided giving any answers on ASP.Net, XSP and whether they were fully ready to develop highly qualified business applications. Novell obviously doesn’t think so as all their web applications run via Java and Tomcat, and I see no moves afoot for them to move to Mono, XSP and ASP.Net on Suse and eat their own dogfood any time soon.
I’m afraid that Mono is a solution that has taken four or five years (and still isn’t complete) looking for a problem, has represented quite a bit of wasted effort and is basically a lemon for Novell. I don’t know what on Earth Novell themselves are doing with it.
Nevertheless, its provided some nice publicity and photo opportunities for people . An open source implementation of .Net. Now that has a certain ring to it…….
is Wine complete?
I think you make some valid points about mono on the server, but it isn’t all gloom for the desktop. Although as you have pointed out the project will have to put in a lot of work once MS starts shifting the sands a bit.
True what you said about the ASP stuff though.
I was wondering when David “Spin Machine” would post on
this thread. Hey dude, you were late, you only got here
at the 11th post. Must be a first.
It is worth replying today, as David has found a new argument
against Mono (in reality, anything that helps Gnome is seen
as a threat by David).
Novell is not in the business of rewriting existing and
functional code, and that is why the existing server
products continue to use the technologies they were using
before: C, C++ and Java.
New products on the other hand are being developed using
Mono. For example, the iFolder server is a pure managed
C# application running on Mono. This was done because
iFolder 3 is a big departure from iFolder 2, and it merited a rewrite.
As a side note, ASP.NET is the fastest growing web
technology today. Am sure this is because it is also the
most recent and its easy to gain terrain on the early days.
But various people run their mission critical applications
using our implementation:
A good example is the City of Munich with the Voelcker
product. See their web site for quotes and the case study,
as it seems that you are ‘selective’ about what you believe
from a Novell press release or case study.
Miguel
David,
Your criticisms are unfounded. You ask what the point of Mono is. May be it is to provide a free and open alternative to .NET. One that is also portable and isn’t restricted by onerous licensing schemes. May be it is to provide a unified development platform for free software developers who wish to design, develop and deploy their application with ease.
As Mono gains more momentum and as developers become comfortable with its concepts, Mono will begin to look less like .NET. It’s already begin to do just that. Yes, .NET compatibility might be a hindrance, but it’s not Mono’s only option. Many GNOME developers that have deployed Mono applications cannot emphasize enough how wonderful this platform is.
Maybe if Java were truly free software, free software hackers would take it seriously. As it stands today, if their is a bug in the Java class libraries, all I can to is wait for SUN to fix it, that is if they agree it is a bug through their wannabe open committee. Contrast that with Mono were one and all are invited to write patches for it and contribute to its evolution.
If Mono is such a failure, why do I see more Mono desktop applications than I do .NET. To date, I haven’t seen one .NET desktop application. Today, Mono may have to be compatible with .NET, in the future, it might not need to.
…when I say, I wish Sun had open-sourced Java the SECOND Microsoft released .NET in polished form, the SECOND .NET started to gain steam.
The reasons they _didn’t_ do this just absolutely baffle me.
(1) Releasing it open source DOES NOT MEAN Sun could not maintain a “stable” version of Java to be used by the masses. This means corporations supporting enterprise apps could remain happy.
(2) OSS projects would feel perfectly comfortable using it. The second Java becomes open source is the second there are amazingly good GTK and KDE bindings for it, and suddenly all desktop applications seeking a high-level language could use Java. Since Open Source developers care about cross-platform, speed, and other such things, Java would inevitably improve, and new stable releases would be even better.
(3) Linux would have an open source high level language (Java), an open source high level IDE (Eclipse), with open source high level GUI design tools to follow (Glade-Java?)
(4) Sun would finally, finally BEAT MICROSOFT.
Instead, Sun is cowering in a corner while Windows programmers, and now even LINUX programmers, move to .NET, and play catch-up.
I used to be a Mono believer, but you know what places me in disbelief? Marketing. Mono will simply never be as well marketed to low-end programmers (9-to-5ers making ASP.NET or C# applications all day), and will only be used by a handful among very skilled engineers. So we’re stuck with, basically, closed software proliferating like mad. Makes me sad.
I was wondering when David “Spin Machine” would post on
this thread.
That’s funny. You’ll know more about spin than I do. You’ve been doing it since you started.
It is worth replying today, as David has found a new argument against Mono (in reality, anything that helps Gnome is seen as a threat by David).
I don’t know where you get the idea that Mono helps Gnome, or why Novell should naively plough developer resources into it. After five years you’ve got to start looking at what is actually going to be practical.
Novell is not in the business of rewriting existing and
functional code, and that is why the existing server
products continue to use the technologies they were using
before: C, C++ and Java.
What’s the point then? They put a large amount of effort in porting all their existing web applications to Suse and Java so I would hardly call them existing.
As a side note, ASP.NET is the fastest growing web
technology today.
On Windows.
See their web site for quotes and the case study,
as it seems that you are ‘selective’ about what you believe
from a Novell press release or case study.
When it comes from your department or side of the company yes I damn well am, and I then start looking for evidence of what Novell actually uses and actually sells. The reality is always somewhat different.
You ask what the point of Mono is. May be it is to provide a free and open alternative to .NET. One that is also portable and isn’t restricted by onerous licensing schemes. May be it is to provide a unified development platform for free software developers who wish to design, develop and deploy their application with ease.
Maybe it is. The realisation is something else, as people have to start actually using this for something.
As Mono gains more momentum and as developers become comfortable with its concepts, Mono will begin to look less like .NET. It’s already begin to do just that.
Has it?
Yes, .NET compatibility might be a hindrance, but it’s not Mono’s only option.
Given the usage of MS.Net and Windows’ market share, yes it is. People see it as a clone of .Net and will expect it to behave in exactly the same way. That’s the problem.
Many GNOME developers that have deployed Mono applications cannot emphasize enough how wonderful this platform is.
That’s wonderful, but I’m afraid it’s not about Gnome developers.
Maybe if Java were truly free software, free software hackers would take it seriously. As it stands today, if their is a bug in the Java class libraries, all I can to is wait for SUN to fix it, that is if they agree it is a bug through their wannabe open committee.
And how often does that happen? It’s obviously a massive hindrance to all the open source Java applications, infrastructure around Apache and to all the Java app server providers.
If Mono is such a failure, why do I see more Mono desktop applications than I do .NET.
Because they’re open source applications and not in-house developed or commercial applications. There aren’t many commercially sold .Net applications out there, but there are many in-house developed .Net applications. Guess what? They’re all using MS.Net.
Today, Mono may have to be compatible with .NET, in the future, it might not need to.
Any ideas as to what will change that? The weight of usage is with MS.Net, and that is not going to improve. If people then see Mono as a .Net clone they will expect it to do everything MS.Net does. If it doesn’t they’ll ditch it or at best place unreasonable demands on replicating huge parts of Windows and Microsoft infrastructure.
So no, I don’t think my criticisms are unfounded at all. You haven’t addressed many of them.
Listen, this moving target stuff is just crap:
1. Mono is only partly about getting windows developers and applications over to Linux. It is mostly about getting a great development platform for Linux (and for Gnome). If MS breaks compatability, that doesn’t mean people can’t still have that fantastic development environment or that apps using mono will quit working.
2. Of all the many things you can justifiably accuse microsoft of, being bad about backwards and forward compatability for their api’s is just not one of them. Maybe they are not perfect but compare MS to gnome or kde! Try compiling anything from a couple years ago on Fedora Core 3! Good luck. And try building gnome 2.8 on Redhat 7.3 (I actually tried this). No chance. Microsoft likes to screw over their competition but they also like to keep developers happy enough to stick around. They do this by providing reasonable development environments and maintaining compatability. If they broke compatability just to break mono they would be shooting themselves in the foot big time.
If MS decides to sink mono it will be with patent battles. Not by making it a moving target.
And to you people who criticize the technology itself, you have no idea what you are talking about. This is good shit. Really.
The one bad thing I will say about it is that the documentation and dev tools really suck big time especially for gtk#. Some docs and tuturials exist but they are very incomplete.
The patent issue is brought up often.
Miguel you could probably answer this better than most.
I think that’s pretty much inevitable to be honest. The client end of .Net will be a continually moving target, and will increasingly depend on Windows specific components that will be impossible to replicate.
This is not so sure as one might think. Given that MS will still pursue its goals and so it will try to provide better technology around .NET, MONO can easily become a lower denominator for both worlds. As MS will support (of course) .NET 1.1 / 2.0 in future Windows versions (starting from Longhorn), if MONO achieves good compatibility it can play a good role for developers willing to shape their software for more than one single platform. I don’t think MS will shoot in their foot by changing PAST specs to undermine MONO. I think we agree on this, right?
The weight of numbers of people using MS.Net will ensure that the pressure on Mono to replicate everything MS.Net does will maintain this status quo, and ensure that Mono is never in control of its own destiny.
Since MONO is a .NET implementation for Unix systems (and Windows too), MONO doesn’t need to be in control of its own destinity, until of course MONO userbase will be so wide to shadow .NET one. But that’s not the point. Introducing differences on MONO end would be simply dumb because MS controls Windows technology while Novell doesn’t control Linux technology. As a starting, MONO just needs to be as close as possible to .NET.
On the server and web app side Mono has a chance because it doesn’t have the baggage of the the demands for MS.Net and Windows compatibility.
That’s not true at all. Starting from .NET 2.0 there will be many Longhorn-specific (or better, Avalon-specific) enhancements for clients too. However, that’s not the point again. If you knew this technology better, you would know that ASP.NET is very keen to openess, provided that developer *really cares* about it. WebControls technology, for example, allows developers to render contents for multiple clients, from mobiles to Avalon-specific. It’s up to the developer to decide which client technology to support while server processing always stays the same.Of course, if someone decides that supporting 2-3% Firefox market is not worth the pain, your content won’t rendere very good on FF. But again, that’s up to developer. However, this is a weak point caused by the fact you don’t know such technology very good. Or at least, it looks like that…
However, when you look at the massive Java and J2EE infrastructure around Apache and other established
If they’re so good compared to .NET, why are people buzzing to have .NET on Unix? Unix people is so eager that 2 (not just one) .NET implementations are being developed. I guess it was not MS marketing dept. fault…
alternatives like PHP and Python that people are actually using,
Uh? Comparing PHP or Python to .NET ? Are u joking? Those are completely different stuffs.
especially considering its performance for such things is not up to scratch. Anyone who is using ASP.Net is doing so on Windows.
That’s up to them to improve but I think that will improve.
Bizarrely, not even Edd Dumbill felt qualified to talk on those subjects, and totally avoided giving any answers on ASP.Net, XSP and whether they were fully ready to develop highly qualified business applications.
I was highly disappointed by that interview too. It was pretty useless because he didn’t into well-thought questions. However, that doesn’t mean MONO is not good, but just that guy is not good at marketing it 😉
Maybe it is. The realisation is something else, as people have to start actually using this for something.
Yes, and Mono is already being used to for something, to develop applications at all levels.
Has it?
Yes, it has. Mono supports a lot more open source libraries, specifically graphic user interface, database and even web browser libraries, in addition to most of .NET libraries.
Given the usage of MS.Net and Windows’ market share, yes it is. People see it as a clone of .Net and will expect it to behave in exactly the same way. That’s the problem.
Yes, today people see it as a clone, but when they install it and use it, they’d realize it is more than just a clone. Heck, I used to think the Linux GUIs were just a clone of Windows XP, until my naïve thinking collided with reality. I am more enlightened now.
That’s wonderful, but I’m afraid it’s not about Gnome developers.
It is. It is about developers who need a unified platform to design, develop and deploy a wide category of software solutions ranging from server applications to desktop applications and much more. GNOME developers are just a set of Mono end users weilding mono to develop interesting applications for the desktop. It’s proof of the maturity of Mono for desktop development.
And how often does that happen? It’s obviously a massive hindrance to all the open source Java applications, infrastructure around Apache and to all the Java app server providers.
Well it doesn’t matter how often that happens, what matters is I can’t fix a bug in the Java class libraries if there is one. Contrast that with Mono, and if you are sincere, you’d acknowledge Mono is a enticing platform for programmers, especially free software hackers. As a programmer, when I work with a tool I want to be able to modify the tool if need be, either to understand the tool better or to customize it for my needs. SUN tells you only they can change Java, no one else.
Because they’re open source applications and not in-house developed or commercial applications. There aren’t many commercially sold .Net applications out there, but there are many in-house developed .Net applications. Guess what? They’re all using MS.Net.
Well I could also come up with unfounded arguments that there are millions of Mono applications being used in-house. But I wouldn’t. I rather base my discussion on facts and figures, rather than conjured up in-house statistics.
Any ideas as to what will change that? The weight of usage is with MS.Net, and that is not going to improve. If people then see Mono as a .Net clone they will expect it to do everything MS.Net does. If it doesn’t they’ll ditch it or at best place unreasonable demands on replicating huge parts of Windows and Microsoft infrastructure.
Much will change and much is already changing. Mono will become more portable and as a result of it’s portability it will become more robust. While .NET on the other hand will lock you to one hardware and software platform. Mono will continue to leverage open source technology and resources to differentiate itself from .NET. In the process, Mono will prove that open source technologies are just as good as their proprietary counterpart and in many cases better. Since Mono is free software, it will evolve in ways not even envisioned by the Mono founders or Microsoft’s .NET team. It’s a only a matter of time before developers will begin questioning the purpose of .NET, when Mono is portable, free and equally functional, if not more.
So no, I don’t think my criticisms are unfounded at all. You haven’t addressed many of them.
I have, you just enjoy making a mockery of other peoples’ efforts and justify your criticisms with unsubstantiated evidence, false alarms, backward thinking not to mention fear, uncertainty and doubt.
Much will change and much is already changing. Mono will become more portable and as a result of it’s portability it will become more robust. While .NET on the other hand will lock you to one hardware and software platform. Mono will continue to leverage open source technology and resources to differentiate itself from .NET. In the process, Mono will prove that open source technologies are just as good as their proprietary counterpart and in many cases better. Since Mono is free software, it will evolve in ways not even envisioned by the Mono founders or Microsoft’s .NET team. It’s a only a matter of time before developers will begin questioning the purpose of .NET, when Mono is portable, free and equally functional, if not more.
It’s great to be optimisitc but you have to stay connected with the reality. You won’t be able to persuade millions of developers until your product is better in every aspect, including documentation. Judging by the current state of documentation on Linux, I don’t think this “dominance” will happen soon. Not in years, let alone months.
no documentation for Linux my foot.
Each distro has at least 1000 pages then add the fact that each substantial project then does its own.
Go into your local book store check out the Linux section…big isn’t it
As a .NET guy, I’m surely monitoring MONO and how it’s evolving. I have to admit that having such technology on Unix/Linux would make that platform very interesting for me and my company, which has embraced .NET since almost a couple of years now. Such technology is the main reason while we’re still sticked to MS. There are others, of course, but having .NET is probably the most important.
In my opinion, top reasons why .NET people cannot consider MONO (yet) are:
1) TOP lack of decent tools! Aren’t we supposed to switch to MONO and use Linux’s Notepad to code mission critical applications… are we? 🙂 That’s absolutely top priority! MONODevelop is no way near to Visual Studio.NET but not even to SharpDevelop or WebMatrix (for ASP.NET). As you can see, MS is developing .NET 2.0 AND Visual Studio 2005 together…
2) why did u people worked to implement 2.0 features while you still haven’t all 1.1 features in? Right now, MONO is an hybrid… no 1.1 compatibility but 2.0 features… O_o Iy would have been easier for .NET developers if MONO would have followed a clear path: .NET 1.1 compatibility and then 2.0. This way I could just think to convert my 1.1 applications to MONO. Instead, right now you’re not 1.1 compliant but you’re not 2.0 compliant as well. That’s not good. It should be easier for developers to convert, not harder…!
3) Where’s VB.NET compiler? While this might seem not so important, I think we have to learn from past experiences. MS has driven tons of developers into its technology by VB! Many of them then switched to advanced programming (which was not possible with old VB version) but many just stayed and released software which didn’t need such complexity. Plus, VB.NET is no way comparable to old VB! And being language-neutral IS a .NET feature. I think that having a VB.NET compiler already in is more important than supporting generics!
4) Where are decent tools? 🙂 (I told it was important…)
However, keep up the good work! I’m sure many .NET developers are turning an eye toward MONO and monitor its progress… having an unified way to develop on both Windows and Unix would surely be great.
Or rather the applications that have popped up quickly that use it rule. There is no further evidence needed than that.
I think the pursuit of matching MS’s API is a nice one but ultimatley what matters most is that it makes linux development easier. So as long as the linux side is the first priority (which is is last time I checked : )) then I could care less about the other, I’ll never use it (but I’m sure businesses might find it useful, making the transition to linux less costly comes to mind).
Hello,
Mono is exclusively the SDK component, we do not have
the people to build the full IDEs. We have left that job
to others (MonoDevelop, Eclipse). MonoDevelop is used
to develop Mono itself by some developers. We certainly
need more.
As for commercial developers, plenty of commercial
“9-to-5” developers like you say have had no problem moving
to Mono. We are hand-holding various companies at various
levels in Mono adoption to make their migration successful.
There are certain things we have no plans to implement
at this point: the COM and COM+ support stacks for example
(see the roadmap for details), others we are. So most
of our work is to complete the gaps in 1.0, but many of
the 2.0 features depend on a core: C# 2.0 and VM 2.0 so
work on those had to start earlier to enable that kind of
work, otherwise our work would have to be serialized for
quite longer.
Another reason is that work has been partitioned: some
of our developers are compiler people, some are XML people,
some are middleware developers and we are using their
expertise in their best areas. So instead of wasting a
great middleware developer on Windows.Forms, they are
working on 2.0 middleware features.
VB.NET and other third party compilers are supported,
but you have to compile your code on Windows until we have
a free compiler. The resulting binaries work out of the
box in Mono. We are working on it, but it wont be ready
on Mono 1.2 (you can test it today, the compiler is called
mbas).
We are aware of the need for better tools, and we are
addressing some of those issues, but you cant cook an
open source baby in two months 😉
Miguel.
It’s great to be optimisitc but you have to stay connected with the reality. You won’t be able to persuade millions of developers until your product is better in every aspect, including documentation.
I think you are the person who needs a reality check. I can count many technologies that have better documentation, better performance and better standards compared to the de facto technologies we use today, yet they failed in the market place.
If you want to persuade millions of developers to use your product, market and hype it well. All these “it has to be better” mantra is reality distorted.
Despite your claims to Linux’ inadequate documentation, it has already been a force to reckon with in the server market, and is slowly gaining momentum in the embedded and desktop market. It has long been used by several institutions for clustering, scientific computing, super computing to mention a few.
This “dominance” won’t happen very soon, and I never claimed it would. “If” mono continues to gain developers, community support and momentum, it will happen inevitably provided Novell is willing to spend a few million dollars on marketing.
Well it doesn’t matter how often that happens, what matters is I can’t fix a bug in the Java class libraries if there is one. Contrast that with Mono, and if you are sincere, you’d acknowledge Mono is a enticing platform for programmers, especially free software hackers.
Oh, what a naive view! So, you think that you’ve found a bug, then you’re going to fix it. But somebody else could think that it wasn’t a bug, but expected behavior. And, suddenly, somebody have to decide who’s right and who’s wrong.
Somebody else will have to think about compatibility, regressions and other not-so-sexy things.
With java, we know who will take care of this. Also, there IS a way for serious folks to influence Sun, the JCP process, which is working pretty nice.
To sum up, I feel MUCH safer with java class libraries than with mono. I know that there are very extensive compatibility test suites, huge regression test suites, and I have a peace of mind knowing that compatibility is a key for Java.
With pure open-source projects, like, for example, Linux, where every subsequent kernel breaks all existing nvidia drivers, I don’t have that kind of luxury.
So, no, open-source is not the answer. Sometimes it’s handy, but this is not an universal solution.
As a programmer, when I work with a tool I want to be able to modify the tool if need be, either to understand the tool better or to customize it for my needs.
If you want to look at the sources,
core java API sources are packaged with the java.
Also, now you could browse ALL java sources under Research License.
If you want to modify the tool, then in most cases that’s bad decision. It’s hard and boring to maintain your changes and keep up with the latest version.
It’ also funny to hear that mono developers and everybody else are free to modify mono the way they want.
If you want to be compatible with .NET, you DO NOT have this freedom. You have to imitate .NET behavior, even bugs!
SUN tells you only they can change Java, no one else.
Not really true. Plenty of companies AND individuals do contribute to java. Doug Lea, for example, with his concurrency package.
This “dominance” won’t happen very soon, and I never claimed it would. “If” mono continues to gain developers, community support and momentum, it will happen inevitably provided Novell is willing to spend a few million dollars on marketing.
There are A LOT of other “if”s. Like, what if Microsoft will decide to announce that mono in fact infriges MS patents and that MS does not approve of direct copying of it’s .NET APIs.
So, mono indeed built on sand. MS can play with it, as cat with mouse, but when (and if!) mono will start to challenge MS interests, it would be verry easy for MS to shut the whole thing off.
It would be VERY interesting to hear Miguel then.
Oh, what a naive view! So, you think that you’ve found a bug, then you’re going to fix it. But somebody else could think that it wasn’t a bug, but expected behavior. And, suddenly, somebody have to decide who’s right and who’s wrong.
I don’t understand your definition of a bug. But by my definition, a bug is an unforseen action that causes software to act inappropriately. Going by my definition, if software acts or behaves inappropriately, it is a bug. So a bug can’t be a feature for person A and malfunctioning code for person B at the same time. That’s flawed logic, assuming we both grasp the concept of a bug.
With java, we know who will take care of this.
No you don’t. You have blind faith in a company who you hope will take care of things. What if they don’t? What do you do then?
To sum up, I feel MUCH safer with java class libraries than with mono. I know that there are very extensive compatibility test suites, huge regression test suites, and I have a peace of mind knowing that compatibility is a key for Java.
Good for you. I don’t have peace of mind with Java or SUN. Java is not free software. I have so many restriction with what and how I should use, interact and deploy the platform. And compatibility is the least of my troubles.
With pure open-source projects, like, for example, Linux, where every subsequent kernel breaks all existing nvidia drivers, I don’t have that kind of luxury.
Yes, that’s what happens when you use proprietary software on Linux. Nobody blames Nvidia for the problem, it has to be Linux. Why is it that the Nvidia open source drivers never have a problem when I upgrade my Linux kernel while the Nvidia closed source driver always borks? Go figure.
So, no, open-source is not the answer. Sometimes it’s handy, but this is not an universal solution.
No, closed-source is not the answer. Sometimes it’s handy, but this is not a universal solution.
VVS,
If you want to look at the sources,
core java API sources are packaged with the java.
Also, now you could browse ALL java sources under Research License.
What does the license entail?
If you want to modify the tool, then in most cases that’s bad decision.
Who are you to tell me what to do and what not to do with my code/project? Or what is bad and what is good for my code/project? That’s exactly what pisses me off about Java and the Java community, for some reason they like to tell me what is best for me, even when their opinion isn’t sought.
It’s hard and boring to maintain your changes and keep up with the latest version.
Nobody said software maintanance is easy.
It’ also funny to hear that mono developers and everybody else are free to modify mono the way they want.
If you want to be compatible with .NET, you DO NOT have this freedom. You have to imitate .NET behavior, even bugs!
Isn’t that equally true for Java. All the Java variants have to mimick SUN’s Java including their bugs. Besides, not many people use Mono for the MS libraries, mono has libraries of its own that are beneficial to *nix developers.
Not really true. Plenty of companies AND individuals do contribute to java. Doug Lea, for example, with his concurrency package.
Yeah, but they have to join a bureaucratic, slow and complex committee. And even then, SUN still has the final say.
VVS,
There are A LOT of other “if”s. Like, what if Microsoft will decide to announce that mono in fact infriges MS patents and that MS does not approve of direct copying of it’s .NET APIs.
First of all, Mono doesn’t copy .NET APIs, they implement their own versions of the .NET APIs based on the information put forth by Microsoft to a standards committee. Your argument is synonymous to saying Mozilla copies Internet Explorer by implementing a web browser that displays web pages based on open standards.
For more on the patents issue follow the link below.
http://www.mono-project.com/about/licensing.html#patents
So, mono indeed built on sand. MS can play with it, as cat with mouse, but when (and if!) mono will start to challenge MS interests, it would be verry easy for MS to shut the whole thing off.
And Java is built on air since it “copies” various aspects of C, C++, Smalltalk and Object-C. The creators of these languages will surely sue SUN for patent infringements and it becomes a whole cat and mouse game. Oh, I’m only following your logic here.
As far as I know, you can still hold patents on ECMA standards and you can also demand reasonably royalities for ECMA standards. Microsoft seems to have said that they will not demand royalities and they will not use their patents against other implementations of .NET. See for example: http://lists.ximian.com/archives/public/mono-list/2002-March/004124…
But there is probably nothing legally binding about such statements.
Personally, I really doubt that Microsoft will not use their .NET patent portfolio if Mono gets notable marketshare. Actually if I would work at Microsoft and would have to decide what to about Mono, I would suggest to wait until it is in widespread use and then use the patent portfolio against it because this would probably hit Linux and the Open Source Community at most.
I never heard any real argument why Microsoft shouldn’t use their patent portfolio like suggested in the above paragraph. I also never heard any real argument why Mono is save if Microsoft really decides to use their patent portfolio against Mono. But then I am not a lawyer, so maybe there are arguments why Microsoft could not use their patents or why Mono is actually safe. Since some of the Mono developers seem to read that thread, it would be quite nice if they can clarify the situation a bit.
Is he a competitor of some sort?
If I read how Miguel is answering to people I think his boss should read it,too, and kick him out of Novell.
From the three or four postings he wrote here all were like troll posts.
Should he not behave more friendly for all the people here are possible customers(developers/users) of Mono?
I just don’t think ASP.NET is the fastest growing web technology out there.
If netcraft’s data are valid, apache is still the top growing web server, and I bet there are more php installation on IIS than ASP.NET on apache
>> If I read how Miguel is answering to people I think
>> his boss should read it,too, and kick him out of Novell.
>>
>> From the three or four postings he wrote here all were
>> like troll posts.
>>
>> Should he not behave more friendly for all the people
>> here are possible customers(developers/users) of Mono?
Are you sure it’s the real de Icaza?
This is the internet, you know.. fake identities…
If I read how Miguel is answering to people I think his boss should read it,too, and kick him out of Novell.
From the three or four postings he wrote here all were like troll posts.
Should he not behave more friendly for all the people here are possible customers(developers/users) of Mono?
I think that was the reason Novell hire him.
It would indeed be interesting to hear about the patent/IP issue from Miguel himself – now that he seems to be around here. After all, the IP issue is the Mono issue that seems make people worried.
MS may well have even quite warm thoughts about Mono in general (why should they oppose getting more tools, support and developers to their .NET platform?), but AFAIK, MS has clearly stated that they have never licensed any proprieatary .NEt stuff to the Mono project. Why do companies like MS have software patents? Don’t they want to get license money (or equivalent benefits) from others using the same technology? Is Novell and the Mono project ready to pay MS later? What about the rest of the open source community?
Thogh many developers are very excited about the Mono project, Mono also seems to be surrounded by lots of negativity and fears (though a lot of it may be due only to the cronic MS allergy among the FOSS community). Just read the comment thread here and you cannot deny it. That negative atmosphere and all sorts of looming IP/patent threats, whether serious or not, are harmful to the Mono project. Those IP issues just should be solved or at least clarified well enough in order to Mono be widely embracd in the open source community.
As about calling it a “terrible” technology, the console works and asp.net works and so the many extensions. Monodevelop works.
I’m pretty sure that many of the people calling Mono “terrible technology” have never even really tried it and just suffer from the MS allergy I mentioned above… Sure, better Mono IDEs are needed, but otherwise Mono seems an excellent thing technically.
The ultimate solution to the combined Mono/MS allergy among the FOSS crowds could be if Novell/Mono could sign some official statement or deal with Microsoft that would clarify the Mono – .NET relationship and the potential IP issues once and for all as clearly as possible. Otherwise, I’m afraid, too many in the FOSS community will continue to feel negatively about Mono. Whether that sort of deal would be possible, I don’t know?
I’ve tried mono on Windows on Linux just to tested with basic programs, mono is highly compatible with .NET.
Despite the lack of good IDES mono it self is a great piece of work, is so easy now make a program with Glade + GTK#, I personally happy to see mono getting the credit it deserves.
Microsoft won’t do anything that will help boost competition.
Any FOSS project in a grey legal area is a massive plus for them, because it helps their new IP Infrigement FUD campaign.
It’s not Mono that suffers from such threat, but many MS related technologies: NTFS?, VFat?, Wine?, .doc format?, Samba?
They had a go at VFat and lost.
They had a go at Samba and won? I must verify.
When the time is right and if its beneficial to them – sure they will attack Mono.
Like they have been attacking other projects directly or indirectly since long.
Even MS-unrelated projects like Apache and Sendmail is on their hitlist.
The patent issue is brought up often.
Miguel you could probably answer this better than most.
I’ve already said my piece in the past about how the RAND licensing conditions of the ECMA standards are somewhat shaky, especially should Microsoft leave the ECMA. That is written down in a PDF agreement file on ECMA’s web site.
Miguel, the Mono people and the people at Novell could clear this up well if they wanted to but they haven’t. The standard line is “Oh, you could be sued over anything” painting over the fact that the way Microsoft has gone about things with .Net is different. They have also given out confusing signals concerning this mythical letter that says that the licensing terms for the ECMA standards will always be subject to the conditions they are now. No one has seen such a letter.
It begs several questions:
1. If there are no patent or licensing problems with the base ECMA standards, or replication of the other parts of .Net, why bother telling everyone you have some sort of letter?
2. If Mono is in control of its own destiny why bother telling everyone you have a letter from Microsoft, HP et al supposedly guaranteeing the future licensing of them?
The catch with Mono is that if it adheres to the ECMA standards, and many parts are implemented on the top that aren’t a part of the ECMA, then Microsoft can legitimately say it is .Net clone. There’s no real debate about it. Technologies around Java and other things don’t have that problem because they don’t adhere to licensed and/or patented standards. It’s a massive grey area that no company, however large, can realistically get into. They may adhere to a community process or pass a set of tests but that’s about it. All that may not be a problem for a company like Novell, but it is a problem for community software.
Nice one Microsoft. You have to give them some credit sometimes, and it has now become very clear that people just don’t even understand it when it’s infront of them.
Microsoft won’t do anything that will help boost competition.
Any FOSS project in a grey legal area is a massive plus for them, because it helps their new IP Infrigement FUD campaign.
Lies!!!
Microsoft has been the sponsor of some Mono conferences.
Microsoft has been the sponsor of some Mono conferences.
It makes them look good, and it gives them a nice line that .Net is open that they can use it at all these .Net conferences and feed it to the people who go on .Net training courses.
I’ve been on a couple, and they even tell you that Mono uses Rotor code and that the two are interchangeable! It doesn’t really matter though as those people are going to do nothing with either Mono or Rotor.
Maybe that’s the way it is, maybe not…?
Should open source developers like GNOME devs first become lawyers so that they could freely implement Mono in their projects without a fear? The current legal situation of Mono is all too confusing – at least to us mere mortals. Mono walks too much in the “grey legal area” currently. Mono should first try to solve those uncertainties, and *then* they would see a huge boost in the Mono popularity too. Even a good IDE or two won’t solve the IP issues.
For example, I’m certain that lots of large companies could be interested in running ASP.NET and ADO.NET on Mono/Linux as ASP.NET/ADO.NET could offer suberb functionality especially for heavy and demanding business web tasks – but they just won’t do it because of all the uncertain legal aspects related especially to those problematic higher level .NET blocks. Now, is it safe to use ASP.NET/ADO.NET on Mono/Linux or not?? If not, stop advertising those things on Mono web site then and concentrate on the basic ECMA/ISO covered parts. Does anyone know for sure? Miguel? (ok, you must feel tired to answer the IP-related questions all the time but you need to as many of us just still don’t seem to get it…)
IMO, Mono FAQ doesn’t clarify the situation enough: http://www.mono-project.com/about/licensing.html#patents
Hello,
In response to our friend that quoted that Java is
better because a company will take care of the bugs. I
believe that this is a flawed argument. The only motivation
that Sun (or any other proprietary company) has to fix bugs
in proprietary software is to gain a market advantage or a
lock into their own product. They will remain responsive
while there is a stratetic competitor in the space, and they
will abandon you the moment there is no money left to be
made.
Consider Microsoft and IE: they turned IE into a well
oiled machine, enough to beat the then Netscape 3 and 4.
Once they achieved dominance, IE was abandoned, the team
disbanded and the developers moved to other projects. The
same happens with every other piece of proprietary
software. I dont see any reason why this wont happen to
Java if it looses its strategic importance.
And this is precisely why *we* the OpenSource community
need to have open source solutions. Yes, we have been the
industry underdog for a very long time, but the sides are
starting to switch: gcc, Linux, Mozilla, Apache, Samba,
they were all at some point insufficient, toys and did not
pose any threat to existing products. Today the industry
has shifted towards them as they have gained robustness,
popularity among developers, performance and momentum.
If you are happier using proprietary software, hey, by
all means, use it. Am not going to stop you, there are
millions of people happy with it. But those of us working
on open source want to have our completely free stack. And
you are free to use it, or not.
As for the patent discussion, there is nothing new to
add. If you really care, we have our FAQ and the archives
for the various angles on the mailing list.
Miguel.
@Metic
Again I don’t believe MS will give away too much.
They certain love disparities within the FOSS community.
But there is nothing stopping one of us emailing Novell directly asking the question.
From my past experiences – companies like IBM and Novell do reply, they phone you back.
A mediocre clueless operator? – perhaps.
But at least it let us believe they possess more willingness than many other company (ie Apple).
Microsoft will only take Mono’s storm in the FOSS as a bonus.
@Anonymix
“Lies!!!
Microsoft has been the sponsor of some Mono conferences.”
How awfully generous of them.
I guess that makes allies with the FOSS community.
Good tactics too.
@Lumbergh (or David himself if he wishes)
What project does David endorse or represent then?
Or is he just a grumpy stalker?
And there is overhype.
Mono might be hype
NVU is overhype.
And yet noone attacks that.
But then if you don’t like something you better try something better yourself.
… Now if only I could get those damn gtkhml libraries to install properly.
Say can a nice fast GUI application be written succesfully using just Mono?
I am tired of this:
“sun should open source java”
“if java was open source programmer can adopt it”
bla bla bla
mono microsoft patents bla bla
But also .net is not opensource. But Icaza opened is mouth and hundred, thousand of programmers joined him to make a clone opensource of .net
So the real question is it: WHY??? Why people ask sun to opensource java and not ask microsoft to opensource .net?
Why nobody helps programmers of kaffe sable etc. and hords of programmers helps mono?
Why all these people and programmers want java or .net on linux risking legal troubles when there are a lot of powerful opensource alternatives (perl, php, ruby, eiffel, lamp, apache, kde, etc. etc. etc.) that can be improved in an enterprise optic?
Why there are so many zealots ready to adore mono or java when you have gnustep?
Hello,
As cute as GNUstep is, you still must program in
a relatively low-level language which is prone to the
standard C mistakes: double-frees, reusing a buffer that
was not yours by mistake, overwriting data in an array,
unsafe typecasts, and so on. There are whole industries
just devoted to writing tools to track down mistakes in
C programs (Purify, Insure, Valgrind, Leaky, SoftICE).
Managed environments like JVM and the CIL provide a
safety net for programmers. Some programmers need more
control and speed, and they stick to C-derived languages,
some others value more productivity over speed and low
level control, and they favor higher level languages.
The JVM and the CIL are interesting to people as they
have relatively complete frameworks and they have some
fairly good documentation. Not perfect, and not the only
solutions, but they are pretty good for the mass market
of developers.
In addition, people want automatic memory management,
so they can focus on their problems instead of focusing
on the plumbing. Productivity is usually higher just by
removing this from a developers’ plate.
As for why we attract more developers than the open
source Java, there are various theories, but no solid
research done into it. For one, the Mono developer base
is probably split 50/50 between Unix and Windows developers.
Win32 having such a large market has probably the most
developers today than any other platform, and a new influx
of developers from this background joined the project.
Mono is also interesting to developers because it is
basically an evolved and updated version of the JVM, so
if you were going to choose an open source project to
participate on, you would likely pick the one that has the
better design (I believe that both the JVM and the CLI have
limitations, but the CLI is more advanced than JVM from a
pure technical point of view).
Java today has a larger ecosystem of open source
technologies, but .NET is quickly maturing in this area
and gaining developers. Fairly large open source projects
exist today for .NET/Mono.
Miguel.
Because those technologies are better documented or you can even say “newbie-friendly”.
If you ask the maintainer of most of the technologies you’ve listed – say gnome’s gtkhtml the reply is “Use the source Luke”.
If you email the eiffel team saying that you can’t install their libraries – the reply is: you must be doing something wrong then.
In short either you get a cold silence – if not ridicule.
While there is no doubt each technology you’ve mentioned are worth every single credit as being superb. Not everyone are hard core programmers but more designer/programmer some even part-time accountant / part-time programmer.
They can’t afford the hassle of hacking and groking each line instruction. Undocumented and newbie-averse.
So naturally the visual ease of Java and/or .Net will have some much more appeal.
Can you do a KDE app in a few days? Try.
Now even not knowing Java you can bung something together pretty fast – why? Because of a plethora of *visual* resources. Geddit?
Miguel de Icaza:
“As for the patent discussion, there is nothing new to
add. If you really care, we have our FAQ and the archives
for the various angles on the mailing list.”
Archieved mailing list discussions? A couple of short FAQ paragraphs with one link to a short email comment (by Tim Miller from MS)? What use is that sort of stuff for a lawyer, for example?
Are there some more legally binding official documents about the legal position of various Mono technologies, by Novell/Mono and/or Microsoft and/or lawyers and/or patent/IP offices and/or ECMA etc.? If not, rest assured that there will continue to be lots of Mono critics, uncertainty and doubt especially in the open source community and that that natural reaction can also seriously hinder Mono acceptance, development and growth. And if GNOME starts to use Mono more, what will this mean to GNOME development?
I cited gnustep as an example but I would like to underline that now I am using in a new project java with JSF+hibernate and this “new” tecnology let me do the same thing I did ten years ago with webobjects+eof. Then unfortunately jobs said that nextstep technology should be only apple propriety and I had to wait ten years to came out to prehistory. Yes, now we have also garbage collection in ten years is a good improvment I suppose.
That said comparing only “new and more advanced” technologies I think that java was a better choice to reimplement over .net at least for a reason: better specification. For example .net has winforms that is difficult to reimplement in mono. I have already seen some .net opensource software that cannot be used under linux because it uses winforms. With java every software I see I can run it under linux.
Hello,
There are no documents of any kind that will make
any piece of open source software (Mono included) a
blanket right to use patents.
If you are really concerned about patents, then ask
yourself, for each piece of software that you are using
Mono or not: “is this covered by a patent?”. Based on this
make your call on whether you should use the technology or
not. Short of doing a review of millions of patent claims
against every line of code, we are using the industry
standard described in our FAQ.
We have stated that already a number of times, go
read all the archives of mono-list, mono-devel-list,
osnews and slashdot.
Miguel.
Winforms is going to be supported in Mono, and they are
as portable as AWT were.
You can certainly “escape” Windows.Forms and call into the
OS and become non-portable. But the same applies to any
Java code that uses JNI (For example, any SWT-based apps
require you to build native code before you can use them,
like Eclipse).
As for portability: as long as your Java from Sun supports
your platform, it will run unmodified. If you have no Java
port, you are out of luck.
Notice that this same argument can be made about Flash:
yes, it is very portable, as long as your platform is
supported by Macromedia.
Miguel.
no documentation for Linux my foot.
Each distro has at least 1000 pages then add the fact that each substantial project then does its own.
Quantity doesn’t matter: quality does. Unfortunately, that is often what is lacking. For example, I’ve recently tried to set up an OpenLDAP server on my Linux server. Pretty much every document I have found was for an outdated version. I’ve browsed some Linux forums and it turned out that I was not alone…
That said, the documentation is still hundred of times better than when I began using Linux (about seven years ago). However, I was targetting the documentation of the APIs, not how to set up a server. Remember that we’re talking of Mono.
Go into your local book store check out the Linux section…big isn’t it
Big until you compare it to the other sections.
I think you are the person who needs a reality check. I can count many technologies that have better documentation, better performance and better standards compared to the de facto technologies we use today, yet they failed in the market place.
If you want to persuade millions of developers to use your product, market and hype it well. All these “it has to be better” mantra is reality distorted.
So you expect that Mono will become widely used with hype and marketing? Well, I can only wish you luck. I know many developers praising the MSDN documentation and I don’t think that marketing, hype and GTK# doc would change their mind but we live in a free world…
I’m not saying Mono is already doomed. It definitely has a future. I just think some people are understimating what they have to do for beating Microsoft’s .NET.
What Miguel tries to say here is this:
He wants to develop MONO and want to have it mature till a grade where MONO will lead the standards of .NET and C#. To make this better understandable, we all know that most standards are directed by Microsoft. As in this case it’s .NET. Now Miguel and his folks want to work on MONO so much that it will lead the standards of .NET and C# one day because he believes that an open source implementation will gain better momentum and more acceptance in the software development world. Now Miguel go for it and overrun Microsoft and make MONO become the standards of .NET and C#. Microsoft will soon play catchup here.
There are no documents of any kind that will make
any piece of open source software (Mono included) a
blanket right to use patents
Yeah, software patents in general are a real nightmare, of course…
Short of doing a review of millions of patent claims
against every line of code, we are using the industry
standard
Ok, using ECMA/ISO standards is fine. But what about the not-so-clearly-industry-standard parts of Mono that, after all, also seem to be rather a relevant part of Mono and also advertised on the Mono website? As far as I understand, for example, ASP.NET and ADO.NET are among such technologies. ASP.NET may be considered an unessential thing in Mono, but as a person that has been doing web development, ASP.NET is personally interesting to me.
It is very unlikely that MS can threat MONO by enforcing patents… for many reasons:
1) Microsoft almost never threats to stop competition by using patents or legal means. If you ask them, they will answer that they’re proud they never used legal means to overtake competitors. They care about that reputation. If they would force MONO to shut down, their reputation wouldn’t improve for sure.
2) They control technology so they have no need to enforce patents. They can improve, change etc etc.
3) I’m sure they are considering MONO as a way to enter Unix market. Situation is very slippery… we don’t know what Microsoft is going to decide. They might decide to put a step into Unix market by using MONO to convert their products or they could just stick with Windows-centric strategy. There’s no need to kill MONO which might come in handy for them or for .NET developers.
4) In case you didn’t notice, Microsoft already switched technology. Surely .NET is going to stay and they would not harm backward compatibility by introducing changes just to harm MONO. But MS future is INDIGO, AVALON and so on. Note that such technology can be backward compatible. So they have already enhanced .NET and a .NET 2.0 compatibility layer for Unix systems can be handy.
I understand concerns and Miguel and Novell should address this area in a better way. While they’re not ignoring this problem, they can’t say (as for now) to developers “Don’t worry, use MONO: there won’t be any problem”. This should be addressed. At worst, Novell can license .NET… or trade that license for a pending Wordperfect legal issue… 😉
People are you forgetting Kodak suing Sun last year over Java?
http://news.com.com/Sun+settles+Kodaks+Java+suit+for+92+million/210…
.NET is at risk
Java is at risk
Mono is at risk
Samba is at risk
Apache is at risk
Gnome/KDE is at risk
GNU/Linux is at risk
….
3rd party patents people, you can either face reality that patents suck and you have to work around them[0] or stop developing software. How about you guys stop whining?
[0] From Mono FAQ
1 work around the patent by using a different implementation technique that retains the API, but changes the mechanism
2 remove the pieces of code that were covered by those patents
3 find prior art that would render the patent useless.
@David/other trolls
How about stepping up to the challenge and develop a *superior* development platform. Come on, I’m waiting…
@David/other trolls
How about stepping up to the challenge and develop a *superior* development platform. Come on, I’m waiting…
Though luck. Given the current state of patents, the idea of a development framework itself is probably patented.
C-sharp; thus, mono, is dead meat. It’s MSFT’s “answer” to Java–make it Windows specific. Which means it will be relegated to fewer and fewer back rooms, in Windows-only shops, while elsewhere increasing amounts of LINUX, BSD, and OSX will be the rule. The fact that one can NEVER deploy .net without totally pissing off tons of customers is a killer.
> when the interviewer wanted to ask more indepth he pointed to Miguel for answers
Where I come from, we call that honesty. Really, there’s a world of difference between writing a decent tutorial on Mono and being experienced with large deployments of it.
Gnome fanatics? I love mono, I love Gnome, but I’m not fanatic. So what if I prefer mono+gtk#, gtkmm, gtk to QT? You mean to say that choice is limited to your toolkits except for fanatics?
What’s funny is that through all of this, when people bring up perl, ruby, python, etc. Miguel never has an answer.
Professionally, I have to write c# ever day, and I’ve been writing c#/.NET apps since before .NET was out of beta. But I’ve been doing it because it’s industry trend, and it’s what people are hiring.
Personally, however, I’ll keep using Ruby until I’m given one good reason to choose c#. Ruby has a better library, better documentation, a better community, is syntactically a better language, is easier to interop with C code, is truly cross-platform, is an OSS project being led by OSS developers (not an OSS project being led by whatever MS throws into the spec.) etc. etc.
furthermore, the languages and the runtime really aren’t that impressive. nor are they anything new. .NET’s OOP system is less than impressive. it’s basically in the same family as Java and C++. (no meta-classes, classes are not objects, no runtime mutation of class definitions, etc.) you can define or manipulate classes at design time only, you have to be mindful of typing and casting all over the place, etc.
yes, i know there’s a ruby version targetting the .net runtime. i don’t care. .net offers no libraries that aren’t available in standard ruby library. All that the .net version offers is memory bloat.
basically, i think mono is stupid. not because of patents. not because it’s copying MS…but just because the technology and language really aren’t that interesting or useful over anything else.
the multiple-language support argument only holds water when you’re talking about developers that can’t be bothered to make a minor adjustment now and then and expand their knowledge.
basically that feature is targetted at VB code monkeys. and i don’t care about vb code monkeys.
some day miguel…you’ll learn what it feels like to use a *good* language and maybe you’ll stop heralding c# as the second coming.
i’ve never seen a developer who spent so much time blogging and talking and attending press interviews.
makes sense when you think about the real reason he’s so excited and protective of the mono project.
Reading through some of these posts, it struck me that the largest impediment to widespread mono adoption is a competitive developer tool. If someone were to create an eclipse plugin for Mono, and then advertise it indicating that it would create .NET code that could run on Windows OR Linux vs. MS Studios lock-in, it might have some success. I’m a java-guy right now, and use a subscription based plugin called MyEclipseIDE, for $29/year.
Low cost development, no system lock in – that would be huge.
> i’ve never seen a developer who spent so much time
> blogging and talking and attending press interviews.
Indeed, when reading planet.gnome.org you see most people usually write up to 10 lines of private stuff that occoured to them during daylife while Miguel is writing 100 lines of basicly commercial marketing crap + coding examples about MONO that no one cares for.
@mesmeric
Yes infact .net and java are well documented. But what I want to say is that if programmers that jumped to mono decided to help perl php gnustep etc. projects now also these projects should be better. With these projects almost ready why restart from scratch with mono?
@miguel
Yes JNI code is not portable. But “fortunately” jni api is so bad that noone use it. Yes obviously if I have a platform without jvm I cannot run java software on it. But I use linux and only care about it. Linux has JVM and I can run all java software on it with swing (awt is obsolete) and swt. With mono unfortunately I cannot run all .net software.
@hobbit
I agree completely with you. I use java for work and I am not happy with it. A lot of things can be programmed faster with ruby or perl or other but obviously on AS/400 runs java. And banks managers want java. Mono is the same: novell wants an enterprise api and pays several open source developers to develop it and to spread the word. Then there is zealotry effect and other joins. So now we have “rich” open source projects and “poor” open source projects. Innovation is at an end: if you have a good idea nobody helps you if you do not have big industry support.
Mono has no technical merit (I am not speaking of implementation but of api) but now people think it is the best thing.
.NET is at risk
Java is at risk
Mono is at risk
Samba is at risk
Apache is at risk
Gnome/KDE is at risk
GNU/Linux is at risk
No – not in the same way as .Net and any implementation built on top of ECMA that tries to be MS.Net compatible. Please read what has been written, as the above is the standard line we get given all the time with Mono. It doesn’t apply.
ECMA gives Microsoft carte blanche to license their core standard, their IP, their technology and any patents in the future. If that happens, whether Microsoft intends anything or not, the community will be forced to rip out any remnants of Mono or any .Net implementation. It just cannot be risked, as the FUD (and I mean real Fear Uncertainty and Doubt) would reign supreme and no one, certainly in the commercial world, would touch it with a bargepole. You just cannot give that gift away to Microsoft because they’ve got enough of that as it is.
1 work around the patent by using a different implementation technique that retains the API, but changes the mechanism
2 remove the pieces of code that were covered by those patents
3 find prior art that would render the patent useless.
Meaningless. We are talking about the base standard and everything built on top of it. You’re going to have to rip out a lot of code.
Point 3 is also brought up a lot. That’s meaningless because any patents or technology Microsoft may choose to license outside of the ECMA applies specifically to .Net and their implementations and not to anything else. Microsoft will quite rightly point out that they could have went off and implemented something completely different in any way that they wanted.
None of the three above points are going to hold water. You have to ask yourself – is it worth it? The answer is no, obviously.
I am a .NET developer but have unsubscribed from the MONO list, because GUI is my concern. They are working hard now with Cairo, but unless I can’t write gui’s with Mono I can only seek alternatives.
The Qt/GTK World, The Python World, The Ruby world are in no way as accessible as the .NET/Java world.
Which can only add to a few newbies giving up after the 10th try.
Again .NET/Java will appeal more to the semi-developer. No offense, I am not saying those technologies ARE for the semi-developer but it will appeal more to them.
Why?
Because of the “Teach-Yourself Visually” approach.
It is only up to the defenders and documentators of those language above to address the issue *IF* they want also win the casual-developer.
If they want just to remain hard-core (for whatever reason, even endorsing better coding or retainer brainier folks) then they can’t complain.
Otherwise you will always have a big section of enthusiasts being drawn toward these more newbie-friendly highly-motivated languages.
I’ve learnt C# in less than a week just by watching videos.
Java today has a larger ecosystem of open source technologies, but .NET is quickly maturing in this area…
Mono or .Net is quickly maturing? Please be aware that the two are not interchangeable in any way. If you think they are then the last twenty years of Microsoft’s history has totally flown over your head. You can’t even really compete with Microsoft on mindshare (there’s more to it than just patents or licensing) when you’re not on their turf, and you think you’re going to do it on theirs?!
I’m afraid it isn’t zealotry. It’s happened many, many times before.
have you even bothered to look at the documentation and tutorials available for python and ruby?
i learned ruby in five days.
google: “why’s poignant guide to ruby”
IMHO it’s the best tutorial on any programming language ever written.
yes i have
http://xored.com/trustudio
plus i use to hang around the ruby’s newsgroup asking questions.
remember that often one language will be easier depending on a persons’ previous knowledge.
someone coming from the perl/python world will find ruby childplay.
ps: i rarely moan before acting
We are talking of this Microsoft?
http://yro.slashdot.org/yro/05/02/15/1334248.shtml?tid=109&tid=98&t…