Mono Beta 2 Released
A little birdy writes "Less than a month after Beta 1 was released,
Mono Beta 2 has been released. See the Release Notes, or go directly to the download page. It includes a C# compiler, an implementation of the Common Language Infrastructure and two stacks of APIs: a Unix, Linux, GNOME, Mono stack for APIs that takes the most advantage of your Unix server and desktop and a set of APIs compatible with the Microsoft .NET Framework 1.1 that provides support for ASP.NET (web services and web forms), ADO.NET and many other components." And in a related story: darthcamaro writes "The drive to develop a FOSS implementation of Microsoft's .NET framework by DotGNU and Novell's Mono project is being painted as a contest between the Free and Open Source communities in an article on internetnews.com. The article details the running argument between DotGNU's Norbert Bollow and Mono's Miguel de Icaza on the issues of commercial involvement, software patents and all the 'religious' stuff that the Free software community holds against the open source community."
Does anyone know of any significant applications developed using the Mono Linux API stack yet?
Also will the applications I write with this stack work on Windows?
----
I would love to see an example of what this has enabled that can't be done with Microsoft's tools, even if it's just doing it for cheaper. I will never buy into this project based on the idea of interoperability. Look at the DOC format and how even slight inconsistencies can prevent other technologies from getting past .5% market share. Basically, if you want to support Microsoft and interoperate with Microsoft, you have to go the Microsoft Way.
So, I think the only chance for this project is if it produces tangible benefits beyond integration and support with Microsoft technologies on another platform. If this just enhances the Linux platform or turns into a platform itself, it may have a chance. However, once it becomes a platform, if you think MS won't try to demolish it the way it has done to every other platform, you are mistaken, especially since the project has shown no leadership and is essentially a clone of what MS is doing. Microsoft is still in the driver's seat, and given the attitude of Miguel, I doubt they can establish themselves as true *independent* leaders in the IT community, even if everything up until now has been an example of extreme bootstrapping and supporting things for highly strategic purposes only.
Supporting MS is a slippery slope, and before you know it, one decision to cater to MS technologies leads to fifty more, and all of a sudden, you have basically enhanced *their* platform and ensured your own long term destruction. These people that are rabidly anti-MS aren't just sour grapes party poopers. They are often astute observers. Every other person MS has reamed had the same idea before they got a taste of the wrath.
The only information that is needed for the success of mono is the following: are the relevant ECMA standards 334 and 335 and just RAND, or are they really RAND and royalty free as miguel and others have claimed?
.NET is really very nice and productive. Microsoft will finally have made a valuable and lasting contribution to computer science.
If it is really RAND and royalty free, it will become my favorite development platform. Working with
If not, it is just another poisoned fruit by microsoft.
--
Private property is the central institution of a free society (David Friedman)
Hey, Anonymous Coward, did you write TreeCC?
Here's what is actually happening. When companies are deciding on .Net or other technologies, these projects are held up as examples of how choosing .Net will not lock you into Windows. Then they go ahead with buying the Windows servers and developing the half working .Net app.
He may think he's giving companies choice to move to Linux. But what he is really doing is providing justification for choosing Windows.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
This seems like a legitimate set of concerns, but I think the ability of Microsoft to change the game at this point is severely limited.
The reason why Microsoft can't radically alter .NET is because of the existance of legacy apps. The company I work for has thousands of man-hours and hundreds of thousands of dollars into our ASP.NET applications. Microsoft can't break these applications. The .NET API has to remain consistant or they'll lose that legacy application support and lose customers. The fastest way to piss off an IT department is to make a change that breaks their apps. Believe me, I know...
So, if Mono can get the .NET 1.1 standards done, they can support all those legacy apps with few changes. Even if/when Microsoft introduces some spiffy new libraries with .NET 2.0, businesses can still say "it's cheaper for us to get off the forced upgrade wagon and move to Mono as a platform for .NET and we can keep our legacy applications." Unless .NET 2.0 comes up with some massively useful new system, there isn't that strong a reason to upgrade.
Granted, Microsoft can still pull out a patent and try to shut Mono down, which remains a threat, but I don't see them as doing that. All Mono has to do is use that as a talking point - don't develop for .NET because of patent issues. This hurts Microsoft by slowing the adoption of .NET. The worst that happens is that Mono has to fall back on its own libraries, and given that things like Gtk# are useful on their own they still have something to show for their work.
The more I think about it, the more I think Mono is in a strong position. I'd be more worried about Microsoft unleashing a patent infringement case than I would about them changing the APIs to shut out Mono. If they did that, they'd be shooting themselves in the foot.
It's as if Linux were able to run all Win95 applications just as Windows 2000 was coming around. Yes, Windows 2000 was infinitely better than 95, but if you're a PHB and you have a choice of moving your legacy apps to an expensive proprietary system or a free open one, you're going to be more inclined to do the latter as it makes your bottom line better. Legacy app support is absolutely crucial and right now Mono can do something that not even Linux can do - support Microsoft-based legacy apps with a minimum of changes. That gives Mono a big advantage in the marketplace, and while it helps Microsoft move developers to .NET it also helps make Linux a more attractive platform for enterprise development, especially on the backend.
Are you sure TreeCC is used for Mono?
It is on the same website as Portable.NET, the C# compiler for the Dot GNU project, not Mono.
"Elmo knows where you live!" - The Simpsons
MONO is a very exciting concept. Having some degree of compatibility with Microsoft but with the current SCO-like strategies of litigating competition out of the picture and with the general feeling that Microsoft will use patents as a way of stifling it's biggest threat why should I feel good about the project?
Maybe someone can help me out here? What is going to prevent Microsoft from playing the patent card when it suits them?
The race isn't always to the swift... but that's the way to bet!
"We do support two stacks of APIs today in Mono: the Microsoft compatible stack..."
Please do not lie. Mono is partially compatible with MS stack and will never be fully compatible . That's a huge difference.
So if I am to start developing a new desktop GUI application, what should I use to make it cross platform? And don't say "java" or "wxwindows".
It cannot be C#, Windows Forms combination because Mono does not have real support for Windows Forms yet.
Would I be able to package GTK# in some kind of installable form for distribution on Windows so I can do C#, GTK# on Mono? Is this the right way to think about this?
Can I use Visual Studio to develop Mono, GTK# applications?
...from your description, it sounds like TreeCC is the work of engineering genius, not the C# compiler.
I've written free, open, and closed software; I've accepted money from companies big and small, and I've also been paid to work on non-commercial free projects. I try, very hard, to be an agnostic when it comes to conflicts of religion -- such as the debate of Windows vs. Linux, or KDE vs. Gnome, of C# vs. Java. Tools are tools, and it is how they are used that matters.
And given that case, I do not like how Gnome is being used. Money drives everything, so Novell's involvement only bothers me when I consider their past history of screwing up good things like WordPerfect.
Foremost among my concerns is how Mono can be used as a wedge by Microsoft; if they can not "beat" free software with legal trickery (e.g., SCO), they can slip behind the lines via involvement in Linux via proxies. Microsoft has proven itself untrustworthy, in my personal dealings with them as well as their highly-publicized run-ins with anti-trust law.
I'm not against .NET or C#; I've written some C# code, just as I've written Java and C++ and Python and Fortran and COBOL over the years. I dislike proprietary standards (like .NET and Java) because they trap people, limiting choices and input form the community at large. Give me the chaos of C and C++ over the corporate machinations of C# and Java; I will accept a bit of chaos if my tools can evolve based on conceptual and community diversity.
All about me
The article details the running argument between DotGNU's Norbert Bollow and Mono's Miguel de Icaza on the issues of commercial involvement, software patents and all the 'religious' stuff that the Free software community holds against the open source community.
You know, it's funny, but all things considered i've noticed more ire coming from open source people towards free software people than the other way around. I've heard at least seventeen thousand rants on slashdot regarding the 'utter flaming stupidity' or 'rotten worthlessness' of RMS, but very few free software 'zealots' as they're so often called blasting the open source community for their beliefs, or lack therof. I've never heard anyone on slashdot call Linus a wanker.
why is that?
i'll tell you why, it's actually very simple. open source advocates are hobbyists at heart. It's true. even if your job, career, whatever focuses on OSS, you're almost inevetably doing it because you enjoy playing with computers. And i mean that in the most positive way; i enjoy playing with computers, i think they're very fun and interesting things. But the software... doesn't really matter as long as you can play with it and do something interesting -- usually meaning that you can see the code. but either way, you're good, as long as there's something interesting to mess around with.
Free Software 'zealots', on the other hand, are not hobbyists, they are activists. They want to change things for the better. They are very serious, and operate on principle, not interest. That is why they don't flame the slashdot trolls, because the real FS guys -- they're to busy trying to enact permenant change for the better.
So, the next time anyone (you) talks about, 'oh, the free software people are such a bunch of zealots, i wish they would just calm down'... i hope they think about that ire and from whence it really comes. And then i hope they tell me, because i don't know -- i wish i did. What i do know, is that you're mad, but it's not me you should be mad at.
~dijjnn
Funny, I've never seen Java perform anywhere close to the speed of C and C++ and that benchmark is quite believable.
This would definitely have been the case 4 or 5 years ago, before hotspot compiling. Java was then typically 10%-20% of the speed of compiled C++, but there is good reason why Java should be pretty much the same speed as C++: All good Java VMs now produce not just native code at runtime, but highly optimised native code resulting from profiling analysis. Java 1.5 even caches the native code to disk, so you are running a pre-compiled binary the next time you start an application - there is no interpretation phase.
I use Java for numerical work and have found that some math routines run up to 10% faster (on the IBM VM) than the same code compiled with optimisation using GCC.
You don't have to look to hard to find FS rantings. Just look at the FSF's pompous, obtuse description of the difference between FS and OS or RMS's silly rant on why Linux must be called GNU/Linux. I don't recall anywhere in the GPL where it says that RMS reserves the right to approve of the name of your product. RMS is called a kook because he is one.
Perhaps the thousands of rants targeted at RMS are simply reasonable observations or your perception of imbalance reflects your own biases on the issues. One thing's for certain, your characterization of FS contributors as "serious" as opposed to OS "hobbiests" is absurd. I wouldn't characterize BSD contributors as any less serious than GNU people. I would say, though, that they feel their OS license should not be burdened with a political agenda. Quite the contrary, I think many that most support the concept of the GPL are ones who don't contribute at all but like the idea of a license that burdens future software with RMS's personal idealisms.
You're serious, C# better than Java. The 5% difference is hardly anything to claim superiority. If anything, in my mind many of the features are questionable. For example, the threading model in .NET is GUI centric and isn't really well suited for server processes. Another big limitation is .NET still is bogged down by DLL hell. It's also primarily focused on static models and static applications. It is still very difficult and painful to build dynamic applications that load objects dynamically, which are extensible.
Breakfast served all day!
You are not fully understanding the issue. If something were only Windows, they would not go for it. They do want some portability. Mono gives the illusion of such portability, thus they move forward with projects which in the end are really stuck on Windows because of libraries and tools and experience.
Then of course it only half works (have you seen what most ASP.net projects end up looking like?), but all of the people of any skill have moved on by the time anyone knows that and it's left for some poor fool to keep it all working and adding what changes they can, until they get fed up and quit or convince someone else to take on the old man.
I have made it my mission to never to be that fool, and have made quite a success of it so far. But I still feel great pity that the whole cycle ahd to happen and lead to this horrible result which easts people up. It doesn't have to be that way.
"There is more worth loving than we have strength to love." - Brian Jay Stanley