Posted
by
CmdrTacoon Thursday March 25, 2010 @11:20AM
from the starting-with-the-name dept.

An anonymous reader writes "Microsoft has shot the .NET ecosystem in the foot because of the constant threat of patent infringement that it has cast on the system, Novell vice-president and Microsoft MVP Miguel de Icaza is quoted as telling the website Software Development Times recently."

I used to respect that company (NetWare 3.11, NDS, NetWare 5.0, GroupWise, ZenWorks, all top-notch tech, IMHO).

Now, a tad less.

Yeah just like when Mr. Hovsepian took his new seat as CEO he said he would do so much for linux and the linux community. A few months later Novell axe's a bunch of key KDE developers, and later on let go a bunch more of there development teams on SUSE / opensuse.

Of course it would be wrong for the VP of a company who probably has done more deals with Microsoft on interoperability to know something about their software. Netware of the past was *the* directory service for Windows.

For those who don't "repsect" Novell any more because they act like a corporate player doesn't get it. They came in and fought the SCO fight a bit and at the same time did some questionable deals with MS, it's all just business to them. They have stood on principle quite a few times but they

Lots of questions means lots of confusion. I think all you proved is a severe lack of documentation or how newbies are confused as hell by it.

Or, maybe, lots of questions just means lots of newbies?

Or it could even mean that StackOverflow is historically more.NET-centric, so that's where you go to ask.NET questions; and Java ones are asked elsewhere.

I'd say check the Tiobe index [tiobe.com] for a more accurate record. You'd think that a major corporation like Microsoft could garner more popularity than PHP instead of less than half.

TIOBE index is extremely unaccurate due to their, ahem, "methodology" [tiobe.com], and they even tell so themselves.

It is particularly inaccurate with respect to.NET, because you need to extract VB.NET out of all BASIC job offerings, add C#, and then add all positions that just say ".NET" without specifying the language (which isn't even tracked on TIOBE), to get a real figure.

Then, also, think about what it measures - if you look at what is found by googling for "PHP programming" (which is what TIOBE does, pretty much), it's mostly various tutorials/howtos. So, it effectively measures the amount of learning material available online for a given tech, including any low-quality and duplicate ones. It's no secret that there's a crapload of that for PHP. In fact, by your logic, it would indicate that PHP is so bad, since it needs so much tutorials to teach people to do things, no?

Instead of TIOBE, why don't you open your nearest job search website, and look at the number of available.NET positions vs Java ones? (the ratio will vary quite a bit by region/country, by the way)

Again, you need to compare C# + VB.NET to get a meaningful comparison of.NET vs Java.

And if you want to count Groovy and Scala, sure - but then let's also count Boo and F#.

Oh, and the link is from 2006. Here [odinjobs.com] is a newer comparison, from 2009 (though they don't give the methodology they used to determine what ".NET" is). Still shows Java roughly 1.5x ahead in terms of job count, which isn't surprising, considering the head start.

Salary distribution is more interesting. It shows that.NET salary distribution

No one does anything of importance and cares about Mono. Unless your app was written to deal with the inadequacies of Mono its unlikely that any non-trivial app will work in Mono. There is no concern by anyone with a non-trivial app about what Mono licensing issues might mean because Mono is incapable of running any app that matters.

Rant, whine, moan, talk out your ass, lie, cheat and steal to make it sound like MS is the reason Mono isn't taking off... won't make it so

When Stallman said the same thing, de Icaza called him a fanatic. Well, most voices on/. called him the same thing. He was right then like he was right with his movement from the start. You can't have half-measures.

Huh? When did Stallman ever say that Microsoft "shot.NET in the foot" (paraphrased)? I'm sure he said.NET was evil. That Mono was equally evil. But Miguel's quote does not, to my knowledge, echo a single damn thing Stallman has ever said.

Maybe you should try actually reading and comprehending the text of the quote, first, before you try and fit it into your own ideological mold?

That's a little rich for De Icaza to be coming out and saying this now. He's spent years shouting down anyone that warned him about the patent scenario with Microsoft's technologies and yet he continued to proselytise. He's worked away on Mono and Silverlight and made sure to get them included wherever he could.

Kinda like when you tell a female who is having an affair with a married man: "You know he's never going to leave his wife." The reaction is usually denial and false hope. Some day, maybe years later, they realize the truth and move on. They didn't just were not ready to acknowledge it until they are ready.

And we're allowed to roll our eyes and say "No shit, Sherlock! Welcome to five years ago!"

I mean sure he's slow on the uptake. Sure it was pretty silly to dismiss the quite plain threat of Microsoft's patents with "Oh but they won't do that!" But hey, at least the "but they won't do that!" turns into "gee, it's looking like that's exactly what they plan to do" eventually.

Doesn't mean I think he's any smarter than I did yesterday. But sure he's allowed to change his mind, and that's a good thing.

Is that what he did? I remember long, in-depth justifications from him and others. Endless debates on slashdot with Miguel personally arguing in dozens of threads.

Yeah, I personally argued with him, and yes, I think that's an accurate characterization of his response to the patent issues. He couldn't deny that patent issues existed, so instead he simply claimed that they would not be a problem. After all, Microsoft had promised. So we were just being paranoid.

Microsoft claims that they have patents had a chilling effect on Mono adoption.

That does not mean that I do not stand 100% by our position in the Mono project regarding patents. To begin with, we think it is a bullshit argument, since everything you use is infringing on someone else's patents (Microsoft included).

Microsoft like any other corporation will do a cost/benefit analysis of suing someone over patents. So far the kernel has been a juicier target than Mono has.

Come on Miguel, really. It's not the same thing. It's one thing to go ahead making technical progress and accidentally infringe an obscure patent in someone's portfolio. It's quite another to adopt and adapt someone's technology and hope they won't sue you. This is even more important a distinction when the technology in question belongs to your competitors and they've publicly sword to defeat your cause.

I know you're getting a hard time in this thread but it has to be taken for what it is.

Well, it looks like he now understands why people had reservations about the Mono project in the first place, and why it wasn't embraced with open arms by the community. Considering that he seems to be quite smart it may feel like a surprise that the learning experience took this long, but frankly I'm just happy that he seems to have learned the lesson. Hopefully this means he will put his considerable skills to better use now that he is starting to see the problems with his original approach.

Taken from Google Cache: http://74.125.93.132/search?q=cache:LPFDjfqGMRMJ:www.sdtimes.com/link/34203+Does+Windows+cost+Microsoft+opportunities&cd=1&hl=en&ct=clnk&gl=us

Does Windows cost Microsoft opportunities?By David Worthington

March 17, 2010 —The evolution of the.NET Framework has won new users to the platform, and drawn its share of criticism from those who think Microsoft’s stewardship has often been off-target.

Among the critics is Novell vice president Miguel de Icaza, who said.NET's focus on Windows has come at the expense of opportunities for Microsoft, and its desire to guard its intellectual property is an impediment on the platform.

"Microsoft has shot the.NET ecosystem in the foot because of the constant threat of patent infringement that they have cast on the ecosystem," he said. "Unlike the Java world that is blossoming with dozens of vibrant Java Virtual Machine implementations, the.NET world has suffered by this meme spread by [Microsoft CEO Steve Ballmer] that they would come after people that do not license patents from them."

In practice, the Java community only uses two or three JVMs (IBM's, JRockit, and OpenJDK from Sun), while others are research efforts or smaller-scale open-source projects, said author and consultant Ted Neward. "Virtual machines are not something the open-source community seems to want to experiment with."

Microsoft submitted the Common Language Infrastructure (CLI) specification to ECMA International, which ratified it in 2001. Microsoft built technologies on top of the specification as.NET evolved.

Microsoft has made an open-source CLI implementation codenamed "Rotor" freely available [microsoft.com], but it has had little or no uptake, Neward noted.

However, Mono remains the only implementer of the ECMA CLI specification outside of Microsoft, and that is a testament to the legal uncertainty surrounding some aspects of.NET due to Microsoft's statements about open-source software, de Icaza said.

"[Microsoft] would still be the No. 1 stack, but it would have encouraged an ecosystem that would have innovated extensively around their platform," he added.

Facebook, Google, Ruby on Rails and Wikipedia could have been built using.NET, de Icaza claimed. "All of those are failed opportunities. Even if the cross-language story was great, the Web integration fantastic, the architecture was the right one to fit whatever flavor of a platform you wanted, people flocked elsewhere."

"To say that Google could have used.NET is to undervalue both Google and.NET. Google creates value from things like distributed MapReduce and a brand-new system-level programming with concurrent coroutines," said Larry O'Brien, an independent analyst and consultant who writes the Windows &.NET column for SD Times. ".NET creates value from a fantastic IDE, great mainstream languages, and well-executed technologies like Silverlight, LINQ and the DLR [Dynamic Language Runtime]."

Despite the criticisms, customers are "making bets on.NET" all the time, said Brandon Watson, director of product management for Microsoft's development platforms. "The fact that we didn't get Google—I'll cry a little, but not a lot. I'm not certain that Google wouldn't have taken a bet on philosophy, wanting to beat us."

Further, developers can build languages on top of.NET 4.0's dynamic language runtime, which supports both Python and Ruby, Watson said. But it's the addition of new technologies on top of the ECMA specification, such as the DLR, that de Icaza believes impedes the CLI's adoption.

Microsoft's submission to ECMA has remained at a "core level," de Icaza claimed. "I

"Unlike the Java world that is blossoming with dozens of vibrant Java Virtual Machine implementations, the.NET world has suffered by this meme spread by [Microsoft CEO Steve Ballmer] that they would come after people that do not license patents from them."

In practice, the Java community only uses two or three JVMs (IBM's, JRockit, and OpenJDK from Sun), while others are research efforts or smaller-scale open-source projects, said author and consultant Ted Neward. "Virtual machines are not something the open-source community seems to want to experiment with."

::Incredibly slow facepalm::

What the hell kind of rhetorical diversion that was?

"I love air", de Icaza was quoted as saying. "Breathing oxygen is a wonderful thing. I couldn't get through a single day without oxygen."

In practice, oxygen only accounts for about 20% of Earth's atmosphere, said author and consultant Ted Neward. "O2 just isn't something that the open source community wants to inhale frequently."

Tip: Java isn't popular because people work on multiple JVMs (however small in their number they might be). The point de Icaza was making is that Java is popular because there can be multiple JVMs.

Promissory estoppel does apply for things covered by the OSP, but the OSP doesn't cover nearly as much as you seem to think it does. The grandparent's analogy would be more accurate if the host said 'Oh, I promise not to decapitate any of my guests with that sword.'

I don't see why Wikipedia couldn't have been built with.NET. It's mostly database-driven; you could write the front end in pretty much anything. It's not an especially complex bit of software, the value is in the content. People have written wikis in all sorts of languages and even something as slow as Ruby scales well enough in most cases to keep the bottleneck in the I/O.

Yes, it was this quote that made me question whether de Icaza has any clue at all.

.NET was released first in 2002. Wikipedia was released in 2001, Google in the 90's. As for Ruby on Rails -- don't you need Ruby first in order to build a framework on Ruby (incidentally, Microsoft got into IronRuby in 2007)? Facebook, meanwhile, was a classic example of a commercial website done on the cheap, and at the time it was started, LAMP was about the only practical option. Your average group of kids with an ide

And Google uses a mix of languages and tools: different features require different tools and all that. Had there been no legal problems, it would have been a no-brainer to use.NET over other technologies.

It did not have to be Mono, it could have been a third party.NET implementaion.

Google uses a range of technologies but as far as I can tell it doesn't use Windows on its servers, partly because it needs the flexibility to do quite advanced things with Linux to gain performance. The big attraction of.NET is not the CLR but the.NET libraries, which still aren't replicated on Mono - so why would Google choose to use.NET and limit its options to a closed source OS owned by its biggest competitor?

No. Nobody has to do anything here. He was indicating that he found that statement hilarious, and there is nothing wrong with that. If you want more in-depth analysis feel free to read any of the other dozens of posts here.

All MS is interested in is the bottom line. If they allow free implementations of.NET then as far as they see it they'll lose sales on their.NET compiler and whats more may even lose Windows sales if people port their.NET apps to a-n-other platform.

I'm not saying they're right but thats probably the way their short term thinking marketing and legal dept see it.

Maybe the biggest lamentation I have is regarding C#. I keep on hearing how it's a wonderful improvement on C++, which is my bread-and-butter language. But I'm just not willing to invest time in a language that requires paying a Microsoft tax one way or another.

Maybe the biggest lamentation I have is regarding C#. I keep on hearing how it's a wonderful improvement on C++, which is my bread-and-butter language.

I wouldn't be too sad. C# is really more of an improvement on Java than it is on C++. I'm going to go out on a limb and assume there's a reason you use C++ and not Java, and those reasons would probably still mean you'd use C++ over C#.

As a general rule, getters and setters suck. They're one step better than making variables public.

Your class APIs should be based on how the class should behave, not on how it's implemented. This may include getters and setters on particular member variables, but if you really miss properties you're almost certainly doing it wrong.

This applies to all OO languages with more or less the C++ model, including C# and Java.

Why is missing properties a bad thing? Properties are just syntactic sugar over getters and setters. They can do work under the hood, same as a getter or setter; very different from just making a variable public. It's just a readability difference; particularly when combining getters and setters on a single line, it's a lot easier to read:foo.fraction = bar.num / bar.den;
than it is to read:foo.setFraction(bar.getNum() / bar.getDen());
Contrived example, but an idiom that allows all assignment to be don

Miguel was enamored with a lot of the technology behind ".NET", and thought he could outsmart Microsoft, in a sense. He thought he would be pragmatic and non-religious about the technology and adopt it.

What he never realized, and is maybe now only starting to realize, is that.NET is a *marketing* term. It was brilliantly crafted by Microsoft's marketing people. As smart as their developers are and as cool as Miguel thought their engineering and technology is, their marketing is far and away better and more sophisticated..NET is a brilliant marketing strategy. Miguel didn't realize that by using the '.NET' term so incessantly, he was basically ensuring that he would be in the position that he's in now.

Sure, there was C# and the CLR. That was probably 10% of ".NET", which was a overarching strategy for the *Windows* ecosystem at the time that involved extending Windows into the Internet as much as possible, including "tieing" it into all sorts of Microsoft-oriented services that were MSN at the time.

Think about it. VisualStudio.NET. What the !@#$ does that mean? It's a branding term. Miguel showed his complete lack of understanding of marketing by using that term so regularly and continuously WRT Mono.

Miguel was enamored with a lot of the technology behind ".NET", and thought he could outsmart Microsoft, in a sense. He thought he would be pragmatic and non-religious about the technology and adopt it.

I've been saying it for years -- real pragmatism must always include consideration of the practical realities surrounding a tool or technology. Like, who is providing it, what are the terms under which they provide it, could those terms change and how would that affect your use of the tool? Or as you point out, how does the technology you like (C#) fit into the larger strategy being pushed (.NET)?

Many engineers tend to want to ignore those aspects and focus solely on the qualities of the tool itself. They say they just want something that "does the job", and thus fail to consider how those factors affect the tool's ability to do the job. Because, being technically-minded people, they want the technical factors to be the only ones that matter. They call this "pragmatism" and being "non-religious".

Which just goes to show how even people who value pragmatism and rationality more than anyone can still be completely irrational. Ignoring the important external factors because you really wish they weren't important is not rational!

Rationality is simply a useful trick that our mammalian brains have picked up. But at the end of the day we are still emotional animals, and even when expending great effort to force ourselves to think rationally we can't eliminate the effect of our emotions. Much of the time "rationality" is simply a way to justify what we've already decided based on emotion.

Ergo the worst thing a person who values rationality can do is tell themselves that they are completely rational and uninfluenced by emotion. I think there's an important lesson to be learned here, even for those of us who saw this situation coming from a mile away.

Put aside the fact that De Icaza is now eating his own words about the patent issue and look at the issue itself. Microsoft simply has not accepted how things have begun to change. Developers rarely need them the way that they used to need them in the business space. Most large enterprise apps can now be entirely built in Java, Ruby, Python, Perl or PHP for the backend and JavaScript with a toolkit like jQuery or ExtJs for the front end. There is not a single need for Microsoft in that whole space.

Microsoft needs to realize that developers have options now and their threats are empty. Most developers would laugh at their attempts to control things now and simply say "have fun with that" as they switch to some pure open source approach or one built around a hybrid of open and closed source from various projects and vendors.

Developers rarely need them the way that they used to need them in the business space. Most large enterprise apps can now be entirely built in Java, Ruby, Python, Perl or PHP for the backend and JavaScript with a toolkit like jQuery or ExtJs for the front end. There is not a single need for Microsoft in that whole space.

There were always alternatives to MS developer tools, going back over a decade. On DOS, Turbo Pascal was awesome. On early Windows versions, Delphi ate everyone's launch (VB was originally released by and large in response to Delphi). On the web, PHP and Java have been around before ASP, much less ASP.NET, got there.

That never stopped Microsoft from making a profit on selling developer tools, and from people buying them. There are various reasons for that, but one of them is that what we offer today is a si

Some of the strongest minds in computer science have built out.NET, and continue to do so. There are some practicality gaps, but today the majority of the corporate world is powered by.NET devs, for better or worse.

However, this many years into the platform, it's starting to show it's age. From.NET 1.0 applications, laden with crude pinvokes to Win32 API's, GDI+ silliness, messy ADO.NET integration, through 2.0, 3.5, 4.0, the "Enterprise" helper classes, the "Foundation Extensions", the integration of pseudo-SQL declarative syntax with LINQ, Entity Relation classes, Unity, security, contracts, plus all of the layers of ASP.NET tools.... don't VS's forget code analysis, test suites, code coverage, profiling, generated documentation... there are many more but you get the point......all this is shaping up to be a very MS-centric view of the.NET universe. Which is a mistake, De Icaza seems to imply. I wholeheartedly agree. While the computing world abandons PCs for most tasks (gaming, editing information aside) and info consumption is done via smaller devices, on a variety of hardware & OS's, MS has bound.NET to their OS deployments - and there will be many other OS's talking in that space.

This is Microsoft's biggest gamble with.NET: That as the OS lives or dies, so does this platform. Really, it could be bigger than Windows. If MS shipping a full (even licensed) 4.0+ framework for use on Linux & Apple, it would inject a massive growth spurt in both those platforms but a huge and lasting foothold on the MS-based app development.

Dude... (chicks don't react like that).NET is supposed to be cross hard- and software.

It was introduced to abstract the OS so that if Microsoft were to also release Windows for PowerPC's or whatever architecture,.NET apps would still run,

Later on Microsoft announced the interoperability (this is my time to "Pffffffwahahahahaha") and they killed it with patent infringements.

So now, yes, Microsoft has shot the.NET ecosystem in the foot, which is differently from shooting it in the head.

What I am saying is yes;.NET is still very strong and succesful, but limited to Windows pretty much. Good for Microsoft and Windows, bad for the ecosystem itself that had spread to other OS platforms with Mono (which is chasing taillights and thus sucks).

How is java's cross platform ability a myth? How many java programs that you know of are not cross platform when written correctly? With the not very notable exception of a few non-standard libraries, the occasional difference in performance and developers that hard-code file paths, java works very well on multiple platforms.

Java apps usually use some OS specific stuff as well. Virtually every mainstream Java program uses an OS specific installer for instance. And if you're distributing a different installer for every platform, you may as well compile it for every platform.

As for C based desktop apps with cross-platform capabilities, might I point you in the direction of a little thing called Firefox [getfirefox.com]? Yeah, it needs certain libraries coded differently for different platforms, but as noted, so does Java.

The myth about simple cross-platform development in Java is just that, a myth. Anybody with cross-platform Java experience will attest to this. Java, as a language, has grown stagnant, while C# has continued to evolve.

I and our team of 100+ Java developers will disagree with your statement of Java and cross-platform development. We find it excellent. Is it perfect? Nope, but in my opinion it would be a 9 out of 10 with the next closest competitor being.... Well there isn't really any close competitor but I guess we could give the C language a 2 out of 10. Perhaps Ruby is good but I haven't looked at it. Granted I am talking more about the JVM that Java itself. However, Java like other languages has evolved quite a bit in the last few years.

Does Java have the radical changes that say languages like SCALA have? Nope, but then again it shouldn't have that. Is it stagnant? Not at all.

The core difference you see between any of the Microsoft languages and the JVM languages is that the JVM languages somewhat try to work within the community. They also want to maintain binary (class) backward compatibility. Microsoft is an absolute dictator with their language and even to a large part their tools. This does have it's advantages, in that stuff comes out quicker, but then again, if you are a business and built you lifeblood one VB6 to have it brushed aside by Microsoft, you might be a little angry about that ruthless dictator approach. If you are some contractor type of person who wants constant change in the core framework to make your life easier (at the cost of compatibility), then you would probably like this approach.

So in short things like closures will be in Java 7 (not a small task), and Java the language is not at all stagnant. Cross platform development, testing and support is excellent with Java. We use OSX, Ubuntu, Microsoft Windows XP and 7, and RedHat with no problems.

Java embodys one radical change, and it's not a feature of the language (which was pretty radical itself at the start). No, the radical feature is that it's GPL'd. This change came a little late in the game, but look what it's produced already.

Take Android. You might say 'just another smartphone platform', but think about how it came about. Google didn't develop it. A startup did. And how was it possible for a startup to build an entire internet-capable touchscreen platform? GPL. Because they had a free OS they could use any way they wanted, and a free virtual machine they could use any way they wanted, they were able to get creative and package it all together as an innovative new platform. Google bought it, added polish and apps, and suddenly it's an iPhone and Android world with Microsoft playing catch up.

Microsoft can't do this. They are committed to their proprietary OS, so they are unable to harness any major creative leaps that come from outside the company. Outsiders can't play with the OS to tweak it to their needs, so they have no way to use Windows as a platform for creativity that doesn't fit into the channels that Microsoft provides them. Plus, they know that any really good ideas they develop on the Microsoft platform will likely be copied by Microsoft and never realize their potential (for them, at least).

But the Android folks could start with minimal overhead and produce something great under the radar.

That's the beauty of the GPL and the Linux (and now Java) models based on it. DVR's, netbooks, cheap wireless routers, smartphones, Kindle and 100 tablets to come. The Microsoft ecosystem is not capable of producing these things. So the next time you rag on Java or OpenGL, X-Windows or even OpenOffice - and rhapsodize about C#,.NET, MSOffice, etc., realize that you're missing the point. These tools may not individually be the absolute best in class, but they are all much more than good enough. And they enable the most creative and dynamic ecosystems in IT today. If you care about that, C# vs Java is a no-brainer. You're gonna want Java.

Miguel seems to be just now grasping this. He had hoped that a free version of.NET would be as good as Java. He liked the technology better (not sure how much better), and thought making it free would bring it to the creative class that's really innovating these days. But Microsoft won't let him. Never meant to, never will. Sorry Miguel - I feel your pain.

Android isn't using JVM, it's using Dalvik which is a VM written from scratch that's entirely different from the JVM (it doesn't even use the same bytecode).The link between Java, the JVM and Dalvik is a bytecode converter, capable of converting already compiled Jars to Dalvik.

And not to burst your bubble further, but Android isn't even using an X Server, the gui manager / toolkit being also written from scratch... so you can't really rant about how they've used a "free OS"... it was only the Linux kernel

You're not making any sense. This is nonsensical. Assign a string to a List? Huh?

Yes, it's quite possible, through reflection. What's worse though in C# is that the incorrect object can then be passed all over the place as the "type" that it's not until you try to use it. How did you sum this up? Oh yeah: "Huh?".

Delegates? Please, just fancy syntactic sugar for the adapter pattern.

Right, the same way a "Class" is just fancy syntactic sugar for a pointer to a structure amirite? Shit, C does everything we need then, I guess. Ridiculous.

delegate->adapter/proxy method is like waffle -> sugar cone.Class-> pointer is like House -> stick.

But I'm sure those are just minor differences to a stellar intellect as yourself.

I'm getting the sneaking suspicion that you don't know what you're talking about, and that in addition you're defining anything not in Java as not being useful or good, which is a bit circular.

Not quite. Cross platform to MS means Windows and Wince. The point of.NET was never to hide the OS, it was to allow you to write Windows applications that were architecture-neutral, so you can run them on a desktop x86 CPU or a mobile ARM/MIPS/PowerPC CPU. All of these architectures were supported by Microsoft when.NET was introduced, but Wince had the big problem that it didn't run desktop Windows apps, which eliminated a big chunk of the reason for running a version of Windows at all.

It is cross platform (not necessarily cross OS). I've written code in C# that can run on my Windows Mobile phone or on my Windows laptop or as a Web Service or in my SQL Server database or in Silverlight or as a Web App or even on an XBox. That portability works well (as long as the libraries are supported -- see Compact Framework for example). It may not work as well on the Mac or Linux (but Mono does work), but porting code between the platforms I mentioned isn't that difficult (mostly just changing your target in Visual Studio; assuming library support existing on the targetted platform).

Uhm... no..NET is supposed to make it easier for idiots to write code by abstracting a lot of the hard parts from them. Sadly, like every other time someone has tried this it turns out that its actually more difficult to do anything beyond extremely simplistic because learning how to deal with GC issues is actually far more complex than just fucking freeing memory on your own.

The hardware independance is a side effect of compiling to an intermediate language. VB has essentially had this 'feature' its en

>> It was introduced to abstract the OS so that if Microsoft were to also release>> Windows for PowerPC's or whatever architecture,.NET apps would still run,

no way dude. MS.NET was created to take developers away from Java and back onto Windows. Read up on some of the court documents to see what really was the deal. MS.NET came about well after the PowerPC systems(CHRP and PREP ) gone. It was all about stopping a cross platform product from becoming popular and therefore making Windows just another OS and therefore a threat to their #1 profit generator.

I agree it is annoying, but I don't know of another term that describes the community of developers/product vendors, customers, and integrators who use/support a technology. Do you have an alternative suggestion?

Novell paid for patent protection, so Novell shipping Mono is fairly safe. The problem is Ubuntu shipping Mono without patent protection, or Red Hat for that matter.

As for Microsoft playing nice, I doubt that is their motivation, but the EU is basically demanding that Microsoft work on interopability.

The Microsoft/Novell deal really does make sense for both parties. Novell doesn't have to worry about patent lawsuits. They get to go to existing Microsoft shops and tell them that Novell is the best Linux flav