Talk:.NET Framework/Archive 1

Being CLI friendly
One thing that needs to be checked up on is the use of terms that while they might be correct in general, they are not the most valid and natural. It's something I've noticed being a Mono developer now for the past 2 years that I had to work myself away from doing. Some things include calling ".NET compatible" instead of "CLI compatible", or "MSIL" where "CIL" is the most correct term.

A few things from a Mono perspective is that is better to say "Mono, like Microsoft .NET, is an implementation of the common language infrastructure" rather then saying "Mono is an open source implementation .NET" or "Mono is a .NET clone" which I've caught in a bunch of places.

When speaking on the topic of bytecode/IL, compilers, runtimes, and libraries, its good to respect that their is more then one implementation out there. --ZacBowling 04:27, 14 June 2006 (UTC)


 * In Microsoft's own literature, they do not distinguish between "CIL" and "MSIL." This is from |Pro C# and the .NET 2.0 Platform from Microsoft Press:


 * "During the development of .NET, the official term for IL [Intermediate Language] was Microsoft intermediate language (MSIL). However with the final release of .NET, the term was changed to common intermediate language (CIL). Thus, as you read the .NET literature, understand that IL, MSIL, and CIL are all describing the same exact entity. In keeping with the current terminology, I will use the abbreviation 'CIL' throughout this text."


 * So it seems to me that any use at all of "MSIL" may be outdated. Any objections to removing those references? SanchoPanza 15:09, 17 August 2006 (UTC)


 * This discussion is quite old but I'd like to add that I always thought of CIL as the standard and MSIL as Microsoft's particular implementation of the standard. There is nothing preventing other companies from developing their own versions of the CIL standard (and in fact, I think the Mono project is an example of that).  So in theory, the intermediate code that Mono programs compile to is CIL (but not MSIL).  It's a nitpick though and I think people will always understand either term. Harborsparrow 16:53, 8 October 2006 (UTC)

Acronym Soup
This article is absolutely FULL of undefined acronyms and the like.. I think it ought to be cleaned up a bit. —The preceding unsigned comment was added by 216.16.74.151 (talk • contribs) 05:37, August 17, 2005 (UTC)

Compiled binary code
Is it correct to say the the Microsoft Intermediate Language is equivalent to Java Byte codes? How does it look like? --Hirzel —The preceding unsigned comment was added by Hirzel (talk • contribs) 15:39, January 26, 2003 (UTC)

Microsoft Intermediate Language is not the same as Java Byte codes. Microsoft and Java are competitors, each developing their own intermediate codes. —The preceding unsigned comment was added by BenWibking (talk • contribs) 22:24, April 11, 2003 (UTC)
 * The two are not the same, but they are aprox. equivalent to each other. Both are byte code designed to run on a Virtual Machine. ~ Mlk 04:21, 14 Jan 2004 (UTC) ~

Java Bytecode and Microsoft Intermediate Language are conceptually similar but functionally different. .NET never runs in a virtual machine environment and is always JIT-Compiled. This provides a performance increase over an interpreted language, but limits the platforms on which .NET can be used. While JIT compilation is a defacto standard in most modern implementations, it is not embeded into the platform. —The preceding unsigned comment was added by 192.251.30.171 (talk • contribs) 16:07, July 21, 2004 (UTC)

Generics
A further difference comes in with generics. I'm no Java expert, but the Wikipedia |generics article strongly suggests that Java generics involve no new byte codes; that generic methods are compiled to standard methods, and sharing is handled by the compiler. .NET generics, otoh, involve generic CIL ... one consequence of which is that .NET generics can be used with value types.

JScript .NET?
Where is JScript .NET available? --Hirzel 16:33 22 Jul 2003 (UTC)
 * I know this query is a year old, but JScript .NET is included with the .NET Framework, just like VB.NET and C#, and C++. - Mark Hurd 03:44, 4 Jul 2004 (UTC)

vs. Linux?
It has been speculated that .NET is Microsoft's strategic response to Linux.

This is inappropriate as it is speculation, and ill-informed at that. The development of .NET was started after Microsoft realized its DNA architecture was reaching its viable end and a much better development platform was needed. This was partly in response to internal developers using Java, who finding it to be far more productive than C++, wanted to be able to use a more productive environment.

Their first response was to extend Java until Sun sued them to stop at which case their repurposed their technology developed for extending Java and started creating .NET.

Now that it exists, certainly Microsoft will use it and whatever else they can to compete with Linux, but Conspiracy theorists who believe it was Microsoft's response to Linux are giving Microsoft far to much credit. Mike Schinkel Oct 24 2003 —The preceding unsigned comment was added by 216.91.86.37 (talk • contribs) 19:03, October 24, 2003 (UTC)

Domination?
At 09:19, 4 Jul 2004 GMT, an anonymous editor removed to dominate IMHO, as Bil Gates himself says, Microsoft is an example of capitalism, so it think it isn't too POV to say their strategy is to dominate a market (segment), not just be in it. But I'm not changing it back...

Also the whole The Strategy section has now been watered down to not being worthy of a section. However .NET was a massive strategic initiative that Microsoft "bet the company on", so there should be a large amount of facts that can be reported here, even if some are NPOV quotes from publicly stated opinion.

Mark Hurd 03:44, 4 Jul 2004 (UTC) --

vs. Linux?

> It has been speculated that .NET is Microsoft's strategic response to Linux.

It has been wrongly speculated. dot.NET was MS responce to Java. After failing to take control of Java that is ;)

