MS .net vs Mono, Open Source 243
vinsci writes "Sometimes, reader comments to reporter-written stories are just as good as the stories themselves. Such as David Mohring's comment yesterday on ZDNet.com's story Mono & .Net: The odd couple. Since Microsoft are now using their licensing terms to stop GPL and LGPL free software, it would be a welcome sign of free software maturity at Microsoft if they actually resolved the Mono issue. The gist of his comment: 'Microsoft's CEOs have made it 'patently' clear that they intend to restrict competing .Net implementations by cultivating Microsoft's patents, [...]
Mono also implements parts of .NET that have NOT been submitted to ECMA and ISO standards. Those parts of Mono lack even the protection for IP infringement with re-implementation that ISO documentation licensing implies. [...] There [are] those that claim that .NET is open to re-implementation, but until Microsoft make a simliar public legal declaration to Sun's JSPA, any .NET re-implementation represents a pending legal mindfield.'
While on the subject of C# development, users of the GPL'd C# development environment SharpDevelop may also want to try Eclipse together with the Open Source Improve CSharp plugin for Eclipse. Eclipse also support C/C++ these days using GCC and GDB, thanks to the CDT. There are about two hundred add-on plugins available for Eclipse. Eclipse itself is available for many platforms, including Linux with native GTK 2 support."
C# of the 2000s is the RPG of the 1970s (Score:1, Interesting)
The use case is not compelling.
Those who spend money developing code in this space will at least have a prototype when they need to reimplement it in a language that has a long-term, portable future.
And no, this [oetrends.com] does not mean C# is still not fundamentally proprietary.
-- Multics
How to bring Microsoft down (Score:4, Interesting)
Just some thoughts. It's not impossible to take them down. I remember when one of our local guys got his cost analysis posted on slashdot (Rockingham County, Virgina). Start flashing those kinds of figures to the bean counters. You may not get many converts right away, but oh well. You have to start somewhere. I've gotten most of my technology-clueless relatives hooked on Mozilla because of its popup blocking ability. My neighbor across the street who is an accountant by trade loves OpenOffice and is looking into switching to RedHat 8. Again, it can be done. Just get them hooked on the Windows/Mac versions of OO, Mozilla, etc and switching to an open source platform will be easy.
As for Mono, MS Legal can't fight if they don't have money :)
...if the comments were insightful, that is. (Score:5, Interesting)
What's the news item here? Fear-mongering about the Evil Microsoft? If you're worried about big companies with riduculous patents ruining society, worry about Amazon.
Re:The Devil (Score:2, Interesting)
Actually there's a good discussion of this here [business2.com].
It seems that Microsoft is quite encouraging of the Mono effort:
"Hats off to Icaza for getting as far as he has," says John Montgomery, who oversees theHowever the motives for this seem unclear... probably with all the bad press that MS has recieved lately they are frightened of appearing ani-competitive.
I guess that the big risk for Mono is that it exists in the legal grey area between the ECMA C# and the proprietary .NET. In this twilight area they are very much in Microsoft's shadow and at their legal whim.
Re:WTF? RTFM! FAQ! LOL! (Score:2, Interesting)
MS will be helped by Mono (Score:2, Interesting)
If MS really wants to put the competition under, then
Some information for the lost and confused (Score:3, Interesting)
Microsoft's introduction is here [microsoft.com].
Mono's information is here [go-mono.org].
Don't forget dotGNU... (Score:4, Interesting)
They've actually done some stuff much different than Mono. For starters, their compiler is in C not C#. And it's able to general IL as well as Java bytecode and hs some other interesting approaches; not huge, but still very cool. One thing I find interesting with various OS vs. closed source projects - their approach.
From the code perspective, we read the Ecma spec and then crank out some code. If M$ has the entire spec patented as various 'processes' then I guess they could take the authors of Mono and dotGNU to court. It would be complicated tho and I'm sure there's already prior art out there for Strings, Input Buffers, Webservices, etc..
Frankly, I joined dotGNU because the Java tools are very mature and after working with them for the past 5 years, I'm really bored doing 'enterprise web apps'. There's much more fun, for me, in getting the foundation built; seeing how and if it will actually work. For me, all the top most layers are just fluff.
As far as ASP.NET goes, I'm actually thinking of something along the lines of a C# version of Java Servlets and JSPs. I've done ASP and I personally think it's pretty filthy. JSP can be just as much, but there are definitely more patterns applied to Servlets/JSPs than ASP. A C# implementation of the Servlet/JSP spec would be an interesting thing; and possible too! Altho, I obviously wouldn't be 'compliant', but could work the same with just a little different syntax.
Anyway, I finally realized that
agreed (Score:4, Interesting)
They're happy to see Mono progress. In the end, it'll help them sell more copies of Visual Studio and Windows XP Professional.
But what I'm afraid of is that if someday Microsoft is in bad shape and its profits start to drop, they'll go on a legal rampage and take down anyone that built software even remotely "like" theirs.
It is better to take than receive.... (Score:1, Interesting)
Re:FUD? (Score:2, Interesting)
Uh. If there are undocumented classes (e.g. non public APIs) then they don't need to be implemented because noone uses them. If they're public they need to be documented for people to use them. You can also just call the methods and see the return values with various argument values.
Besides, who cares about Microsoft
The CLI is very much like C + CLIB. You can build proprietry non cross platform libraries on top of it (e.g. Win32) but you can also build open cross platform libaries with it (e.g. OpenGL). Noone is forcing you to use Windows only libraries (e.g. WinForms) when using
Mono may never be 100% compatible with MS.NET but that doesn't prevent it from being an extremely useful development framework.
Re:Eclipse and SWT on Monster (Score:2, Interesting)
I do wish that SWT had its own documentation and a separate download though. It would make it easier to use.
I haven't observed that Swing is that slow under JDK 1.4. Most complaints about Swing being slow are based on earlier versions.
That being said, I'm interested in evaluating SWT. Still, Swing is a nice toolkit, and the fact that it is so ubiquitous makes it an easy choice to use it to write against.
This would especially be the case if the preliminary injunction is upheld and suddenly the Java Plug-In shows up on millions of computers. Swing applets are pretty cool. Still, you could bundle swt.jar with your applet I guess.
I'm using Eclipse... (Score:2, Interesting)
...for almost all of my Java development, on both Linux and Windows systems -- and I ship the entire project to my client, who runs Eclipse on his Macs. The same projects work across all three platforms. Why so many systems? Well, let's just say that Java is a "Write once, test everywhere..." language.
I don't use IBM's SWT -- my app needs to be portable, and Swing is working just fine under Eclipse. Don't believe the ignorati who say the Eclipse forces you to write SWT apps -- it doesn't. Eclipse is part of IBM's attempt to control Java -- but considering the piss-poor job Sun does at times, I think they need a little competition.
As for Mono -- anyone who relies on it for the portability of their applications is fooling themselves. I've used .Net since it's beta days; it is a blatant move by Microsoft to lock people into an architecture they control. MS learned the value of a VM-based language when they started implementing Java; when they couldn't "embrace and extend" Java, MS created a semi-clone. I recognize .Net's prupose and goals; it has value in certain situations, but it is not an open standard that guarantees portability.
Re:you've been duped (Score:3, Interesting)
If that's true it's only needed because certain companies, are greedy enough to try to pollute the language with their own platform dependent extensions for their own gain.
There are ton's of JVMs out there, many of the opensource or done by small groups of individuals. I doubt ( but I can't be sure ) that they all have agreements with Sun. http://java-virtual-machine.net/other.html [java-virtual-machine.net]
PS. I've also worked with Sun professionally, but my experience is that I've never seen them try half the stuff I see MS try to pull.
Re:FUD? (Score:3, Interesting)
Uh. If there are undocumented classes (e.g. non public APIs) then they don't need to be implemented because noone uses them. If they're public they need to be documented for people to use them. You can also just call the methods and see the return values with various argument values.
Microsoft software will use them, and other software will use that Microsoft software. Soon there will be a huge chunk of .NET software that won't run on non-Microsoft platform.
Besides, who cares about Microsoft .NET APIs? The CLI is a good framework regardless of whether you use the Microsoft-only namespaces or not. GTK#, CsGL etc don't need to rely on any non-CLI classes.
It's a large and messy framework made with no understandable purpose other than "making another Java", therefore it's mental masturbation squared (because Java design is mental masturbation -- all its original goals are either abandoned or became irrelevant at the moment when semi-usable implementation was released).
The CLI is very much like C + CLIB. You can build proprietry non cross platform libraries on top of it (e.g. Win32) but you can also build open cross platform libaries with it (e.g. OpenGL). Noone is forcing you to use Windows only libraries (e.g. WinForms) when using .NET.
There is no CLIB, it's libc. And win32 has nothing to do with either, it's an API with its own library, and a horrible one at that.
Mono may never be 100% compatible with MS.NET but that doesn't prevent it from being an extremely useful development framework.
It's a horrible framework -- it is very narrow in functionality and very broad in its stretch over all aspects of program's design and behavior -- basically such infrastructures are for software development what are "wizards" for system administration. Examples of good infrastructure are very rare, I can only name two -- Unix unified file descriptors and Berkeley sockets as a decent large-scale infrastructures that actually serve a valid purpose and improved the software design. The only point of bothering to port it somewhere can be to run software developed for it until people will realize how bad it is and rewrite that software in C or C++ with sanely designed libraries. Same applies to Java but at least Java can be made compatible on all platforms.
ISO etc. (Score:2, Interesting)
Confessions of a card-carrying Microsoft dot-whore (Score:3, Interesting)
It is easy to support Microsoft-based initiatives when you work for a company large enough to qualify for Microsoft partner discounts on development software. A $2500/year subscription/blackmail fee pretty much gives you access to any and all commercial software sold by Microsoft. You get used to have all the cool stuff arrive on CD or DVD every month or so and nothing stops you from building one more development box just to test Whatever.net. Who cares if you got a room with 20+ development servers on a 100+ employee company anyway?
Things change once you move to the small business field. Suddenly you don't have a shitload of cash to burn, and the $2500/year can probably pay one or two PCs for coworkers. You barely manage to afford one lousy development server, and your production schedule is so hectic that you cannot afford to drop development on asp (dirt cheap, you can pick asp programmers literally everywhere) to make the jump to asp.net, which means you will need Visual Studio and eventually more expensive windows.net server licenses.
I was put in that position when I switched jobs and joined an 11-employee firm to be their techno geek (I got so tired of explaining to people my job that I just tell them my job is to isolate the CEO and President from technical stuff). Then the soul searching started?
1. Do I commit my company to a $2500/year MSDN subscription? We are not a software shop, all our development is internal.
2. Do I make the jump to
3. Do I keep the current solution as asp and wait for the end-of-life of asp before I try to move up to
4. What about php? I have run a phpnuke website successfully for a long time and I am sure I can rewrite my company's solution to php.
5. What about SQL Server? I absolutely love SQL Server 2000, but how much will I have to relearn when the new one comes out? And will I have odbc connectivity to php in case I want to jump out?
6. What about mySQL? A couple years ago mySQL was nowhere close to ACID, but right now it is almost there. And my mySQL install runs as stable as my SQL Server. When can I trust mySQL with corporate data?
The list of questions goes forever. I finally decided to do nothing. The current toolset in asp runs itself and does not make me waste a lot of time in code maintenance. Performance is acceptable for our usage. I am not going to move us up to asp.net just so I can say it runs on
I would like to be able to buy a $1500 Compaq 1U rack drawer and know I only have to put freeBSD, Apache, mySQL and php and I am set, instead of having to go thru the stupid requisitioning process to get Windows server licenses and CALs every time I deploy a windows server.
When people ask me why I am on a mac (switched in September 2002) but I still use Microsoft products (IE, Ms Office v.X and the xbox) I tell them my beef with Microsoft is not about monopoly this or predatory that. I have valid business concerns and complaints, and