Mono and .NET - An Interview
all-of-the-dot writes "Would you use an open-source implementation of the .NET Framework? Ximian's Mono project enables you to build .NET apps that run on Linux and Unix as well as Windows. Check out the story from .NET Magazine's interview with Miguel de Icaza, Ximian cofounder and CTO" Added to which, AirLace writes "The Mono project has just achieved full self-hosting on Linux. While the C# compiler, itself written in C#, has been able to compile itself since March, Mono can now compile its own complete set of class libraries too. This announcement closely follows the release of the Phonic media player, the first .NET application for the GNOME desktop."
So Miguel provided an answer to something that's been troubling me...COM. He mentioned having to emulate some win32 stuff. MS hasn't done away with COM, just wrapped it with .NET, so I've always figured any free alternative would never really work since it would have to support COM to run windows programs that strayed from .NET only code. Nothing in .NET replaces the generic interfaces you can make and program to in COM... I'm curious what the future will hold.
Hey, this sounded pretty cool at first. I mean, the more languages the better, right? ;) Plus, I hate it when the Winblowz lusers get to play with pretty toys I can't get on my Linux boxen.
:(
But then I reconsidered. First, a little background. C# was, is, and always will be, a Micro$oft invention. Like it did with SMB and OLE, not to mention DirectX and ZIP, M$ will have no reservations about mucking with C# just to break Mono compatibility.
In the case of SMB, we live with this. SMB has become a de facto standard in the enterprise, so Samba is forced to follow M$'s lead and keep up. But no such market forces exist for C#. Right now, it's a minority player against giants like Java and C++.
By supporting C# through Mono, Linux only serves to make it more popular. In doing so, it makes M$ more powerful. The Mono project is about as counterproductive toward Linux advancement as a Free Software project can be.
Karma: Good (despite my invention of the Karma: sig)
Maybe if a valid reason was given for "switching to KDE" aside from Gnome being able (able, not forced) to use Mono this wouldn't be a troll.
But it is.
Microsoft has proven again and again that, in the end, they *will* win
Really? They *always* win?
Bob
MSN
IIS
MSN
ASP Microsoft Office
Hailstorm
etc, etc
Yeah... it's hopeless...
I am not a number! I am a man! And don't you
No...they'll go ahead and change their infrastructure so that it doesn't work with open source code.
.net (the concept) makes alot of sense, its just whether or not you trust M$ to implement it. (No prize for guessing my opinions on that one).
.net has the potential to be one of those things, and as long as mono exists also, I look forward to it.
Well, sometimes this works, and sometimes it fails.
Despite numerous attempts to redefine HTML, its still a fairly broadly defined language, irrespective of what IE will render.
But M$ do do some things right (Office apps and development suites).
Michael
There is no cryptographic solution to the problem where the intended receiver and the attacker are the same entity.
...being able to compile code on several platforms without worrying about ports is a great achievement.
It is! But it happened 7 years ago with the release of Java.
THIS SPACE FOR RENT
I use C#, ASP.NET and VS.NET at work. I find developing web applications with these MS technologies glumed together as irritating as it gets. While the integration between disperate technologies is commendible, VS.NET is slower than frozen mud. Give me a good text editor and command line tools any day.
.NET with Windows to the point that Mono will never work. MS will release new .NET crap every year and Mono will play catch up for a year so it finally works again just as MS is releasing a new incompatible version.
.NET. Microsoft has proven time and again that it can't play well with others. I think Java has a good record for working everywhere consistantly.
I think that the whole Mono project will turn out to be a major debacle. Microsoft is going to integrate and complicate
In the past, Microsoft has either presented an "open" standard, or pushed someone else's open standard, only to hijack it in the end, to the detriment of non-Windows users and developers.
I think the Open Source community would be better off backing a web technology like J2EE and not
I would recommend consulting members of the Wine and Samba development groups. I'm sure they have plenty of horror stories about working with constantly changing MS technologies.
Two of our developers just came back from a .NET training session and were wowed beyond belief. (Note: This session was put on by a private company, not Microsoft). These guys were hardcore Linux/Java hackers working on our latest web based application. What changed their mind? It was the tools. The code had *NOTHING* to do with it as far as they were concerned. I told them there were OSS alternatives that pretty much replicated all of the .NET functionality. They still shook their heads saying it's the tools they were introduced to that made the real difference, not the code. One small example they used was that the MSFT tools allow you to backtrace a transaction all the way from your HTML front end clear on in to the database with a simple click of a button. There were a lot of other examples, but that was the one that stood out in my mind the most. It was the fact that they could write code faster and worry less about the crap that tipped the scales.
The thinking progresses with the argument that since we're developing on Microsoft tools we should be running a Microsoft OS on our servers since no two JVM's 'er I mean CLR's are alike...
*Condense fact from the vapor of nuance*
even if that happens though the primary goal of the mono project isn't to interoperate with windows apps written for .NET. the point of the project is to make programmers lives easier by providing the tool that would make programming for open source OS easier. MS can't crush the project because it doesn't rely on anything more than the standard they submitted to ECMA. And the development tools are nice even if you wouldn't be able to run MS .NET programs.
Microsoft Bob... Need I say more? :)
.Net is going to get used by the places that have tended towards being heavily windows environments originally. Companies that have been using Unix, Linux, and Java will probably not be moving to .Net anytime soon.
.Net on Linux provided that it works well and provided that I can have faith that, in the long term, I'll be able to do this without risking a microsoft tax or lock-in.
.Net. Wait until enough people develop .Net solutions on alternative platforms then say, "well that's great, now you can pay us a license fee."
.Net I'd probably see it as a good thing. Hell, I've been a java developer for a while and I don't think much better of Sun than I do of Microsoft. The only reason I trust sun to stick with some level of openess is that it's about the only ammunition they have available to leverage against Microsoft's hegemony.
Overall
Personally I'd be very interested in using
My big concern down the road is that Microsoft is going to start using patents and license restrictions to control the fate of
I just can't believe that Microsoft would develop any technology that wasn't designed from the ground up to further their control. If just about any other company had put forth
This sig has been temporarily disconnected or is no longer in service
Mono has nothing to do with GNOME. If you'd do your research you'd realize that they are seperate projects and that the rumors that GNOME is going to be based on .NET are just that -- rumors. There are some people that are involved in both projects, however, the GNOME project has come out and said they currently have no plans to move to MONO or .NET any time soon. Maybe someday, who knows? But they are SEPERATE projects. Read Miguel de Icaza's own
reply to this idea.
.NET framework that are really nice. What's more, unlike Sun, M$ has given their language and technology up to be standardized. In that sense, it's more free than Java.
Besides, have you ever looked at the MONO project? They're doing some really impressive stuff. You probably shouldn't write it off just because you're afraid of M$. I'm a java programmer and an avid Linux user, however, there are some features of C# and the
Who said Freedom was Fair?
I can't speak for all the "dot-net languages", but I've been writing lots of ASP.Net code in C# and VB.Net recently and guess what? It's not the tools, it is the framework itself.
.Net SDK and what makes me all wowed is how quickly I can do things that used to take hours to build on ASP 2.0, like complex form interfaces, data validation, query output, etc. It's well worth looking at the samples to get acquainted with, I bet you'll be surprised with how powerfull and flexible the framework is :-)
I'm not using Visual Studio, I'm working out of the
There was an article just the other day on here about how web developers are designing for Microsoft now and ignoring standards. Though Microsoft is never going to make themselves fully incompatible with other browsers, they have continued to distinguish themselves from the competition by their "innovations". The result is that while I can surf websites on linux using mozilla, I will be given a decidedly different experience doing so. Some sites will refuse to let me in all together, and others will just break horribly.
Now, you might say the reaction to this is that those companies will suffer from losing my business. Yeah, so they are losing what, 5% of the market? Ooooo, big deal. This causes people who don't have a tolerance for these glitches to go with a windows platform out of their lack of patience for that stuff.
This sig has been temporarily disconnected or is no longer in service
Exactly!
.NET. Microsoft couldn't even be trusted to stick with the spec...they IMMEDIATELY started changing Java (adding worthless crap like *pointers* to a language that was designed NOT to need it). Why did they do it? Because, this is EXACTLY how microsoft gets ahead--embrace, extend, sieze control, and keep changing the API so no competitors can catch up. CHRIST folks, we've got the MEMOS sent around Microsoft HQ as part of public record. They went out of their way to "neutralize" Java as much as possible. .NET will be NO different. Why should it be? Almost all of Microsoft's former competitors complained that Microsoft had the upper hand--because Microsoft had access to the "hidden" APIs while their competitors did not. Will .NET be different? Why in the hell should it? This tactic has worked for Microsoft OVER AND OVER again. Why throw away a perfectly good tactic that has yet to fail?
Microsoft's track record with Java alone is reason enough to avoid
Do you honestly think Microsoft has suddenly turned over a new leaf? This is the company that FAKED EVIDENCE in a court of LAW for God's sake.
Is Miguel smart? Possibly. Is he smart enough to outwit Bill Gates and his army of monopolists? I doubt it. Just look at the graveyard of those who have tried to dance with the devil...the legacy of the 90's computer industry is a full graveyard.
I guess I have to make my obligitory post on this subject:
As a technology person, I like the .NET framework, the web services aspects, the runtime, and I think C# is infinitely better than C++ (then again, what isn't...). I'm looking forward to playing with C# on my Linux machine.
But I'm just a little creeped out by the idea of using Mono for anything important (business-related), such as deploying services or products. I really have trouble figuring out what Microsoft has to gain from allowing Mono to exist indefinitely. They have plenty to gain from a sweeping, cross-plaform, bait-and-switch ploy.. they can just wait until Mono is somewhat established, apps are built and deployed... then break it and wait patiently for the inevitable migration back to Windows.
I would like to hear from Microsoft that they won't sue any Mono developer (or user) for patent infringement. I'd like to hear that all relevant APIs and specification are public and open and will stay that way. Miguel's attitude seems to be one of "hope", quote:
Now, I could be all wrong, Microsoft actually might not mind that we will use their technology and not their products...but...this is Microsoft we're talking about here.
Sure this sounds like fear, uncertainty, and doubt, but that's exactly what I feel whenever I think about Mono......
Look at .NET, what is it? Basically it's just another API (plus some other enhancements, but I told you to take a step back and look at the bigger picture.) like the Win32 API
Microsoft wants to fuel upgrades just like the transition from Win16 to Win32 fueled upgrades.
The worst case in a Linux-point-of-view is that everything stays the same - Windows-apps don't run under Linux.
The best case is that .NET apps run under Mono/Linux right from the start.
We need to have microsoft constantly chasing after US
.NET offer, really? "Portable" code and remote apps? Java has offered portable code for about 7 years now, and remote apps predate Unix.
They are. Can you name a single "technology" MS has announced recently that *nix hasn't had for years (if not decades)? What does
All MS has done since they started developing NT is chase *nix. The only thing I can think of that they might have had a head start on is the GUI, but I have my doubts about that, too. What OS was Xerox using at PARC, anyway?
The problem for *nix is that the general public isn't aware of that fact.
Under capitalism man exploits man. Under communism it's the other way around.
Cheers!
Eddy.WriteLinux.Com
That's the biggest problem, .Net isn't as portable as java, also java is meant to be a great kitchen sink system, with everything from multimedia to raw socket connections. Also, if you don't like java, you can use python with jython to write java class files using a simple scripting language. Java is just so rich, the api has so many goodies to choose from, and the apps can be easily adapted from J2SE to the simpler J2ME CLDC, you still can only use C# to write desktop applications, and having it run clients on the handheld really isn't in the cards for c#, since all applications are supposed to run on MS servers. True I suppose things are getting ported to C#, but still, why go to all the effort to learn it when Java has such a huge head start, and Sun isn't try to kill linux either.
Check my site out for ogg vorbis music produced with linux.
Mono is a stupid reason to switch from Gnome to KDE, in that the Gnome project has not accepted Mono. It's a proposal from the Ximian folks that Gnome eventually accept Mono. I wouldn't be surprised to see the Gnome project split if Mono were forced on it in a central role (rather than as an optional add-on), as many Gnome developers are not fans of it at all.
What will you do if some KDE developer says he wants to support .NET in the KDE framework? You'll then have to drop KDE, since you drop platforms based merely on proposals that they go in a direction you don't like.
And the Linux croud hasn't been chasing Windows for the past several years in an attempt to copy the Windows "look and feel" on the desktop?
Gnome/KDE are nothing more than attempts to mimic the Windows GUI.
OpenOffice/etc. are nothing more than attempts to mimic popular Microsoft productivity applications.
First, I would like to post a link to an MSDN article on Microsoft's attempt to build a .NET implementation on FreeBSD.
Second, I am a C# and VB.NET programmer. I have really enjoyed using the new VS.NET, and love ASP.NET. The way it treats web pages with an event model is very, very cool. As I am also a PHP programmer, I consider ASP.NET, concept wise, a giant leap ahead of PHP. VS.NET runs a bit slow on my 400 MHz machine, but cruises along smoothly on my 1.6 GHz laptop. Plus, it handles much better than Sun's Forte, a comparable product that would let me build comparable software solutions.
Third, I am VERY excited to be made aware of MONO! I have done quite a bit of Java programming in my past, and am glad to have a better alternative to it for building enterprise level applications on Linux. I have not had the level of "undocumented features" bite me in my .NET programs as I have in VC++, VB6 or Java. Say what you will about the evil empire, but the .NET framework is a very well thought through, nice behaving programming platform. I wish the MONO team the best of luck, and am thinking of volunteering!
Fourth (and finally) I have been teaching some VB.NET and C# classes. I have found all of my students walking away from the classes wanting to use .NET, including Linux programmers. I would tell you hardcore MS haters out there to at least try out .NET, especially if it is going to be implemented on Linux. I think you will find that it could be a great tool for you to build software with, if you take of the blinders. After all, why not take what is Microsoft's big marketing push and turn it against them on Linux?
Great ideas often receive violent opposition from mediocre minds. - Albert Einstein
They are. Can you name a single "technology" MS has announced recently that *nix hasn't had for years (if not decades)?
1) Drivers
2) Games
3) A broad user base (You and your 3 friends, who couldn't get laid in a whorehouse even if they had a $50 bill hanging out of their zippers, do not constitute a broad user base)
Comment removed based on user account deletion
Given that OpenOffice mimicks the GUI of MS Office(did you see how similar the GUI(buttons position, style, etc...) is ?) I tend to think that OpenOffice is actually nothing else that an Office clone, actually it's just worse, but very similar.
Can you name a single new technology that has appeared in UNIX in recent years that was not in VMS or MULTICS?
This type of argument is pure sophistry, either Microsoft are accused of stealling other peoples stuff (hard to do with open standards) or they are ignoring open standards.
Until WS-Security was proposed nobody had had any success with a transaction layer security enhancement. HTTPS failled, SHEN failled, PEM and MOSS failled. PGP and S/MIME had some success but they are limited to email.
Now nobody would claim WS-Security to be amazingly novel, however Microsoft, IBM and VeriSign have got the whole industry behind a spec in that niche which has never happened before.
As for all the 'nothing new has happened since Xerox' stuff, I suggest the people with that dellusion stop eating the mushrooms and go and use one of the things. OK so you can kinda sorta see the beginings of the ideas we use twenty years later, but they got as much wrong as they got right.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
It appears that the reason you didn't choose .NET was based entirely on emotional, rather than technical reasons.
Is this normally how you make decisions?
Gee, I guess if you repeat it often enough it becomes true. The site you linked is, judging by the snide comments abut Windows' "features", a tad biased. Do you have any other sources?
What were the predecessors to the Visual Studio IDE? To IntelliSense? To drag-n-drop GUI building? Dropdown menus that show frequently-used items, adjusting themselves over time?
I'm not trying to troll here, and it's not entirely off-topic. As with a previous post on MS projects that failed, debates about the future of .Net need to be framed in an accurate asessment of Microsoft's history of success and inovation.
It seems most folks on slashdot believe Microsoft can simply bully its way to the top of any field, forcing people to adopt anythning it produces. Yet products like Bob suggest this isn't true. So, why do some, but by no means all, Microsoft products succeed? Clever copying of proven ideas? Subtle innovation? Reinvention of older ideas, with improvements based on 20/20 hindsight?
People snipe at the idea of a .Net VM as a Java ripoff. The Java VM is a Pascal P-code VM ripoff, but done better. Java swiped ideas from C++, and improved certain things. Could it be a similar case for C#/.Net?
Java is the blue pill
Choose the red pill
No it's not, the language sucks, as can be read from this FAQ for example.
Microsoft has a large deployment base. Lots of people will learn and use C#, because that can mean a job.
A quick search on Monster.com does not support this claim.
Microsoft is going to do the work to port to BSD.
Yeah or so they say... big fucking deal, Java already runs on dozens of different platforms.
Microsoft Labs members have and continue to make efforts supporting the use of other non-traditional languages on .NET
JVM supports more languages than .NET ever will.
Microsoft isn't afraid to design a platform for performance, unlike Sun
There is no speed difference, both platforms run on a virtual machine.
C# and .NET will be used on WinCE handhelds.
Will be? oh oh ... well how about Nokia ships millions of cell phones already with Java embedded? WinCE is dead.
Common Java runtimes still run like ass, and the language is a piece of crap.
You're just a pathetic little shit who hasn't got a fucking clue what you're talking about.