`Microsoft [should] "jump on the Java bandwagon and take control" of its class libraries and runtimes.'

[Chris Jones, vice president of the Windows Client Group Sep 1995]

> Their first response was to extend Java until Sun sued them to stop at which case their repurposed their technology developed for extending Java and started creating .NET.

This is revisionist nonsence of the first order. Sun only sued them after MS tried to hijack Java by producing their own polluted incompatible run time engine. This after failing to buy Java outright. MS even went to the trouble of compelling Apple and Intel to produce a MS only compatible Java platform.

There is no real innovation here. These functionalities have existed in other forms previously. The only innovation is in the name dot.whatever. All they've done is cloned Suns Java environment.

ref: http://www.sun.com/lawsuit/summary.html

http://www.computerworld.com/printthis/2002/0,4814,76406,00.html Microsoft [should] "jump on the ..

Doug Mitchell May 28 2005 —The preceding unsigned comment was added by 193.82.129.66 (talk • contribs) 15:06, May 28, 2005 (UTC)

Broken link to J#
The link to J# uses the # character in the hyperlink, which doesn't work. —The preceding unsigned comment was added by 217.40.72.3 (talk • contribs) 14:59, November 24, 2003 (UTC)
 * fixed ~ Mlk 04:21, 14 Jan 2004 (UTC) ~

Edits in the See Also section
Bevo, I don't think its right to remove entries from the 'See also' section because its already there in the article. A reader may want to skip the contents of the article and go straight to the 'See also' section. We should not force him to read the article when all he wants is to go to a related topic.

See Section. "... in other cases of a link that many readers are likely to follow instead of reading the article..." —The preceding unsigned comment was added by Jay (talk • contribs) 08:05, January 7, 2004 (UTC)


 * That quote from Section was in the text about the special "See also" sections that appear at the top of a few articles, usually to help disambiguate the article's title. Manual_of_Style section mentions "...informal references to related articles that have not been linked from free links in the text are best handled by See also".  I'll try to get some clarification at the Village pump. -  Bevo 14:04, 7 Jan 2004 (UTC)


 * I've posted the question to Village pump to get comment.  Bevo 17:42, 7 Jan 2004 (UTC)


 * The discussion has moved from the pump and is now at the January archive. But whats the conclusion ? Jay 20:02, 14 Jan 2004 (UTC)

Separating Microsoft .NET languages and 3rd party ones?
I think the two should be separated. Does anyone object? ~ Mlk 04:22, 14 Jan 2004 (UTC) ~

.NET history
From the article:


 * The technologies used in .NET were originally developed by Microsoft as their version of Java. When Microsoft decided to end their future use of Sun's Java technologies in 1998 the existing Microsoft J++ (Java) product transformed into the beginnings of the .NET project.

Does anyone have any evidence for this? Neilc 00:34, 4 Sep 2004 (UTC)


 * Not at my fingertips, but a Google search for the phrase "codenamed Cool" shows some speculation about the precursor to C#. Mark Hurd 04:36, 14 Dec 2004 (UTC)

From the article:


 * ..the web server department was creating ASP 4.0 and the Microsoft distributed computing departments were creating what was called "Next-Generation Web Services".

I have a SAMS book called Presenting C# (ISBN: 0-672-32037-1), this was handed out to all attendees at the MS PDC in Orlando in July 2000 at the announcement of .Net. This book refers to NGWS as the "Next Generation Windows Services" and not "Next-Generation Web Services". Can anyone else confirm if the 'W' stood for 'Windows' or 'Web'? Dbnull 19:47, 15 December 2005 (UTC)

.NET examples
The descriptions of .NET all seem to be "high level" abstract descriptions. What are some user level practical applications that can be developed with .NET, and what applications currently exist? —The preceding unsigned comment was added by 68.116.240.252 (talk • contribs) 01:46, December 2, 2004 (UTC)

The entire Media Centre menu in Windows XP Media Centre Edition is built upon .NET Framework 1.0, yet I don't think Media Centre Edition is mentioned anywhere in this article!

old question
I'm uncertain about what .NET is going to become as far as its relevance is concerned &mdash; is it going to end up being ubiquitous enough (for lack of a better word), that at some point in the future, will be pretty much necessary to implement in Windows software development and that you can't avoid using it as a programmer whether you like it or not? —The preceding unsigned comment was added by I run like a Welshman (talk • contribs) 04:44, December 11, 2004 (UTC)


 * Microsoft is integrating it into operating system-like features in the next versions of Windows. However, there will probably always be a kernel of C/C++/Asm unmanaged code. And the Win32 API will take a long time to become unsupported.
 * As a VB6 programmer, I know .NET must be considered for all new development. But Microsoft has so far failed to make the .NET runtime ubiquitious &mdash; too many people still need a 20MB download before being able to execute your app. We (programmers and Microsoft) still need a killer app to get everyone downloading .NET. Mark Hurd 04:12, 14 Dec 2004 (UTC)


 * What's an example of a possible .net application? —The preceding unsigned comment was added by 67.41.171.111 (talk • contribs) 00:34, December 22, 2004 (UTC)


 * The entire Media Centre menu in Windows XP Media Centre Edition is an executable which is written in .NET Framework 1.0 code. Remove .NET Framework 1.0 from Media Centre Edition and then try executing the Media Centre component and see the "Application Error: please reinstall the .NET Framework" dialog.

Please don't use Wikipedia to promote your pet project/product
Removed this section:

"Sources of .NET Data Providers"
 * Microsoft ships providers for a few databases and a Bridge to ODBC drivers for use with the Microsoft CLR, on Windows
 * OpenLink Software ships providers for a number of target databases, including Bridges to other data access mechanisms, for use with either the Microsoft or Mono CLR implementations, on Windows, Mac OS X, Solaris, Linux, and other platforms

Who cares?

KJK::Hyperion 23:25, 16 Feb 2005 (UTC)

Why was this section removed? this article reads like a corporate flyer? &mdash;The preceding unsigned comment was added by 82.196.201.174 (talk &bull; contribs) 2006-03-03 13:41:41 (UTC)

Paint.NET

 * Paint.NET

Link? —The preceding unsigned comment was added by 200.172.115.194 (talk • contribs) 04:06, March 12, 2005 (UTC)

"Back to work, children"
On May 22, at 0 hours, GMT-6 I found the following message:

"This article needs to be re-written. So far, the entry is a buzzword-laden infomercial. Never, ever use the word "paradigm" in an actual explanation of anything. A qualified writer can cut this article in half without getting rid of any actual *content*

Back to work, children.

This page was last modified 19:22, 21 May 2005."

First, I don't know who can post that kind of garbage arguing that "paradigm" can't be used "in an actual explanation of anything", because as the one who posted that unkwnows, in computer science, programming language paradigms, (click me) does have sense.

Poor little, and ignorant, children. I don't really like Microsoft, at all, but, come on... That text? Why?

I checked before posting this, and the page was already restored. Consider this for the log. :) —The preceding unsigned comment was added by 200.91.161.1 (talk • contribs) 06:12, May 22, 2005 (UTC)

Pardigm can be replaced by method in 99% of places with no actual loss of information. It is a very broad word. Watson Ladd 23:42, 23 February 2006 (UTC)
 * Agreed, it is a very broad word. Let's avoid using it. :-) The Rod (&#9742; Smith) 20:24, 24 February 2006 (UTC)

Platform Independent!?
The first line of the article states:

"The .NET Framework created by Microsoft is a software development platform focused on rapid application development (RAD), platform independence and network transparency."

RAD, okay, i'll give you that.

Platform Independent!? What exactly are you calling a "Platform"? Because it is certantly not designed to work on anything but Windows.

And "Network Transparency"? These three things define the focus of the .NET Framework? I don't think so.

What about the garbage collector, or the fact that buffer overflows are a thing of the past with .NET? What about the huge leap from COM/COM+?

This is a horrible article, and I wish someone that knows how would re-write it. —The preceding unsigned comment was added by StevenWright (talk • contribs) 05:38, August 31, 2005 (UTC)


 * See Rotor. According to Microsoft, it currently runs on FreeBSD and MacOS X. Given it's shared-source, those who need it could port it to other platforms as well. And also see Mono. Though it's MS-independent, it's another portable .NET implementation. --tyomitch 23:00, 31 August 2005 (UTC)

Don't forget that there are about 82 or more CPUs that the .NET framework can run on using the compact framework. Windows CE is part of the family of operating systems from Microsoft. There is also a mini-CLR that is coming out (hopefully) that can be used on even smaller platforms allowing ease of development for the non-computer science type of workers such as embedded system engineers, information workers and so forth. —The preceding unsigned comment was added by SoCal Surf (talk • contribs) 2006-04-06 15:10:20 (UTC)

.NET or .net?
The logo clearly says ".net", while it's capitalized everywhere else in the text. Which way is correct? —The preceding unsigned comment was added by 194.226.235.251 (talk • contribs) 08:00, August 31, 2005 (UTC)


 * Good point, but I'm pretty sure it's .NET. See Microsoft's .NET page. -- Chris 13:44, 31 August 2005 (UTC)


 * It's definitely .NET. I checked about two dozen seperate MS pages and every instance of .NET was all caps. :) Foofy 14:53, 31 August 2005 (UTC)


 * It's .NET. Microsoft calls it .NET while keeping .net on the platform's logo. I don't understand why Microsoft have used to confuse people on the matter. No doubt, the platform's definition itself is a confusion. -- Svest 16:30, August 31, 2005 (UTC) Wiki me up&#153;

CLI and CLR
Microsoft and this article both seem to have different ideas of what the CLI is and what it encompasses. I made an illustration based on my understanding of things, but now I'm just confused. As far as I can tell CLI is an all-encompassing standard, while CLR is Microsoft's actual implementation of it. I'd like to make correct my illustration, but it is very hard to understand (which is why I was trying to illustrate it so others could understand easier too. -- Foofy 16:24, 31 August 2005 (UTC)
 * As I said at the section above, MS used to confuse us about everything related to the platform! Your illustration is understandable unless you already know about the CLR. What I suggest is that it would be better to have an illustration of the CLR instead because it is the mechanism itself. Anyway, the article needs both section of CLR and CLI. I'll try to arrange that soon. -- Svest 16:43, August 31, 2005 (UTC) Wiki me up&#153;


 * I noticed there are seperate pages for the CLI, CLR and CIL. It just seems confusing because they all seem to have a different idea and not meaty enough to warrent seperate articles. Perhaps these should be merged into a CLI/CLR article or the main .NET one?


 * Also I'll illustrate anything (Wiki seems to lack a lot of these!] so if you have a better idea of how to show it just hollar. :) -- Foofy 17:06, 31 August 2005 (UTC)


 * Foofy, I am only an amateur ;) with good basic knowledge of the N-Tier Architecture in general and of .NET in particular. I appreciate your efforts especially that you are a new wikipedian and keen to bring your knowledge over here. Definetly, we need that. Have a look at this article and you'd tell me I am right.
 * Well, both CLI,CLR, and CIL should have separete aricles. This is an encyclopedia and the more precise the things are the more they deserve an article separately. Therefore, they all need more contributions. This article of .NET cannot go through them all in detail.
 * What I'd suggest is that we would create a Wikiproject to arrange all what should be done on the matter. If you need any help whatsover or ready to participate in the project, just Wiki me up&#153; and we'll do it. -- Svest 19:51, August 31, 2005 (UTC)


 * I understand, though if they don't get much bigger I hold that they should probably be bunched into the CLI article, 'cause the context would really make things clearer. I'd like to help out on them however I can, I was reading up on things so I think I have a better idea of how they fit together, now just need to dig in and clean up the articles. :) -- Foofy 01:04, 1 September 2005 (UTC)

Vista, 70%, generics
I'd like to see some sources for this edit. What particularly interests me is whether "large portions" of Vista are written in C#, and the repetition of the 70% code reduction as though it were absolute fact. Sure, it's touted, for example, at Visual Studio Magazine and Microsoft's own website but it strikes me as somewhat unencyclopedic.

Also, is it worth having both C# and C# 2.0? They're essentially the same, aren't they? And what is this about "The inclusion of Generics into the core of the .NET CLR has prompted many languages to update."? What languages? Update what? What kind of generics?

-- Deewiant 20:57, 5 December 2005 (UTC)

That 70% statistic was a mistake. Its more like the unmanaged code portion of Vista. Sorry, but I don't have a reference now Watson Ladd 00:04, 21 March 2006 (UTC)

"Reduction of code developers write by 70%."
True or not. This sentance is simply not clear. Should be rephrased. Whaa? 01:13, 17 December 2005 (UTC)

I am a .net developer. Please remove the sentence "Reduction of code developers write by 70%.". The statement is probably true only in some rare situations. &mdash;The preceding unsigned comment was added by 165.21.83.230 (talk &bull; contribs).
 * The above comment was made February 1, but I had already removed the referenced sentence (on December 23 in this edit). The only remaining reference to "70%" is the sentence that reads, The design of ASP.NET 2.0 followed the overall .NET redesign task of allowing developers to write 70% less code as compared to what would be required using .NET 1.x. That sentence seems quite clear and NPOV to me, as it discusses a redesign task. Please either explain further if you still have any rewording suggestions, or better, be bold and fix it yourself. :-) The Rod 15:30, 1 February 2006 (UTC)

70% less code for what tasks?

Watson Ladd 23:40, 23 February 2006 (UTC)


 * Watson Ladd, I don't understand your question. Are you suggesting that the article identify a specific set of which developerment tasks that Microsoft's design team targeted in redesigning ASP.NET 2.0? The Rod (&#9742; Smith) 20:20, 24 February 2006 (UTC)

Large portions of Vista are not based on .NET. Refer to http://www.grimes.demon.co.uk/dotnet/vistaAndDotnet.htm —The preceding unsigned comment was added by 208.20.220.72 (talk • contribs) 2006-03-23 21:19:03 (UTC)


 * The one new technology associated with .NET that probably does save a lot of work is the Windows Designer capability for C# in Visual Studio. It provides a graphical tool that allows developers to drag visual (and other) components onto forms, and behind the scenes, the Windows Designer then generates a ton of code that declares and defines and places all those components in the form container.  That truly is a big labor saver, but it was already present in Visual Basic since the early 1990's, so it was only new in C# and the new aspect of it re: VB was that the generated code was now visible to programmers if they really want to see it.  Some IDE's for Java also do this (i.e., NetBeans) but Eclipse does not. Harborsparrow 16:53, 8 October 2006 (UTC)

What is the justification for listing ... as a .NET language?
Hi, 68.68.2.115. Good comments at the main article page!. Please note that I haven't removed your edits but formatted them. Comments are expressed in the talk page; here. What I did is leave the comments there as a note for editors so whenever someone edits she/he would read the note. What I did is a kind of Wiki Hungarian notation. Please also note that I can't judge the content as I have only little knowledge about Lisp and Forth. Cheers -- Svest 04:30, 18 December 2005 (UTC) Wiki me up&#153;


 * In the article (commented out by FayssalF) 68.68.2.115 asks why Forth and Lisp are listed, requesting links.


 * These lists are not definitive, and none are necessarily ready to be linked from the main article, but I'll let others decided for sure.


 * Mark Hurd 05:42, 18 December 2005 (UTC) (signed after FayssalF's comments, which I moved above my 'response')

Forth

 * Delta Forth .NET

Lisp

 * RDNZL - A .NET layer for Common Lisp
 * L Sharp .NET
 * DotLisp

What is it?
The first part reads like a lot of marketing speak. What is it? --Gbleem 21:56, 19 December 2005 (UTC)

Merge .NET Reflector?
Ceyockey suggests to merge .NET Reflector here.

However, .NET Reflector is a 3rd party utility that is not related to Microsoft. It may not be worthy of an artcle of its own, but if to be merged, it should be into an article (or section) listing common 3rd party .NET development utilities. - Mark Hurd 01:50, 22 December 2005 (UTC)
 * This sounds quite reasonable. I've removed the two merge templates based on your input. Courtland 03:51, 22 December 2005 (UTC)
 * Yes, I agree and it appears that template was never removed, so I have done so. Gnj 19:41, 30 January 2006 (UTC)

Outdated info
Removed information that is no longer relevant or has been changed (such as the express versions of Visual Studio being free). Rexmorgan 00:26, 2 January 2006 (UTC)

Express version are free. —The preceding unsigned comment was added by SoCal Surf (talk • contribs) 2006-04-06 15:13:11 (UTC)

Security without a sandbox?
By definition a sandbox is any method for containing potentially malicious code. How is .NET different?

Watson Ladd 23:39, 23 February 2006 (UTC)

The article content to which the above refers is the following:
 * Security - .NET allows for code to be run with different trust levels without the use of a sandbox.

Although .NET contains security mechanisms for safely running programs, it is much more than a sandbox. To emphasize that, I added the word separate:


 * Security - .NET allows for code to be run with different trust levels without the use of a separate sandbox.

Fix it if it still seems unclear. The Rod (&#9742; Smith) 20:32, 24 February 2006 (UTC)


 * So, different privilage levels in the same system? I think that's a sandbox. Watson Ladd 00:05, 21 March 2006 (UTC)
 * The original comment above asks, "How is .NET different [from a sandbox]?". That suggests either that the article should differentiate .NET from a sandbox or that it should declare .NET to be a mere sandbox. I addressed the concern by rewording the text to say, "without the use of a separate sandbox." If your new comment ("I think that's a sandbox") intended to suggest that the article should emphasize even more that .NET contains sandbox functionality, please suggest better wording. If instead you intended to suggest that the article should claim that .NET is merely a sandbox, consider the fact that .NET contains much more functionality than a mere sandbox. The Rod (&#9742; Smith) 17:47, 23 March 2006 (UTC)

NPOV
" the truth is " ? This does not sound like NPOV to me. "Truth" is a subjective thing. --jonon 01:47, 11 March 2006 (UTC)

To review the ethical and legal definition of the word "truth": To review ethics, please refer to http://www.acm.org/serving/se/code.htm Legal discussions: http://www.cybercrime.gov/ipmanual/08ipma.htm Truth is defined as: Conformity to fact or actuality.

A statement proven to be or accepted as true. Sincerity; integrity.

Fidelity to an original or standard.

So it appears that truth is not subjectivie, and if the statement is not true about the NPOV, then either it needs to be proved to be true or proved to be not true. Your statement has done neither and has not furthered the development of this body of work. It would be good if you could extend your statement to prove why the statement is not true, or at least challenge the statement. —The preceding unsigned comment was added by SoCal Surf (talk • contribs) 2006-04-06 15:39:58  (UTC)


 * I also object to the statement that "the truth is that many of the teams working on .NET initially set out to create COM+ 2.5. ". "Truth" is too strong here - I don't think that this is "proven to be accepted or true".  If this assertion cannot be verified, it should be removed. If there is some but not absolute evidence, the statement should be softened. Leotohill 02:16, 11 April 2006 (UTC)

More POV moans
I've add POV-section to section 3.3 (.NET Framework 2.0); I find '.NET 2.0 is a redesign of not only the technology, but also the model of Microsoft's .NET agenda. While .NET v1.x was considered more of a Rapid Application Development (RAD) model and was often compared with Sun's Java. C# 2.0, part of the .NET 2.0 model, is now compared more closely with C++, so much so in fact, that large portions of Microsoft's Windows Vista are written in C# and the .NET framework ' as opinion, not fact. Computerjoe 's talk 17:07, 22 March 2006 (UTC)

Origin of the name
The first thing I wondered when I heard of microsoft's .NET (and many others must have with me) was where the name came from. But I don't see anything on it in the article. Is this just another theft by microsoft, in this case from the popular TLD, or is there a reason for the name? DirkvdM 17:11, 4 April 2006 (UTC)

From what I heard the .NET was part of a total marketing campaign that included Windows 2003 server, SQL 2005, Office 2003 and other related products, as well as a new approach to licensing. The .NET products were to be a family of products that was to be marketed in a specific way. Since the campaign was global in nature the messaging became confused due to cultural and regional differences. Eventually it was modified into a more regional and cultural facing marketing. Only one product continues with the .NET in it's marketing: Visual Studio kept the extension since it met it's goals and developers seemed to like it. The name does appear to have come from the TLD: .NET, and since that is not a "business" mark, then it would not be a "theft" in any ethical mode of thinking.

In the business world, ethics and law go hand in hand, and the term theft is well defined. You might want to take a look at the following sites to review the ethical and legal definition of the word "theft": To review ethics, please refer to http://www.acm.org/serving/se/code.htm Definition of intellectual theft: http://www.cybercrime.gov/ipmanual/08ipma.htm —The preceding unsigned comment was added by SoCal Surf (talk • contribs) 2006-04-06 15:31:09 (UTC)

Java advocacy

 * - Why developers should not make programs that need .NET Framework to run on Windows.

Isn't it POV to link to a Java advocacy blog post on a .net article? —The preceding unsigned comment was added by 132.203.122.76 (talk • contribs) 19:28, April 11, 2006 (UTC)

Is it true, as stated in the article, that "Java EE provides much more functionality than the .NET framework and other Microsoft technologies"? --Carlo.milanesi 08:32, 20 May 2006 (UTC)

Rewrite of opening section April 2006
I have completely rewritten the opening section. My goal was to make it more accessible to the non-technical reader while simultaneously increasing relevant content. Leotohill

FayssalF, thanks for the many links you added. I think I've also improved the sentence you added about 2.0. I identifed when "current" is (April 2006), and removed the part that says it supplants "two major previous versions: 1.0 and 1.1". By Microsoft's naming conventions, and those described on the "version" article, 1.1 was not "major". I do have my doubts that this version information belongs in the opening section, but don't feel that strongly about it, so won't object. Leotohill 18:27, 15 April 2006 (UTC)

Platform Independence
The following appears in the Description section:


 * Because of the inherent nature of the .NET Framework, through its use of an intermediate language, it is platform independent. While the consensus is that the .NET Framework is only available for the Microsoft Windows operating system, this is inaccurate. Microsoft provides the Shared Source Common Language Infrastructure, a version of the CLI, for Windows, FreeBSD and Mac OS X.

But in the section .NET vs. Java EE we find this:


 * .NET is currently only fully available on Windows platforms, whereas Java is fully available on many platforms. 

We should clear this up. Is .NET platform independent, or isn't it? Brian Tvedt 01:35, 19 April 2006 (UTC)


 * It seems clear enough to me -- MS wishes to promote .NET as cross-platform, and accordingly makes available a handful of obsolete (version 1.0 only), dubiously-useful (almost no libraries), text-only tools for two other OSes (pointedly omitting Linux). Thus the first claim is strictly correct.  But, so is the second claim that .NET is currently only fully available for Windows: this is in marked contrast with Java, which is variously supported on dozens of platforms by multiple JDK vendors and fully supported by Sun themselves on three platforms (and that support includes GUI, OpenGL, audio, database access, crypto, printing, J2EE, and everything else).
 * No nontrivial .NET application will run on anything but Windows, and we shouldn't let Microsoft get away with implying otherwise. --Saucepan 04:26, 19 April 2006 (UTC)


 * The platform independence of .NET stems from the fact that its specification is an open standard defined by the ECMA. Anyone can implement the ECMA specifications to port .NET to a new platform. The Rod (&#9742; Smith) 01:03, 20 April 2006 (UTC)


 * The only mention of ECMA specifications in the article is CLI and C#. Are you saying that .NET consists solely of CLI and C#?  If so, that should be said clearly in the article.  As it is, the article has this:
 * While the original model of .NET was that of a general foundation (.NET framework) with three primary pillars (ASP.NET, Windows, and Web Services)…
 * If Windows is a “pillar” of the .NET Framework, then of course the .NET Framework can by definition only run on the Windows platform. I’m not trying to start an argument here.  I came to this article to found out what .NET is.  If it's just C# and CLI, then perhaps we don’t need this article, as Wikipedia already has articles on both of those topics. If there are other components that make up .NET, and I suspect there are, those components should be listed and clearly described, with reference to the corresponding specifications. Brian Tvedt 01:46, 20 April 2006 (UTC)


 * C# is NOT part of the .NET framework. Leotohill 02:42, 20 April 2006 (UTC)
 * I've revised that paragraph to address these concerns. Hope you like the rewrite. Leotohill 03:09, 20 April 2006 (UTC)
 * I can't speak for Brian Tvedt, but the revised paragraphs look fine to me. Thanks for clearing this up.  --Saucepan 18:16, 20 April 2006 (UTC)
 * Looks good to me. Brian Tvedt 01:55, 21 April 2006 (UTC)

A couple possible issues
1) Wasn't part of it Shared source? 2) It says it is a "component of the windows operating system" which is ambigous and not really 100% correct - it isn't even installed by default in most windows installations. It is more of generic runtime like Java. Even more, it isn't even windows-specific as I *think* is a more of a specification (see Mono). It is as it always was T 18:53, 18 May 2006 (UTC)


 * In new versions of XP, as well as Vista, the .net Framework is included. It is not technically part of the OS, but it is as far as most users are concerned. The CLR/CLI is a standard, not the .net Framework. Mono is a re-implementation of the framework which is compatable, not an actual re-deployment, so the actual .net framework IS windows specific, even tho .net apps can run under mono on linux. Gaijin42 19:01, 18 May 2006 (UTC)


 * re your item 1: Microsoft released a Unix version of some of the framework's source code under an open source license. Does that have some bearing on the accuracy of the article ?
 * re 2: The boundaries of the operating system are a bit vague (For example, Microsoft argued in court that Internet Explorer is part of the OS, but was unconvincing.) A good case can be made for the claim that the .Net framework is indeed an OS component.  First, it's installed in system folders (C:\WINDOWS\Microsoft.NET).  Second, some MS pages describe it as such.  For example, at   http://msdn.microsoft.com/vstudio/tour/vs2005_guided_tour/VS2005pro/Framework/NetFrameworkDesignGoals.htm is "The .NET Framework is an integral Windows component..."   Leotohill 21:23, 18 May 2006 (UTC)


 * As of Microsoft's latest CD installers for Win XP Pro, the .NET framework is not installed by default and must be obtained later through Windows update. In Windows Update, .NET is not flagged as Critical but is clearly treated as optional.  Seems to me to be clearly separate from the operating system per se.  Other OS's do install Java by default (i.e., Mac OS X 10.4.7). Harborsparrow 16:52, 8 October 2006 (UTC)

Rewrite of May 2006
move "Versions" section to the end. Removed "History" section and replaced it with sections "significance" and "rationale" Renamed Description section to "Design goals and principle features'. This section will be my next target for modification. CHanged  "Microsoft .Net" from a redirect to a topic. Let's see how this flies.  Hope you like it. —The preceding unsigned comment was added by Leotohill (talk • contribs) 02:54, May 28, 2006  (UTC)

Neutrality Dispute: Article Really Could Use a Clear Criticism / Weaknesses Section
On the whole this article seems very biased and really doesn't get across the many theoretical and practical computational problems the .Net approach introduces. One way to balance things out would be to add an explicit "criticisms" section. This would also make the article more informative. For example, .Net pushes a very specific design paradigm so that applications and drivers often require the separate installation of .Net components to run (see some recent ATI drivers for example). This discourages the design of portable applications that can be run without seperate installs and clearly is meant to increase the dependability on MS. The learning curve and overhead for developers has also become steep compared to traditional languages. Perhaps someone who is a computer scientist familiar but not enamoured with .Net can add a section that questions the paradigm in the larger context of software design. For comparison see how clearly the criticisms of C are listed. —The preceding unsigned comment was added by 70.53.121.107 (talk • contribs) 04:15, June 22, 2006 (UTC)


 * If you want to provide verifiable, properly-sourced criticism, then by all means, add it in. However, the lack of such information doesn't mean the article has a problem with neutrality.  This article does a good job of describing the basics of what the .NET Framework -is- in an unbiased fashion.  Any new information should also be presented without bias.  Only in cases where the information is presented in a non-neutral fashion should we make use of the NPOV tag.  Warrens 17:07, 22 June 2006 (UTC)


 * As other have pointed out repeatedly this article mostly sounds like Microsoft marketing speak. The article needs to alert readers that .Net may be having an enormous influence (not all good) on how people view, develop and distribute software. This article really doesn't get across the problems or opposition to the approach which makes the article very far from neutral. I still think it needs a POV tag to warn readers. For now I'll just add a starter criticisms section based on the above in the hopes that others will help make it more substantial and track down sources. Let's see how that goes... —The preceding unsigned comment was added by 70.53.121.109 (talk • contribs) 22:03, June 22, 2006 (UTC)


 * Please log in and sign your posts, it would make communication much easier. I think you need to identify specific items that you think are NPOV. Your own talk comments are very POV ("enormous influence (not all good)") - If you are going to start a controversial section (which this is sure to be) the onus is on YOU to provide sources, not on everyone else. The current article is presenting facts. There may be consequences to those facts, but if they are good or bad is opinion. You will need to back up those points. Gaijin42 22:10, 22 June 2006 (UTC)


 * Flagging that there is a problem is a legitimate Wikipedia contribution. Logging in is not a requirement, nor should it be. Many who have concerns over .Net won't spend there time looking at, let alone working on, this article. I was clear that this is a perspective issue by labelling it "criticisms." This entire article is in its infancy. For example, note that the "significance" section manages to stay up without any sources. How is it that non-MS perspective gets watered down or disappears almost instantly... isn't that alone a sign that there's a biased tendency in the editing? Instead of jumping to delete the criticisms, how about working on improving them or just let them be, they will develop in time. —The preceding unsigned comment was added by 70.53.121.109 (talk • contribs) 00:07, June 23, 2006 (UTC)


 * I've removed the entire section. You completely failed to provide sources for your assertions.  You are not a primary source.  You may not create information, you may only cite it.  Please ensure you understand this core philosophy of Wikipedia before contributing, or you will very quickly find yourself frustrated by having stuff you've written be removed.  Also, there were some glaring factual errors in the content you provided... applications can absolutely be "portable" with .NET, so long as the framework is installed once.  There's nothing about .NET that inherently works against free software development, indeed, there is a significant amount of open-source software written for .NET, not to mention the existance of Mono, DotGNU, Rotor, and other free, open-source implementations of the .NET framework.


 * I really strongly encourage you to read Verifiability and Neutral point of view, as they provide valuable guidance on how to contribute good information to Wikipedia. The problem here isn't that the .NET Framework hasn't garnered criticism (it certainly has)... the onus is on editors contributing criticial content to provide verifiable sources for the claims they are making.  The fact that other editors in the past haven't done a good job with this in this article doesn't excuse you (or any of us) of this responsibility.  Warrens 00:57, 23 June 2006 (UTC)




 * Again, the criticism is deleted and all the other unreferenced information is allowed to stay, why is that? At least the criticism is identified as such. Consider for example the following assertions in the significance section, none of which have any citation (internal or external) whatsoever:


 * - "Assuring the availability of those features to all programs written in any of the .Net languages."


 * - "Providing to programmers a common means of accessing those features, regardless of programming language."


 * - "Guarantees of a common behavior, regardless of programming language."


 * - "Freeing the creator of programming languages and tools from the need to implement complex features"


 * - "Allowing the operating system to provide some guarantees of program behavior,"


 * All of the above is opinionated POV and unsubstantiated MS rhetoric. Has .Net provided programmers a common means -- what if you're working under GNU-Linux? Has it been proven to "free the creator" and increased creativity? Is program behaviour more stable than in other approaches? Where is the independent research and citation on all this?


 * In contrast, if you look carefully at the deleted criticism entry you will see that it forwarded concrete examples. Specifically, it cited several Wikipedia entries and named products that could help a reader follow up and substance the claims. For example:


 * 1. Rather than reiterating and referencing all the problems developers encounter when using .Net I referred to a specific example by linking to the Visual Basic .NET entry on the topic. (If you have a better internal or external citation please enter it, don't just delete the issue).


 * 2. Regarding drivers, I explicitly mentioned the example of ATI Catalyst drivers that require a separate .Net install. This is a fact that can easily be established at the ATI web site. If I was writing a personal opinion or review I would have described the tedium of (a) going to MS web sites (b) needing to agree to licensing info (c) downloading (d) separate install (e) rebooting (f) adjusting the firewall, etc. All the criticism said is that it "require separate downloading and installation". Is this incorrect?


 * 3. To substantiate that .Net discourages "Portable application" I referred to the article defining "portable applications". The opening of that article defines "portible application as: "... software programs that are not required to be "installed" onto a computer's permanent storage device to be executed, and can be stored on a removable storage such as a USB flash drive and used on multiple computers." Then you say: "applications can absolutely be "portable" with .NET, so long as the framework is installed once". It seems to me you ignored both the issue and the citation. The whole point is that you shouldn't require an installation, not even once! Why? For one thing you may be allowed to run programs on the system but may not have the admin privileges required to install .Net. There are many other reasons why the installation of a separate component (even once) can be problematic. It seemed to me that the simplest way to get that across was to cite the "Portable application" article. If you have a better internal or external citation please enter it, don't just delete the issue as if it doesn't exist.


 * 4. You say "There's nothing about .NET that inherently works against free software development..." and then refer to the various attempt at creating alternative open-source implementations of the .NET framework. Please read the article on Free Software. Would a Free software advocate developed in .Net? Maybe, but .Net is not free software and precisely requires alternatives to allow anything developed in the framework distributed as such. If an application requires .Net to run you either need to install .Net which is non-free software or find an alternative to .Net.


 * Please give your fellow writers the benefit of the doubt and consider the citations... don't just revert. If you still disagree with the above then correct the wording or just give time and space for others to improve the criticism section. Singed, the Advocate for Free, Open and Portable Software (AFOPS) ;) June 23, 2006 —The preceding unsigned comment was added by 74.12.146.154 (talk • contribs) 04:28, June 23, 2006 (UTC)




 * Given that you've made absolutely no effort to provide sources in the article for your claims, I've removed it a second time. It's really quite simple:  First, the criticism given in the Visual Basic.NET article are specific to that particular language and have absolutely no bearing on the .NET Framework as a whole.  Second, the ATI Catalyst drivers are not written using the .NET Framework, only the optional Catalyst Control Center is, so stating that ATI drivers require the .NET Framework is untrue.  Third, statements along the lines of "increased developer dependency on Microsoft" are utterly ridiculous to the point of being laughably ignorant -- ehh, hello?  Whether you are writing for Win32 or the .NET Framework doesn't matter: you have a 100% dependency on Microsoft!  How can .NET be *more* dependent on Microsoft than Win32?  Please, think this through, because the argument makes no sense.  Fourth, there is absolutely nothing about the .NET Framework, in and of itself, that discourages the creation and distribution of portable applications.  Yes, you need to have the .NET Framework installed, but the Framework comes with Windows Server 2003, XP Tablet Edition, XP Media Center Edition, and it will ship with Windows Vista... plus, many OEMs ship Windows with the .NET Framework already installed; therefore, a claim that a separate installation is required isn't actually true in all cases.


 * I'm going to remind you, again, that you need to provide sources for your claims. Wikipedia isn't the place for you to publish your personal opinions or viewpoints on a subject.  Get some published, reliable sources external to Wikipedia that can be used to characterise your claims.  You aren't going to get away with making statements like "the learning curve and overhead for developers in many of Microsoft's .NET Languages is steep compared to traditional programming languages", because you are trying to make an assertion of truth where it is absolutely not Wikipedia's place to do so.  Warrens 05:45, 23 June 2006 (UTC)


 * Warrens, the points you make should be used to edit the criticisms not make believe there's no issue. First, although I'll agree that the constant changing of required OS components predates .Net, the changes to .Net languages, including Visual Basic.Net are clearly a consequence of the move to the .Net framework. Many of the concerns brought up came directly when MS imposed it on Visual Basic.Net developers. Stop making believe these are independent events.


 * Second, regarding ATI if you install the new drivers and want to make critical adjustments you'll need to install the Catalyst Control Center which requires .Net. See their web page. If you want to change the criticism section to more accurately reflect the situation, no objections, just don't delete it wholesale.


 * Third, don't be so quick to ridicule. I manage several Win32 machines (Win 98, 2k, XP, WinXP Pro SP2) that have been running for years just fine. With the exception of the multitude security updates I can largely ignore MS. Why should updating the driver control centre or simple program install, require me to agree to new Microsoft terms, start a new download, implement a significant install, and retest security? You don't see this as a problem, maybe others do?


 * Fourth, read and try to understand the philosophy behind portable applications -- it means NO INSTALL whatsoever. It means you can plug a USB in to millions of windows machines that don't have .Net Installed and be up and running. What if other vendors tried to use the .Net framework upgrade as proof that a single install is no big deal... in fact, that's precisely how I got to this article!!!


 * Again, why don't you edit out all those sections that describe the benefits of .Net that don't have sources.... I think you'll find there won't be much left of this article if you do! Try and make the criticism better, if you don't know how or unwilling to admit that there are concerns just leave it alone and let other fix it. AFOPS, June 23, 2006. —The preceding unsigned comment was added by 74.12.146.154 (talk • contribs) 07:16, June 23, 2006 (UTC)


 * As the author of the "significance" section (it is largely unchanged since I created it) I did strive for verifiability. The only assertion I've made that might be arguable is "For software developers, the .NET framework is one of the most significant changes to the Windows platform since its introduction.", but I think I stand on pretty firm ground there.  If you disagree with any of the assertions in the section,  please post here and I'll attempt to verify.


 * I'm ok with a "criticisms" section but your posting had some problems. For example:


 * "Given the complexity of .Net, the learning curve and overhead for developers is steep compared to traditional programming languages." The framework is not a programming language.


 * "Applications and drivers developed under .Net often require separate downloading and installation of .Net components to run..." All .Net applications and drivers require the framework. If that's what you mean to say, then just say that.  If you mean that .Net apps and drivers are more prone to requiring additional components (other than the fw) you'd need to give several examples, or describe some .Net design point that makes this so.


 * I think it is a valid criticism to say that the requirement for the .Net framework impedes deployment of some applications, as users may be unwilling or unable to install the framework.
 * Leotohill 03:22, 23 June 2006 (UTC)


 * To Leotohill, thanks for the constructive comments. I'll try and incorporate before restoring the criticism. Cheers, AFOPS June 23, 2006 —The preceding unsigned comment was added by 74.12.146.154 (talk • contribs) 04:28, June 23, 2006 (UTC)


 * AFOPS, here is the response to your specifics about the "Significance" assertions.


 * - "Assuring the availability of those features to all programs written in any of the .Net languages."
 * This refers to two kinds of features. First, there are the features specified by ECMA-335 (the CLI standard), such as garbage collection and type safety. Since the .NET CLR implements this specification, all these features are available to all .NET languages. The second kind of feature is those provided by the class library (the BCL) of the framework.  Since all .NET languages can access the BCL, all these features are available to all .NET languages.


 * - "Providing to programmers a common means of accessing those features, regardless of programming language."
 * Regardless of programming language, the features of the CLR are available by definition, and the features of the BCL are available through a single API. I don't think that this is disputable, but if you can give a counter-example I'll listen.


 * - "Guarantees of a common behavior, regardless of programming language."
 * A program that calls System.Windows.Forms.MessageBox is guaranteed a certain look and feel and performance, regardless of the calling language. Contrast this with Java, which would call whatever Java method does this and VB6, which would invoke something, vs. Powerbuilder, etc.  Each is calling a routine in its own library, which could give different results than the seemingly equivalent routine in other languages.  Since all .NET languages could call the same method, all would get the same result.


 * - "Freeing the creator of programming languages and tools from the need to implement complex features"
 * None of the .NET language compilers need to implement garbage collection, or CPU-specific optimizations, or buffer overflow checks, for example.


 * - "Allowing the operating system to provide some guarantees of program behavior,"
 * This, from the "Permissions" section of the .NET Framework Developer's guide: "Code can request the permissions it either needs or could use. The .NET Framework security system determines whether such requests are honored. Requests are honored only if the code's evidence merits granting those permissions. Code never receives more permission than the current security settings allow based upon a request. However, code will be granted less permission based upon a request. The runtime can grant permissions to code based on characteristics of the code's identity, on the permissions that are requested, and on how much the code is trusted (as determined by security policy set by an administrator). For more information about how the runtime decides which permissions to grant, see Security Policy and Permission Grants. Code can demand that its callers have specific permissions. If you place a demand for a certain permission on your code, all code that uses your code must have that permission to run. "

Leotohill 05:23, 23 June 2006 (UTC)

Continuing POV / neutrality concerns


 * Leotohill, thanks for taking the time to reply. I don't doubt that the MS documentation claims all these nice advantages but the article and the response confuse mechanisms with the actual results! To support the claims to improvements, it's not enough to list the mechanisms, you need to cite independent studies or specific applications that that show that the move to the Framework has brought about the promised improvements. For the moment, let's assume that a reader can carefully and positively verify all the technical points you bring up, it doesn't show that the resultant code will actually be more creative, secure, portable, etc. which is the claim at hand! For example, what if it turns out that the introduction of these well-intentioned mechanisms result in a situation where the only individuals willing to approach .Net development are those who buy in to this monolithic corporate development philosophy and that even these developers get fatigued by all the .Net acronyms and years of repeated upgrades, is it not possible that the code could conceivably end up being narrow and unimaginative??!!! Either way, no citation in the article or in your answer speaks to the actual results. This is the social programming dimension that MS often misses. Anyway, my original point was that the flowery descriptions of .Net greatness had no citations and were left largely unedited for months while the criticisms, that actually included specific examples and links, were deleted within hours or less.


 * Moving on to the criticism section, despite the clearly verifiable issues it has once again been deleted within an hour. The article is clearly being written by people who are .Net fans (all fine and good) but can't imagine the limitations that the framework imposes:


 * (a) The proprietary nature
 * (b) The inherent limitations and lack of flexibility in a monolithic framework
 * (c) The overhead and time required to getting the simplest Microsoft.NET Language installation up and running
 * (d) The learning curve
 * (e) The continued dependence on MS
 * (f) The additional install requirements for drivers and applications written for MS and its impact on portable applications (in the technical sense already cited in above comments).
 * (g) The limited official support for development beyond the windows OS


 * I will step back for a bit in the hopes that someone else can deal with the POV issues. Sorry, but those of you currently editing out the criticisms should also step back. You just don't get the broader issues. As it stands, this article is not an encyclopaedic entry nor one that would enlighten anyone outside the .Net fans circle. The article is a collection of technical jargon and self-referential MS marketing speak that is allowed to sit unquestioned for months. The criticisms may need some work, but common, give them a chance to develop!!!


 * The suggested starter text for the criticism is:


 * CRITICISM


 * Given the complexity of .Net, the learning curve and overhead for developers in many of Microsoft's .NET Languages is steep compared to traditional programming languages. Development issues include compatibility with earlier versions of Microsoft programming languages and increased installation overhead for earlier versions of windows. For an example of development, compatibility and installation concerns with specific .Net languages see the controversy section in the Visual Basic .NET article.


 * Applications and drivers developed under .Net often require separate downloading and installation of .Net framework in order to run (for example see recent ATI Catalyst video drivers). Users may be unable or unwilling to install the framework and the continued need to update the operating system increases user and developer dependability on Microsoft. Also, the additional installation requirements discourages the design of portable applications that can be run directly off portable media on any machine without further installation on a host computers. In general, the largely proprietary nature of the technology is seen as antithetical to  free software development principles.


 * Good luck, AFOPS, June 23, 2006 —The preceding unsigned comment was added by 74.12.146.154 (talk • contribs) 07:35, June 23, 2006 (UTC)


 * AFOPS - regarding your "learning curve is steep" assertion, you'll need to provide some verification of that. I don't see it. A Windows "Hello world"  is no harder in C# or VB.Net than it is in Java, and probably much easier than in C or unmanaged C++.   Your criticisms about dependency on Microsoft and proprietary technology could and should be generalized to the statement "As with all Microsoft Windows applications, .NET applications are seen as antithetical to  free software development principles." (or something like that).  With tongue in cheek, I could suggest that you make a template of that statement, and attach it to all articles about any proprietary software.  I make this suggestion half in jest, to emphasize that the position is clearly a POV.  But if you or someone wants to make that statement in this article, it should be made clear that it applies to all proprietary sw and not just .NET.


 * Regarding your complaint about lack of references in the article: I don't think that it's necessary that every assertion of every article contain an explicit reference for verification. That would be extremely tedious to write and to read.  It is only necessary that on request, the verification can be produced.  I think I've done that, by reference to the ECMA standards and implicit reference to the .NET documentation.

Leotohill 15:26, 23 June 2006 (UTC)


 * OK, try the following test, hand over a shrink wrapped box of any .Net development tool to a novice (or even a professional). See how long it takes them to install the software (reboots and all) and write that first line of code (let alone compile it). The point is that there are (or can be) ways of developing applications that are just as secure and effective without being heavy handed or requiring all these additional OS tentacles that limit where they can run. Consider how nice it might be to produce a "hello world" and create and EXE that will run without the need for an additional 20Mb download and install on target systems. Note also that an EXE produced by most other development platforms will run on windows systems from 10 years ago and probably on systems 10 years from now.


 * Lets face it, programming in a Microsoft .Net language is like driving around in a Zamboni, it’s too big and heavy to get you anywhere and you end up stuck doing circles in an arena but you don’t notice because everything is so nice and shinny!


 * Regarding references, I wasn't all that concerned that the rest of the article didn't have any (though it wouldn't hurt). My point, yet again, was that the pro .Net marketing speak was allowed to stay up without references and completely unquestioned while criticisms are deleted almost immediately. June 24, 2006, AFOPS —The preceding unsigned comment was added by 74.12.144.12 (talk • contribs) 15:11, June 24, 2006 (UTC)


 * Look at Mono development platform and then come back. .NET doesn't lock you in to Windows, unless you use APIs that are not part of the .NET framework, such as System.Windows.* -- using Gtk# for example, one can develop cross-platform .NET-compatible applications that will run on Linux under Mono, and on Windows under Microsoft's CLR.


 * I partially agree with the Zamboni analogy, except you're missing one part of the picture. C programs still require a pretty massive library to function.  Granted, this library is installed on every major operating system, but what if a .NET platform comes with Windows, Linux, and OS X by default?  Eventually it will be part of Windows Vista, and Linux users can typically install it with minimum hassle through their favorite packaging system (e.g. on Debian Etch,   gives you a CLR and framework assemblies). --Chris (talk) 15:36, 24 June 2006 (UTC)


 * Hi Chris, the reference to the Register article (currently ref #3) highlights the potential risks of counting on Mono -- namely, it could actually EXPAND Microsoft's hold and limit development.


 * As for C, that's a good place to start. I can still run those stand alone EXEs that ran in 1990 and will likely be able to run them a decade from now. Having the ability to produce self-contained binaries that will hold up in time is very, very important.


 * With .Net we will not have this stability, it's really a moving target. Consider how Microsoft dealt with visual basic. You constantly had to track down the right libraries (where did I put that VBRUN300 dll???). Microsoft is now doing the same thing with .Net just at a much larger and scarier scale! There's no reason to believe that the framework will be included with Vista and then left to be. To run the latest .Net based applications you will have to call the home ship, agree to the terms, download, install and reboot. You have to hope that what runs with .Net 1.1. will run with 2.0. Who knows if we'll have to track down and install .Net 3 when new systems are delivered with .Net 4? Will Mono also have to constantly chase the latest updates to keep up with the Microsoft releases?


 * This constant shifting and new installation requirements also sets a bad precident and gives other language developers the idea that it's OK to insist that users obtain and install runtime libraries and accept major system modification (e.g. changes to the registry and firewall). They will simply point to the fact that Microsoft does it all the time with .Net. (and Novell with Mono?). For example, National Instruments, the maker of Labview, is increasingly moving to the Microsoft model and now insists that users install run time libraries to execute compiled applications on any new system. Labview is an incredible language and earlier versions used to produce reliable, stand alone, binaries with no such requirement. But with all these runtime installs you can no longer create a standalone EXE and in many cases it's not even enough to the include DLLs in the same directory. This has led to the absurd situation where a complex program written 5 years ago will run on any windows system but even the simplest program written 1 year ago requires a major install! This is terrible for application archiving. It also makes it very hard to create portable applications or distribute programs to users who are smart enough to avoid installing new libraries haphazardly or won't mess with anything but a double click to get an application running. There really is no excuse for these limitations. People have to wake up to the fact that these separate library updates are often done so that the vendors can leave their mark on the system and create future dependencies. AFOPS, June 24, 2006 —The preceding unsigned comment was added by 74.12.144.175 (talk • contribs) 18:03, June 24, 2006  (UTC)


 * Oh, quit with the selective hearing already. This has been explained to you.  Your criticism was deleted because you didn't provide sources, and aside from that, some of it is factually incorrect.  It all sounded like a poorly-informed rant from a Microsoft hater; believe me, we see such people crop up from time to time on the various Microsoft articles, and their hatred of all things Microsoft tends to make them forget the fact that they're still supposed to be writing an encyclopedia where verifiability and neutrality are the most important goals.  So don't act all surprised that unsourced, opinionated contributions are being deleted. Warrens 18:09, 24 June 2006 (UTC)


 * Hey Warrens, cool it a bit! Who appointed you the anti-microsoft-haters protector?? Let's not start with this name calling unless you're one of those wacky Microsoft fanatics ;). Don't worry I'm using a Microsoft system to write this response and I don't believe in hate. See the world is OK.


 * Let's start with the citation issue. I head you loud and clear and answered you several times. It seemed to me that it was you who were being selective. Think about all the times I've pointed out that this article had no references whatsoever! So how come the criticisms get deleted and the sections promoting the wonderful benefits of .Net remain in place?.


 * The sections that praise .Net were left in and so should the sections that balance them out by listing the criticisms and concerns that exist. List both the pros and cons and let people form their own opinion.


 * An editor's job is to make sure that claims are verifiable not to proove their veracity. It is not a forum for regurgitating Microsoft documentation or MS PR jabber.


 * Anyway, I just added 6 references to the criticism section. These were the only references in the entire article! Did you notice how the PBS citation and the Register citation discussing the monopoly concern were immediately deleted?


 * The references were:


 * 1) [| PBS, Caught in a .NET].This articulated an early concern about .Net and Monopolies


 * and


 * 2) [| The register, Mono and dotGNU: what's the point?]. This discussed whether Mono and similar approaches would address the above concern.


 * How about the point about that .Net related changes to the development tools were not universally appreciated. Here a simple reference to the VB.Net helped confirm verifiability. Again, immediately deleted on the grounds that it was not on topic. Hello? Remember it was Microsoft that brought in the changes to VB and other .Net tools as part of their .Net agenda. These are intimately related! A single sentence connecting the two is clearly appropriate.


 * The claim that major companies were requiring installation of .Net in order to access application and change driver settings was supported by the ATI links.... guess what, also deleted!


 * Returning to the Monopoly and .Net issue in particular: by this article's own description .Net is one of the most significant changes to Windows. Windows is the most dominant client operating system in the world. The citations I added were directly on topic given that they described why some people think that the scope of .Net (not just windows products in general) could lead to a Monopoly. The text then followed with an explanation of why someone might think that Mono may be a counterproductive route for those who think a monopoly is a concern. It doesn't matter if any of us are individually concerned about a Microsoft monopoly. What is clear is that there are well recognized and identifiable sources that have raised specific concerns regarding .Net in relation to monopoly issues for a long time now. If someone is reading about .Net the relation to market dominance is an informative fact. Whether the concern is valid, true or false is not for editors to decide. You can't go on for paragraphs saying what a revolutionary change .Net is and not describe the fact that there may be those who are opposed to this particular change.


 * Warrens, the fact that concerns relating .Net to monopolies exist is obviously verifiable. I cited the relevant articles. Now, are you going to help protect this content or do you refer to Wikipedia principles only when it's convenient and the text in question fits with Microsoft policy?


 * AFOPS, June 24, 2006 —The preceding unsigned comment was added by 74.12.144.175 (talk • contribs) 20:34, June 24, 2006 (UTC)

The Criticism section
Regarding the edit I made to "Applications and drivers developed under .Net often require separate downloading and installation of .Net and adjustments to firewall settings in order to run ... A continued need to update the operating system increases user and developer dependability on Microsoft. Applications requiring such updates would become unavailable to users that are unable or unwilling to install the framework."

I changed "applications and drivers" to just "applications" because the distinction is not important in this context. The reference to the issue with the ATI is not necessary - the simple fact that the .NET framework is required by these apps suffices. I removed the part about the firewall, because the decision to use that feature of .NET was a decision of the application (driver) designers, and not a requirement of .NET. I removed "increases user and developer dependability (sic) on Microsoft" because in seems out of place in this bullet point. If replaced, please put it into a different bullet. I may do further editing toward that point. Leotohill 18:17, 24 June 2006 (UTC)


 * Leotohill, a general comment about application seemed fine to me but Warrens is insisting on citations, so work it out with him. The ATI documentation was a case in point that a major company requires a .Net installation in order to interact with a driver and that this reliance on the .NET channels may trigger a firewall warning . See the ref, and take it up with ATI!


 * Regarding the MS-Monopoly issue, if anything, the Microsoft article's section on legal issues might refer here for technical details relating to .Net and alternatives. The text and cited articles were VERY .Net specific (see also discussion above with Warrens). Please leave them in. AFOPS, June 24, 2006 —The preceding unsigned comment was added by 74.12.144.175 (talk • contribs) 20:55, June 24, 2006 (UTC)


 * Sorry, blaming .NET for an application's requirement of firewall openings makes no more sense that blaming it for a app's requirement for reading Chinese.
 * The only documentation required for the claim that .NET applications require the .NET framework is the .NET documentation. This requirement is transparently obvious, so I don't think a citation is needed.  I think Warren was complaining about other things, but I'll let him speak for himself.
 * Regarding the open source "self defeating" article, I think it's ok to provide a link to it in the "external references" section but from a stylistic point of view I don't think that the sentence belongs in the .NET criticism section. That article is a criticism of open source .NET efforts, not .NET itself, so it shouldn't be referenced from the .NET criticism section.
 * Leotohill 23:57, 24 June 2006 (UTC)


 * Warrens, I removed the 'fact' tag that you placed on the claim that alternative implementations are incomplete. I don't think that there is any single reference that could concisely verify the claim, if for no other reason that one can't prove a negative.  (Can't prove that something doesn't exist). However,  I think that some facts and reasoning provided here will do.  First, the Mono project is the most complete alternative implementation (any argument there?), and the  makes it clear that major sections, like Windows.Forms (!) are missing. Secondly, any alternative will always be playing catch-up to MS.
 * Leotohill 02:17, 25 June 2006 (UTC)

"Criticisms"

 * The Microsoft .NET framework runs only on Windows operating systems, and so applications developed using it are also limited to Windows. While non-Windows implementations of portions of the framework exist, they are incomplete and not supported by Microsoft.


 * GM does not make cars that float. That doesn't mean GM cars suck because they don't float. Microsoft makes software for Windows.


 * The largely proprietary nature of .NET...


 * FLOSS POV.


 * The introduction of the .NET Framework has resulted in many changes to Microsoft development tools ...


 * No issue here.


 * Some analysis has shown


 * "Some analysis" is a weasel phrase, and the issue of "resources" is no different than those that afflict Java. Or Python for that matter.


 * .NET applications require the .NET framework in order to run....


 * I cannot see why this is a "criticism"; it might be a shortcoming, if that. In the corporate world it's a moot point anyway.


 * Similarly, additional installation requirements can be incompatible with the design of ...


 * ibid


 * Issues of software compatibility could also extend into future environments given that updates to the .NET framework requires new downloads and installations


 * This is FUD. The framework contains breaking changes that might prevent existing code bases from compiling cleanly, but the wording makes it sound like newer versions of the framework break existing applications, which is absolutely not true.


 * True, MS software requires Windows, and that doesn't meen it sucks. But it could mean that it is less than desired, especially when compared to Java apps, so the statement should remain.
 * Less desired by whom? By and large Windows developers could care less if their software doesn't run on BSD or the AmigaOS. Again, it's a simple issue of POV. Cross-platform capabilities are only important to people for whom Windows is not the platform, so that criticism is simply not important or relevant when describing the product, which is what this article is for. This "problem" is inherent to all Microsoft software. It's simply redundant and pointless to include it on ever article about Microsoft software. Well, actually it's just pushing a POV.
 * The free software adherents have a POV, but the fact that they exist and that they criticize proprietary software is not POV, it is fact. I think it's ok to state that fact here.
 * Last I looked WKP was not an evangelization platform. The very small number of people who consider "propietary" software to be "evil" can voice their opinions on an article that discusses that particular issue. The vast majority of people who read Wikipedia could care less about that. The inclusion of a statement like that reeks of POV.
 * I think it is clear that .NET applications will often require more resources that unmanaged apps. It's a valid criticism. The comparison to Java or Python is not stated - you inserted that in your comments here. The original text compared .NET apps to those "using the original API that shipped with Windows."  I might try for a better phrase there, but it is substantially correct.
 * Fine, as long as it doesn't read like .NET is a failure because of that, because that's what the previous bullet point conveyed.
 * I'm not sure I get your distinction between "criticism" and "shortcoming". And whether or not it is moot in the corporate world, that's not the whole world, so the fact remains.
 * The distinction is purely technical; the behavior is by design. It's not an accident or the result of a design error. And the vast majority of .NET-based systems are created within coporations.
 * I tend to agree with the removal of the compatibility and monopoly points. Especially the part about .NET leading to greater monopoly.  This could be said of any successful Microsoft product.
 * Leotohill 13:34, 25 June 2006 (UTC)
 * Well that's nice, but again it's nothing but a minority POV.


 * Are you arguing that there is no demand for cross-platform applications? I think that is easily disproven by listing cross-platform apps that currently exist.  (iTunes, OpenOffice.Org, and many others).
 * The free software movement may be small, but it is significant. Just as the article on democracy has a "dissent" section, and the article on communism has a "criticism" section, there is room in this article for acknowledgment that different POV exist.  I wouldn't support much more than a mention of it here, but I support that much.
 * criticism of the fw need not be limited to design errors, it can also refer to design choices.
 * Leotohill 15:32, 26 June 2006 (UTC)


 * Many applications are available for multiple platforms, but that doesn't imply the same code base. iTunes in particular I would guess has quite a bit of code that isnt the same between platforms. OSS software's point of view is fine, but it doesnt belong as a criticism of .net for two reasons. 1) its perfectly possible (and there are many examples) of writing F/OSS in .net. 2) OSS criticism is against all commercial or proprietary software, its not a criticism of .net to say its in a class with 99% of all software out there.  I am open to a criticism section as well, but for this article, it needs to be criticisms of the actual framework, not all proprietary software, not all microsoft products, not certain languages in .net etc.    Also, Any criticism needs to be balanced within the criticism, saying things like ".net, along with Java or any other GC managed platform, has higher system requirements than platforms that have explicit memory management" etc.  Gaijin42 17:41, 26 June 2006 (UTC)


 * Right, I just wanted to make sure that we agree that there is a demand for multi-platform applications. With that established, can we also agree that it would be preferable if they shared the same source code?  And if we agree on that, then I believe that it is acceptable to point out that .NET is not multi-platform, especially in comparison to Java, which is.  There do exist a number of multi-platform Java apps.
 * Leotohill 18:13, 26 June 2006 (UTC)


 * The addition of the "free software adherents don't like it" (or whatever it reads now) paragraph is quite simply, POV. I would be laughed off the OpenOffice article if I added a "commercial software developers don't like it" criticism. The addition of the clarification regarding the ability to create freely licensed software with the framework makes it a little better, but does not eliminate the fact that it is nothing but a minority POV and has no place in this summary of the product (or any other Microsoft or Oracle or IBM product). If you want to add a link to a "Propietary Software" category to each of these products' pages, then fine. So I'm removing the paragraph and the weasel words tag since it won't be needed anymore. I do agree with the way the resources paragraph was reworded. --klaus 21:43, 27 June 2006 (UTC)


 * Different applications have different requirements. 99% of all applications written do not have a multi platform requirement, because the target is known (99% of applications are written internally for companies that have a standard infrastructure) Only commercially sold or free apps have the requirement (and not even all of those). Those apps are of course the ones that everyone is aware of, because unless you wrote the business application, or are its direct user, you have never heard of it. That being said, Each developer should pick the tool that best satisfies their needs. Java and .net both suffer from high memory footprint, because of GC. If you are in en embedded low memory situation, you don't choose those tools. But its not a disadvantage, its a design consideration.   If you truly need cross platform, .net is the wrong choice (at least until mono becomes more robust.) But like I said before, 99% dont need that.  Further, when I was a Java developer, I definately found the write once run anywhere idea was more fluff than substance. Sure your pure logic code runs the same, but I had lots of issues with GUI code (swing and awt not rendering the same), and lots of enviroment issues, where Websphere wanted a totally different configuration and sometimes different code than JRun etc). That has probably improved over the last 4-5 years, but that was my experience then.  The multi platform apps I saw had lots of conditional defines for different JNI calls all over. Reminded me a lot of looking at the NetHack source code, which is one giant conditional define. Gaijin42 19:29, 26 June 2006 (UTC)


 * You are aware of the Mono development platform? bruce89 17:30, 27 June 2006 (UTC)

Merge .NET Framework 3.0
This article already has a section covering versions of the framework. Also, it generally seems like a bad idea to create a version-specific topic. So I recommend merging the "3.0" topic into this one. Leotohill 14:42, 9 July 2006 (UTC)
 * I agree. -- Szvest 15:52, 9 July 2006 (UTC) Wiki me up&#153;
 * I seriously think we should hold off on this - Microsoft has created created some confusion here by juggling some names around, but .NET Framework 3.0 is NOT a new version of the .net Framework. Rather it is what was formerly known as WinFX. I'd advise keeping the two articles separate until the confusion dies down, or until Microsoft sees sense and alters this daft marketing decision. Artw 16:26, 9 July 2006 (UTC)
 * I think that makes it pretty clear.  The fw v3 is the fw v2 plus the functionality previously known as WinFX.  If something in the future should complicate the issue, that would be the time to consider creating a different topic. But if you can provide a reference to some discussions about the confusion, I'd like to look it over.  Thanks.
 * Leotohill 17:09, 9 July 2006 (UTC)


 * A merge is appropriate. The new features of .NET 3.0 (Presentation, Communication, CardSpace, Workflow) still merit their own articles, but there really isn't a great deal more to say about it than those four components.  -/- Warren 17:24, 9 July 2006 (UTC)

Yes, do merge this. Also I joined the project, seeing as you needed help, what articles can I work on. Wser 16:09 12 July 2006 (GMT)


 * Hey Wser, thanks for offering. There's no shortage of things to do here.  You could do the merge that we've discussed here, if you want to take that on.  Then I'd say just read the articles with a keen eye.  This one has many micro-problems (grammar, terminology, lack of links, language that is too casual) and some macro-problems (overall content and flow.)  Many of the other .NET articles have the same issues. I think that there's a general tendency for these articles to cram in lots of technical bits without giving good coverage at a conceptual level.  Leotohill 04:00, 13 July 2006 (UTC)
 * Wser, you should get a WP userid.

I've completed the merge. -/- Warren 17:48, 14 July 2006 (UTC)

Standardization and licensing
I added this at the end of the paragraph : However, although the core of the .NET framework, and the associated patents, falls under the ECMA submission, the technologies that are built on top of it (mainly ADO.NET, ASP.NET, and Windows Forms, which are not essential to the implementation) are not a part of the core and could be subject to licensing problems (see the Mono FAQ here). Somebody deleted it arguing that patents are a Mono problem and have nothing to do with the framework. I don't agree. This Patent problem apply to anybody trying to reimplement the framework, not only Mono. It's the reason why I think that my comment was relevant. The present state of the paragraph could lead readers to a false assumption about the licensing status of the framework : all patents essential to implementation be made available under "reasonable and non-discriminatory (RAND) terms.". The problem is that a part of the framework don't fall under this category. Hervegirod 10:33, 15 July 2006 (UTC)


 * check out my new intro to "Alternative implementations". What do you think?  Leotohill 16:41, 16 July 2006 (UTC)


 * sounds OK to me. Plus I agree that it is better here than in the "Standardization and licensing" paragraph ("copyright" issues are a problem with independant implementations of the framework). Hervegirod 23:16, 16 July 2006 (UTC)

Another critic about the language-neutral feature of .NET
I found another critic made by Bjarne Stroustrup about the CLI and its language-neutrality, may be it is worth to add in the criticism section ? In "short", he says : "The CLI is sometimes described as "language neutral". However, a language that doesn't accept a large subset of these facilities cannot use even basic .Net facilities (or future Microsoft Windows facilities, assuming that Microsoft's plans don't change) and a language that cannot express all of these features cannot be used for the implementation of resources meant to be usable by other languages. Thus, CLI is "language neutral" only in the sense that every language must support all of the CLI features to be "first-class" on .Net". Hervegirod 09:39, 23 July 2006 (UTC)
 * I had to read and re-read his criticism very carefully before I could get a good sense of what he is saying. Of course it is true that the CLI is language neutral only for .NET languages.  However, I don't think that it's possible to have cross-language binary compatibility without a specification for how those languages represent their objects, and in this case we have a comprehensive specification, the CLI. Is BB opposed to all cross-language solutions?  (rhetorical question)  With respect to this article, how would we express this criticism fairly without getting bogged down in details?  I'm thinking about it.  Leotohill 15:55, 23 July 2006 (UTC)


 * With all due respect to Bjarne's vast experience, I feel that in this case the large number of languages which have successfully targeted the .NET runtime and libraries testifies to the fact that it works, and so there is not much need to debate whether it is or isn't. Practially speaking, it is a decent platform for the largest bunch of languages that any framework so far has been able to support. Harborsparrow 16:55, 8 October 2006 (UTC)

Merge with Microsoft .Net?

 * Opposed: A merger has been proposed.  As the one who created the distinction, I am of course opposed.  But I'll listen to argument. Leotohill 22:36, 19 August 2006 (UTC)
 * Oppose. Microsoft .NET is a strategy and set of tools from Microsoft that include Microsoft's .NET Framework. The .NET Framework is largely a class library and software development tools, while the .NET initiative at large is much more, which is described in its article. Merging the .NET article into the .NET Framework would feel very strange to me, as a subset would form the main article, and the superset a section in the subset. :-p -- Northgrove 21:25, 20 August 2006 (UTC)
 * Opposed: While I do think that the current "Microsoft .Net" page is lacking, confusing and needs to be fixed. I think that there is still (or at least a possibility) that Microsoft is going to keep the .Net and Framework ideas separate.  Check out the website .net glossary for a glossary from MS that describes the differences.  I think that the "Microsoft .Net" page needs to have all of the languages/asp.net stuff moved to the framework page (as MS says that is a part of the framework).   And add ".Net" items such as the .Net passport. Jjegers 21:51, 22 August 2006 (UTC)
 * Opposed. I feel that ".NET Framework" is a major part of "Microsoft .Net", but not the whole. There's much more to "Microsoft .Net" then just the framework. "Microsoft .Net" refers to all the entire services available through ".Net Framework". The general audience (non developers) would still like to know about "Microsoft .Net" without getting into the intricacies of ".NET Framework". Avadhoot

I've removed the merge tag. Leotohill 14:20, 25 August 2006 (UTC)

Competition with Java, Contrast with MFC
The opening intro doesnt mention at all the origin of .NET in trying to kill Java after their failed attempt at Embrace and Extend and Extinguish strategy to corrupt the Java standard. Also, the opening doesnt contrast .NET with MFC, i.e. it describes it as a class library but why was yet another class library needed when MFC already existed? The rationale for .NET is somewhat mystifying and seems to be more of an attempt by Microsoft to impose proprietary standards and ensure market share and market control, some discussion of this controversy should be in the article, imho.
 * I don't think that any of these considerations belong in the intro. I don't see how you can read the Relevance and Design Goals sections and still be mystified about the rationale.  Can you be more specific? Leotohill 23:01, 10 September 2006 (UTC)


 * While the opinion that Microsoft tried to kill Java is commonly voiced, it is not substantiated. It seems to me that Microsoft and Sun had different goals.  Sun wanted (and got) cross-platform support for one language, Java.  Microsoft needed to have (and got with .NET) all the dozens of different flavors of Windows seem alike to a developer.  Microsoft also got up to 50 different languages targeting .NET and using the same extensive libraries and allowing debugging across components made with different languages.  That is a very different goal than Sun's one-language, all-OS approach.  .NET solved two problems for Microsoft (all Windows alike, many languages on one library), whereas Java does not tend to support multiple languages (though in theory it could), and .NET does not solve the all-OS problem for Linux, UNIX or Mac. Harborsparrow 16:55, 8 October 2006 (UTC)

This page needs an editor!
There are a lot of overlapping sections of marginal utility. For example, Significance, Rationale, and Design Goals could all be merged. Overall, it feels like each successive contributor has been a bit too deferential towards previous contributors - rather than do a rewrite, they just add a new section. (This might just be laziness.)

But the article goes on and on, and never really hits on what (to me) are the key features of the framework: High developer productivity, via garbage collection, type safety, runtime checks, and elimination of common runtime errors.

And then there are huge chunks that seems really pointless - who cares about the beta version numbers?

I should do something about all this, but it would take hours and hours. I'm not sure I'm feeling that virtuous. ;-)

- Jon Shemitz 07:12, 26 September 2006 (UTC)


 * I agree that the whole thing is out of control and probably no one has time to tame it. On the other hand, a lot of people watch it and are, well frankly, quite touchy about the wording, so anyone undertaking a major rewrite would have to devote body and soul to getting agreement from the masses.  The high productivity stuff you mention (type safety, garbage collection, etc.) are essentially identical to that provided by Java and so perhaps they don't need a major rehashing here.  We saw that first with Java, and got it again with .NET.  I might add, also, that the Beta version numbers do in fact matter to people in the trenches wrestling with old code, because Microsoft did not always manage to avoid breaking changes.  Still, it might be nice if some of the gory details went into subpages, or pointed out to other resources on the web that cover the same details.  There is too much detail here.  Unfortunately, .NET technology does tend to be a big learning curve; it seems like there is a lot more going on under the hood than I realized when I first started learning it. Harborsparrow 16:55, 8 October 2006 (UTC)

Performance of managed code
I am not convinced that "due to the Just-in-time optimization in the VM, some applications run even faster than their native counterparts that have been optimized beforehand."

In any case,

http://www.php-compiler.net/ and http://www.python.org/pycon/dc2004/papers/9/

should be cited. While these show improved performance on some operations (and poorer performance for some), it is unclear whether the improvements are due to JIT'ing or any other characteristic of the VM. Certainly in some cases, and perhaps in many, it is due to the the use of better algorithms provided in the .NET framework.

I propose rephrasing the statement to: "However, some applications have been shown to perform better in .NET than in their native version. (cite the 2 docs noted above.) This could be due to the use of relatively well-performing functions in the .NET framework,  JITting of managed code, or other optimizations in the CLR.

Leotohill 15:06, 10 November 2006 (UTC)

I have 1.1, 2.0 and 3.0 all installed on my windows xp. Is there any point in having the first two? or are they redundant? Setup doesn't uninstall previous version when installing the new ones... Thanks, I know this doesn't really belong here. 61.68.253.97 14:32, 10 December 2006 (UTC)


 * well, this isn't really the place for technical q&a, but the answer is that you will need an older version if you run any application that requires it. So, "it depends."
 * Leotohill 16:27, 10 December 2006 (UTC)