Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Microsoft Developers Respond To .NET Criticism

Posted by Zonk on Mon Mar 07, 2005 07:48 AM
from the seeya-stinktown dept.
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."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Irony (Score:5, Interesting)

    by bigtallmofo (695287) on Monday March 07 2005, @07:51AM (#11864312)
    How ironic would it be if Microsoft eventually abandoned .Net and Mono was the only remaining development environment that supported C#?
    • Re:Irony (Score:4, Insightful)

      by RoLi (141856) on Monday March 07 2005, @09:07AM (#11864821) Homepage
      Actually despite the public image being the contrary, Microsoft is abandoning it's products quite fast. Examples are Hailstorm, Passport, standard Visual Basic, etc.

      • Re:Irony (Score:5, Interesting)

        by WinterSolstice (223271) on Monday March 07 2005, @09:39AM (#11865143)
        I think the word you are looking for is "flailing"... as in MS s flailing around, trying to find a way to get a solid grip on a world that is fast passing them by.

        IBM did this in the early 90's PC market too, when the clones became far superior to the actual AT/XT machines. I would speculate that it is fairly common among large corporations when they hit a point where sales revenue is not increasing the way it used to.

        Let's see... what has MS attempted recently?
        Smartphones
        Xbox
        Pocket PC
        Media Center .Net
        WebTV
        Windows Embedded
        Windows "Clustering"
        XP ...

        Looks to me like they are trying to put a version of Windows into every market that uses processors. Seems to me like they've been right in line with what they said they were going to do. I wish them luck....

        -WS
          • Re:Irony (Score:5, Insightful)

            by LarsWestergren (9033) on Monday March 07 2005, @10:13AM (#11865486) Homepage Journal
            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#?
          • Re:Irony (Score:5, Informative)

            by dubl-u (51156) * <`2523987012' `at' `pota.to'> on Monday March 07 2005, @11:34AM (#11866119)
            C# looks much nicer, and unlike Java it's a ECMA standard. Why would I want to use Java?

            I'm not saying you shouldn't use C#, but here are some of the reasons I continue to use Java:
            • broader tools support (esp. IntelliJ IDEA [jetbrains.com], which I love)
            • JDKs available from Sun, IBM, Blackdown.org
            • much larger pool of developers
            • many good open-source Java libraries
            • much larger pool of employers
          • by SuperKendall (25149) * on Monday March 07 2005, @12:03PM (#11866531)
            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.
          • Re:Irony (Score:5, Informative)

            by truthsearch (249536) on Monday March 07 2005, @11:19AM (#11865905) Homepage Journal
            Java is not open. C# and the CLR are. They are ECMA standards.

            I'm getting tired of correcting people about this, but I can't help myself. C# and the CLR ARE NOT OPEN. An organization has embraced them in their list of standards. That does not mean they can be changed by anyone and still be a standard. They are not documented any better or worse then Java and their implementations do not have to be open.

            The only difference between these things being standards is that Microsoft can't change the interfaces and say they comply with the standard. Meanwhile Java can be changed at any time by Sun.

            And if you still want to call the CLR open then don't forget many parts are patented. So having it as an "open" standard is irrelevant when you can easily be sued by its creator for using it.
  • by syntap (242090) on Monday March 07 2005, @07:51AM (#11864313)
    How would you feel if someone criticized stuff YOU made in a public forum? This blogging stuff has gone TOO FAR and doesn't respect peoples' feelings.
    • by Anonymous Coward on Monday March 07 2005, @07:56AM (#11864330)
      Your post sucks.

    • by ecalkin (468811) on Monday March 07 2005, @08:03AM (#11864367)
      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
  • by zecg (521666) on Monday March 07 2005, @07:51AM (#11864315)
    I hear that now they have this spyware that downloads and installs .Net framework on users' PCs. Now we need a worm that does the same and the thing will soon be widely deployed!
  • by Nuclear Elephant (700938) on Monday March 07 2005, @07:52AM (#11864318) Homepage
    Microsoft has abandoned confidence in both .NET and sales of Longhorn

    Great! Does this mean they'll be shipping their own Linux+OpenOffice Distro?
      • Given my experience with their stuff, I wouldn't trust anything named "Turd Sandwich" from Microsoft.
        • I buried one of your turd sandwiches in my garden and all of the plants died. So did the pests living on them. And my neighbours' plants. Can I install a Turd Sandwich Service Pack or something?
          • by Anonymous Coward on Monday March 07 2005, @09:48AM (#11865222)
            MS Troubleshooting Help for "Turd Sandwich"
            1. Is your garden on the planet earth, and exposed to sunlight, oxygen, and water? []y []n
            2. Are you using MS Turd Sandwich in the Spring, Summer or Fall? (MS Turd Sandwich is incompatible with Winter in some climates) []y []n
            3. Please grade and re-seed your lawn and garden, replant your trees and shrubs, and rebuild any property on the affected location. Did this solve your problem? []y []n
            4. You have reached the end of the troubleshooter for MS Turd Sandwich. Please contact tech support for the same information, or upgrade to MS Turd Sandwich 2.0, which contains twice as much Turd as the previous release.
  • Design Flow (Score:5, Funny)

    by should_be_linear (779431) on Monday March 07 2005, @08:00AM (#11864344)
    First platform independent framework/runtime, implemented for only one OS.
  • no suprises. (Score:5, Insightful)

    by Lumpy (12016) on Monday March 07 2005, @08:02AM (#11864358) Homepage
    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.
    • Re:no suprises. (Score:4, Insightful)

      by MyLongNickName (822545) on Monday March 07 2005, @08:48AM (#11864674) Journal
      Then your devs need to get off the crack pipe.

      I work in a one-man shop. I do not have a CS degree, kind of sliding into programming from another field. I never understood a lot of the C-programmers terms like inheritence and polymorphism. Now that I have it, I have a hard time remembering how I got my work done otherwise.

      You ever play with custom controls in VB6? The damn things would break for no apparent reason, and the code for where controls are loaded was enitrely seperate from the rest of your code... made for some interesting debugging when VB6 decided my control could not be loaded. Add on top of this that you could not truely test an install on your machine, and VB6 sucked

      I wear a lot of hats.. db admin, application developer, spec writer, manual writer, tech support, with a user base spread out over five or six cities. I don't have time to delve into third party installation programs, version history databases, etc. I do not have a dedicated QA department with their own set of clean PCs to test on. I don't have someone who can test installs to make sure there are no glitches. .NET has made my life much easier. I can invest time into building tools to help me do my job faster and with more reliable results. I can trust .NET's installation programs to work as advertised. Its VSS implementation is vastly improved over VB6's.

      Am I a super programmer? No. I can get the job done, and I understand enough about the industry I work in (banking) to know how to meet the requirements of the job even when the folks who are describing the project don't. I am also not impressed by bells and whistles. I like to get the job done, and make my apps as ancillary to my users' lives as possible. I like the same from my development environment. .NET has given me a lot of freedom, and helped me to be a lot more efficient than I was three years ago.

      Are there "better" programming enviroments for other folks? Sure. We all tend to gravitate to the tools we need. For mine, VB.NET is it. But if anyone claims VB6 is better, they are plain wrong. My guess is that they were not willing to go through the learning curve (quite steep). If I had to go back to VB6, I'd switch careers.
  • by erroneus (253617) on Monday March 07 2005, @08:03AM (#11864363) Homepage
    There are thousands if not millions of people who have built thier understanding of computer systems around Microsoft's operating systems, software products and programming environments. Let that idea settle in deeply for those who see a much larger picture and take it for granted.

    This is not only their identity as programmers, but their foundation for career building and therefore their house and car payments, their breakfast and dinner and their hopes for retirement. It's a huge deal to criticise Microsoft for these people. Is it any wonder why it becomes a holy war for so many people? It's no mystery to me at all -- I even have a brother who has fallen into that trap and in order to keep peace in the family, I pretty much keep my "opinions" to myself much of the time.

    So while I am glad to see greater use and corporate acceptance of Linux or other alternative operating systems, I kind worry a little for those who aren't allowing themselves to see things beginning to crumble for Microsoft and that if they aren't careful will fall along with them.
  • VIA forums... (Score:4, Interesting)

    by realkiwi (23584) on Monday March 07 2005, @08:03AM (#11864365)
    recently migrated to .NET. The server admin seems happy but the user experience sucks big time. I never thought I would say something nice about Cold Fusion but the forum certainly was more user friendly running under that.
  • by MSBob (307239) on Monday March 07 2005, @08:14AM (#11864438)
    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.

      • by TummyX (84871) on Monday March 07 2005, @08:49AM (#11864678)
        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.
  • by spacedx (458227) on Monday March 07 2005, @08:14AM (#11864441)
    I am a .Mac developer and I can assure you that iDisk is more than a thin wrapper for WebDAV calls! Homepage is the best web development platform I've ever had the pleasure of using.
  • 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.
  • by Chris Kamel (813292) on Monday March 07 2005, @08:43AM (#11864643)
    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......
  • by dackroyd (468778) on Monday March 07 2005, @08:45AM (#11864653) Homepage
    Apparently, you also forget the pain of pre-.NET development. I haven't forgotten the insane amount of work it was to build a Web site with tables that let you sort and page data. I haven't forgotten how much work it was to write client-side and server side code to validate form fields.

    Wtf? Apparently he has forgoten to use PHP for web development.
  • by PepeGSay (847429) on Monday March 07 2005, @08:46AM (#11864658)
    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."
  • by zero_offset (200586) on Monday March 07 2005, @08:51AM (#11864697) Homepage
    Microsoft has abandoned confidence in both .NET and sales of Longhorn

    That will come as a big surprise to Microsoft.

    Hell, Grimes doesn't even get the original name of the .NET preview right. In the linked article, he states:

    "I started using .NET when it was in technical preview at the beginning of 2000; at that time it was called COM+2"

    In fact, it was being called COM3, and it was renamed NGWS because Windows NT wouldn't let you work with a directory called COM3 (IIRC, you could create the directory, but trying to use it resuled in some kind of conflict in which NT thought you were referring to a serial port).

    Fernandez himself says everything else you need to know about Grimes' DDJ bitchfest.
  • Ick (Score:5, Funny)

    by the_2nd_coming (444906) on Monday March 07 2005, @08:54AM (#11864716) Homepage
    I feel dirty reading so many MS Developer comments... bleh
  • Holy stinking jesus (Score:4, Interesting)

    by belarm314 (663118) on Monday March 07 2005, @09:20AM (#11864948)
    From some AC responding to Dan Fernandez's blog and referring to Richard Grimes:
    At the bottom you'll find that he listed his email, but rather then use a contact me form, or listing it directly, he ENCODED HIS EMAIL address in Rot 13 encryption!! Do you really want to take advice on "usability" from someone who thinks it's a good idea to encrypt their email address?

    I'm not sure I really need to comment further on this.
  • I am old enough to remember the original VB columnist at some high-profile magazine (was it Dr Dobb's itself?) throwing the towel on the column because he couldn't stand the bloating of the language by MS... and the C++ Advisor-or-something-the-like columnist (was it Unix Magazine or what?) quitting the column because C++, being designed by committee, required a language lawyer and was only getting worse.

    No news here. If you don't care for elegance, you go awok with evolution. ISO SQL, Perl, there are many many examples.

    Now if only people would rethink and take the pain of learning a real, elegant language... a functional (Lisp, Scheme, Haskell, ML) or pure OO (Smalltalk, Squeak) or truly relational (Tutorial D, D4) one.

    Instead of just trying to keep extending known languages into unknown fields. C is just structure, platform-independent Assembly; how come people want to create custom applications in it or its Java, C++, C#, ObjectiveC? This comes only as an indictment of the alternatives, or worse still of programmers and their managers.

    And BASIC, it was only a stepping stone in learning COBOL. How come it is used to deploy anything more than a prototype? Don't get me started with excuses.

    It is high time managers and programmers get real and start using languages designed to do what they want. COBOL, Pascal, Smalltalk, Lisp... each in their niche, they are better than C or BASIC and their overextended derivatives.
  • by n9uxu8 (729360) on Monday March 07 2005, @10:17AM (#11865515) Homepage
    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
    • Re:Thin wrapper? (Score:5, Insightful)

      by jolyonr (560227) on Monday March 07 2005, @07:57AM (#11864334) Homepage
      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
      • Re:Thin wrapper? (Score:5, Insightful)

        by MooCows (718367) on Monday March 07 2005, @08:27AM (#11864527)
        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
        • by monkey_jam (557265) on Monday March 07 2005, @08:30AM (#11864546)
          Microsoft sits on a treasure chest, namely 10 years of bugfixed, known-to-be-working code

          Yeah, now if only they'd release it....
        • Re:Start again? (Score:5, Insightful)

          by uradu (10768) on Monday March 07 2005, @09:11AM (#11864849)
          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?
          • by skraps (650379) on Monday March 07 2005, @08:38AM (#11864598)
            You should check out my new language, "Braindead". Every program is exactly one character long! Of course, some people complain that they have trouble finding which of the +Inf characters to use, but that's a different problem.
    • Re:Thin wrapper? (Score:5, Insightful)

      by m50d (797211) on Monday March 07 2005, @08:01AM (#11864345) Homepage Journal
      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.
      • Re:Thin wrapper? (Score:5, Informative)

        by MooCows (718367) on Monday March 07 2005, @08:45AM (#11864655)
        Umm .. the .Net library has a namespace called System.Windows which contains all the windows-specific functionality (COM, System.Windows.Forms, etc).

        Nobody is forced to use this namespace, nor can we blame MS for offering Windows-only functionality.
        .Net is undeniably built with Windows in mind, but it's hardly 'win32-based'.
        The runtime runs just fine on any platform (Rotor and Mono show this) and the library is clearly devided between Windows libs and 'common' libs like XML, SOAP, HTTP, etc.

        There are also plenty third party libraries available to enable platform independence. (GTK#, WX#, etc.)
    • Re:Thin wrapper? (Score:5, Informative)

      by Stween (322349) on Monday March 07 2005, @08:02AM (#11864360)
      Of course it is. That's called functional programming!

      I suggest you take some time to read up on functional programming [wikipedia.org].

      (Disclaimer: I know what you're meaning to say, I'm merely pointing out that the term you used isn't what you think it is.)
    • by CreatorOfSmallTruths (579560) on Monday March 07 2005, @08:49AM (#11864680)
      Being anti-Microsoft doesn't automatically make something true.

      Yes.. But having dissassembly output does...
    • Re:Already debunked. (Score:5, Interesting)

      by thePjunisher (858667) on Monday March 07 2005, @09:03AM (#11864786)
      Dumbass. Next time, link to a article that supports you claim, not one that contradicts it...
      WinFX marks the start of a similar transition, with .NET turning from a wrapper into the native API. .NET need not be a set of wrappers any more than Win32 needs to be a set of wrappers for 16-bit versions of Windows.