Slashdot Mirror


Microsoft Developers Respond To .NET Criticism

bonch writes "Richard Grimes of Dr. Dobbs Journal wrote an article entitled Mr. Grimes' Farewell, in which he discusses what he feels are inherent flaws in .NET, and how he is abandoning his .NET column. Grimes argues that .NET is merely thin wrappers to Win32 calls (Avalon uses message functions that date back to 16-bit Windows), that Microsoft has abandoned confidence in both .NET and sales of Longhorn, and that the framework itself is too large and poorly implemented, most of it ported from past APIs like WFC and VB. Dan Fernandez, Microsoft's Visual C# Project Manager, has responded in his blog. Richard Grimes appears in the comments to defend his criticism, referencing first-hand disassembly of .NET APIs using ildasm. Scott Swigart has also responded to the criticism of Visual Basic .NET. Apparently, Mr. Grimes struck some nerves."

18 of 583 comments (clear)

  1. Re:Thin wrapper? by jolyonr · · Score: 5, Insightful

    Point. Woosh - that's the sound of you missing it completely.

    The problem being described is that by being "merely thin wrappers to Win32 calls" it is simply papering over the enormous cracks and legacy rubbish that is the current Win32 architecture when there was an opportunity here to break free of that all and start with a new, clean, functional and efficient environment for the 21st century.

    I don't deny that Microsoft have done a good job in the packaging, but as the old saying goes, however hard you try, you can't polish a turd.

    Jolyon

    --


    Please read my Canon EOS tech blog at http://www.everyothershot.com
  2. Re:Thin wrapper? by m50d · · Score: 4, Insightful

    I think he probably wanted them to rewrite things to be crossplatform. Java isn't a thin wrapper around the Solaris API, it's a completely redone API which uses Solaris as just one of many backends. It's not noticeably more Solaris-based than win32-based or anything else-based. By contrast .net is clearly completely based around windows, making it harder to port to other platforms, and arguably harder to use.

    --
    I am trolling
  3. no suprises. by Lumpy · · Score: 4, Insightful

    The VB devs here prefer, and every VB install is actually VB6. We buy .NET but none of the Devs want it for anything but the license to use VB6.

    VB6 is much smaller and has a higher compatability across all the company platforms, plus the windows CE devices we have here in he wearhouse and field techs carry run an older CE version that seems to like the CD kit+VB6 better. (no upgrading them is not an option at $2150.00 each)

    Or so they say, I rarely touch the stuff. I find that python does the job faster and better, but try and convince a VB jockey that it really is just as easy without an IDE.

    Python + wxPython = killer cross platform Rapid development language.... as soon as you get past the quirks.

    --
    Do not look at laser with remaining good eye.
  4. sometimes things have to hurt. by ecalkin · · Score: 4, Insightful

    If you stick your head in the sand and only hear good things, this leads to *big* problems later. You can look at some history at IBM and see that the cheerleader mentality cost them a lot. It didn't matter what the truth was, it didn't matter what reality was, it didn't matter if the product worked, it was your job to promote it like it was the best thing since sliced bread, and do it with a smile on your face. You could see a lot of that with PS/2s

    Everyone that builds something, designs somethings, etc, should be able to have some basic defense of his actions, designs, procedures. If all you can say is "that's hurtfull", you are in big trouble.

    eric

  5. Re:Design Flow by conteXXt · · Score: 5, Insightful

    Props are due.

    Hardly anyone ever mentions that little tidbit anymore as it was assumed (correctly) from the beginning that .NET was only supposed to fool the Windows Java developers to give up on Java.

    Everyone else saw through the thin veil.

    --
    The truth about Led Zep should never be told on /. (Karma suicide ensues)
  6. Tried .NET a year ago by MSBob · · Score: 5, Insightful
    I agree that it is a thin wrapper around (bad) Win32 APIs.


    The one thing Microsoft has been consistently bad at is developing nice clean APIs. They often provided very good tools to help you cope with the sheer ugliness of their APIs but MS never managed to create an API that felt natural to use.


    I had high hopes with .NET I thought MS was going to turn a new leaf in the API department and finally provide a programming environment that's usable without a gazillion wizards. No such luck. All of the OLE/COM crap sticks out of .NET like a sore thumb. The whole thing feels like a stovepipe patch on top of an old and crufty system and it just doesn't hang together as well as the Java runtime for example.

    --
    Your pizza just the way you ought to have it.
    1. Re:Tried .NET a year ago by TummyX · · Score: 4, Insightful

      You can account for everyone by making your API *extensible* which MS.NET not. They have difficulty designing abstract APIs. They should steal more from Java2.

      This is coming from a .NET developer btw.

  7. Re:Thin wrapper? by MooCows · · Score: 5, Insightful

    1. I write a .Net application.
    2. Microsoft rewrites Windows, ejects the old API but keeps .Net compatibility. (it's a thin wrapper after all)
    I don't have to rewrite my application (not even recompile it), while MS can fix their low-level API.
    3. PROFIT!!!

    I do agree there are a bunch of flaws in the .Net library.. but the whole system is still a solid improvement over MFC et al. IMHO

    --
    The path I walk alone is endlessly long.
    30 minutes by bike, 15 by bus.
  8. This is the bit that worries me... by argent · · Score: 4, Insightful

    My opinion is that Avalon, or more specifically, XAML, will mark the death of ASP. The reason is that Avalon is a client-side technology, but the browser is an important part of the distribution model. XAML is so rich that a browser-contained XAML application will look no different to a process-based Avalon application, and coupled with Web Services or Indigo (as the mechanism to access remote code), an XAML application will make an ASP.NET application look paltry and antiquated.

    Microsoft's track record with browser-based applications is one security disaster after another. Their existing browser-centric security model is fragile that I can't see a way to fix it without changing the API and breaking every application that uses it.

    If Microsoft's web applications come to depend on that model, they'll never be able to extricate themselves from that mess.

  9. Avalon availability by Chris+Kamel · · Score: 4, Insightful

    From RG's article I take the decision to make Avalon available to other versions of Windows as a lack of confidence in the sales of Longhorn.
    So if MS made Avalon not available for other versions of windows we'd moan about requiring to upgade to longhorn and MS wanting to make more sales on the expense of the consumer. When they announce it will be available for older versions of Windows we moan about their lack of confidence in longhorn sales... sheesh......

    --
    The following statement is true
    The preceding statement is false
  10. If I say something idiotic and inflammatory... by PepeGSay · · Score: 5, Insightful

    everyone will read it and post it on Slashdot. This guy is using kernels of truth to act as if those kernels of truth are indisputable evidence of his incorrect conclusions. e.g. "The sky is blue. Blue is the color of water. Therefor if I fly I will drown."

  11. Re:VIA forums... by jeremyds · · Score: 4, Insightful

    What does the platform the forum is built on have anything to do with whether or not it's "user friendly"?

  12. Re:Already debunked. by CreatorOfSmallTruths · · Score: 5, Insightful

    Being anti-Microsoft doesn't automatically make something true.

    Yes.. But having dissassembly output does...

  13. Re:Design Flow by rednaxel · · Score: 5, Insightful
    As I use to say:

    • Java: one language, any platform
    • .NET: any language, one platform
    --
    If you can read this, thank an english teacher.
  14. Re:Start again? by uradu · · Score: 4, Insightful

    Microsoft is also developing lots of new systems code, and Grimes' question is, how come so little (if any) of it is written in .NET, if .NET is indeed the future? Or is .NET just the latest incarnation of the MFC: good enough for everyone else and to sell lots of books, but most certainly not for internal Microsoft development?

  15. Re:Irony by LarsWestergren · · Score: 4, Insightful

    Java is mature language, lots of jobs available, and there are a huge number of open source projects written for it. Unlike C#, is not a Microsoft product. Personally, I think it looks nicer than C#. Java has the Java Community Process where I can decide how it will develop in the future, and there are Open Source implementations such as Classpath available (which BTW makes it possible to run Java under Mono).

    Why the hell would I want to use C#?

    --

    Being bitter is drinking poison and hoping someone else will die

  16. 70 million .Net Users by n9uxu8 · · Score: 5, Insightful

    From DF Blog:

    Soma: We have seen over 70 million downloads of the .NET framework from Windows Update and the Microsoft Download center to date. For a simple guy like me, that translates to about 5.5 million downloads a month. Another interesting datapoint is that in 2004, we expect to have about 54 million new PCs shipping with the .NET framework installed/preloaded. We also have over 2.5M developers targeting managed code.

    It's a small point, but how many users have .Net installed because they did a windows update and it was one of the available options? My mom has .Net installed, but I guarantee she is not using it for anything other than keeping her hard drive full.

    Dave

  17. Why is one standards body... by SuperKendall · · Score: 4, Insightful

    Better than another?

    C# Ecma, and Java is JCP. One is a community based process and the other a standard effectivley controlled by a single company who manages to get ECMA to rubberstamp the whole thing - so if I were you I'd probably keep the whole "ECMA standard" thing at a low profile so people don't look too close at what is going on there.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley