Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Microsoft Programming IT Technology

Microsoft Developers Respond To .NET Criticism 583

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."
This discussion has been archived. No new comments can be posted.

Microsoft Developers Respond To .NET Criticism

Comments Filter:
  • Irony (Score:5, Interesting)

    by bigtallmofo ( 695287 ) on Monday March 07, 2005 @08: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:3, Interesting)

      How ironic would it be if Microsoft eventually abandoned .Net and Mono was the only remaining development environment that supported C#?

      It still would be great. It seems like the criticism is made to the platform built on top of C#, ie: .NET. C# continues being a good language. We still can build our own FOSS platform with NO implementation of .NET.
    • Re:Irony (Score:4, Insightful)

      by RoLi ( 141856 ) on Monday March 07, 2005 @10:07AM (#11864821)
      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 @10: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:3, Insightful)

          by bolix ( 201977 )
          I don't think thats what MS are doing. I think we're seeing genuine confusion over the company direction. There is no true enemy any more except the end users. Internal to MS, i think it plays out like this:

          1) On one hand you've got the the internet geeks: "the always-online and pervasive computing model will benefit the standards based, trim orgs" guys. Unless MS can set that standard or reduce the bloat, they're the Mainframe in the 80s.

          2) On the other hand, you've got the party-faithful, invested in th
  • by syntap ( 242090 ) on Monday March 07, 2005 @08: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 zecg ( 521666 ) on Monday March 07, 2005 @08: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!
  • Thin wrapper? (Score:3, Insightful)

    by nmg196 ( 184961 ) * on Monday March 07, 2005 @08:52AM (#11864317)
    ".NET is merely thin wrappers to Win32 calls"

    Of course it is. That's called functional programming! What did he want them to do? Write the whole thing again from scratch in ASM?

    Somewhere further down this page someone's going to write "In other news, Win32 is a thin wrapper for Assembly Language".

    I'm a .NET developer and in general, I think it's great - it's a very fast platform to devlop for - and your developments run very fast.

    Sure it has some problems with the fact that some parts are just wrappers. For example the SMTP functionality is really bad and always gives you exactly the same error message no matter what actually went wrong. But we're still very early in .NET development, and I'm sure .NET 2.0 and future versions will fix many issues that exist with the current version.
    • Re:Thin wrapper? (Score:5, Insightful)

      by jolyonr ( 560227 ) on Monday March 07, 2005 @08: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
      • Start again? (Score:3, Insightful)

        by Caine ( 784 )
        Ah boy, I wouldn't want to hire you. Microsoft sits on a treasure chest, namely 10 years of bugfixed, known-to-be-working code. It contains every little obscure bugged that grandma Uxbuklu in outer Mongolia have ever encountered. And you want them to throw that away? That sounds great! If you're a Linux developer that is.

        I would recommend you read what Joel [joelonsoftware.com] has to say, since he say it so much better than I have time to do.
        • by monkey_jam ( 557265 ) on Monday March 07, 2005 @09: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:3, Insightful)

          by RahoulB ( 178873 )
          Win32 is one of many possible APIs to the NT kernel - it just happens to be the one with the most development against it and (most importantly) is backwards compatible with Windows 9X.

          If they are going to have a whole new API (which is what .NET really is) then why build it on top of the flaky and ugly Win32 API, when it could be inserted as a peer to the Win32 API (in the same way that Carbon and Cocoa are on OSX).
          • Re:Start again? (Score:3, Informative)

            by Foolhardy ( 664051 )
            Exactly. I was really hoping that Avalon with .NET would become a new environment subsystem to replace Win32 in Longhorn. This is exactly the kind of thing that environment subsystems were designed to do: .NET is a new API, has (or should have) a completely seperate interface from Win32, and it will (supposedly) have an entirely different graphical and windowing system. Hey, even ReactOS is planning a Java environment subsystem, one not built on Win32.

            Win32 was introduced in NT 3.1 to be easy to port using
        • Re:Start again? (Score:5, Insightful)

          by uradu ( 10768 ) on Monday March 07, 2005 @10: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?
      • actually... (Score:3, Funny)

        by sethadam1 ( 530629 ) *
        but as the old saying goes, however hard you try, you can't polish a turd

        Actually, the saying goes:

        "You can polish a turd all you want, but it's still a turd."
      • Re:Thin wrapper? (Score:5, Insightful)

        by MooCows ( 718367 ) on Monday March 07, 2005 @09: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
    • Re:Thin wrapper? (Score:5, Insightful)

      by m50d ( 797211 ) on Monday March 07, 2005 @09: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 @09: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:3, Insightful)

          by m50d ( 797211 )
          Yes, but with the default MS runtime that's the only way to get GUI. So that's what the majority of apps will use. Wheras with java, the gui shipped is a crossplatform one (which sucks, but that's another argument). Yes Wx# exists, but how many app makers are going to bother even looking for something like that when they have a toolkit there and don't care it's windows-only.
      • Re:Thin wrapper? (Score:3, Interesting)

        by fish waffle ( 179067 )
        [Java's] not noticeably more Solaris-based than win32-based or anything else-based.

        Actually, it is biased slightly in the lower level implementation design constraints, although you're right that for most people it's not noticeable. Java (bytecode) uses big-endian encodings however, and IIRC the (strict) floating point specs are more Sun-friendly.
      • Re:Thin wrapper? (Score:3, Interesting)

        Hence the Java reputation for "Write Once Debug Everywhere".

        My employer's website used Java applets way back when, but when we found that it wasn't as portable as promised (e.g., events firing in different orders, colors mapping differently), we canned it.

        So what you might view as Java's asset turned out to be, given our particularly priorities, a dealbreaker.
      • Re:Thin wrapper? (Score:4, Insightful)

        by Dcnjoe60 ( 682885 ) on Monday March 07, 2005 @04:53PM (#11869353)
        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.

        That will ultimately be the problem/downfall of .Net. It is so tied into the current Window's API that either a) new versions of Windows will need to limit what they do for backwards compatability or b) .Net will morph into an unsightly mess of add-on features to keep up with Windows or c) future .Net will not be backwards compatable (or forwards, for that matter).

        Based on Microsoft's past track record with development languages and APIs, I'd say option c is most likely to prevail.

    • Re:Thin wrapper? (Score:5, Informative)

      by Stween ( 322349 ) on Monday March 07, 2005 @09: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.)
    • Re:Thin wrapper? (Score:3, Insightful)

      by sisula ( 865593 )
      "But we're still very early in .NET development, ..."

      Yes, we are and that's why you can't use this thing for serious projects.
  • by Nuclear Elephant ( 700938 ) on Monday March 07, 2005 @08: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?
  • Design Flow (Score:5, Funny)

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

      by conteXXt ( 249905 ) on Monday March 07, 2005 @09:09AM (#11864410)
      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.

    • Re:Design Flow (Score:5, Insightful)

      by rednaxel ( 532554 ) on Monday March 07, 2005 @09:55AM (#11864722) Homepage Journal
      As I use to say:

      • Java: one language, any platform
      • .NET: any language, one platform
    • by idlake ( 850372 ) on Monday March 07, 2005 @11:12AM (#11865479)
      This notion that platform independence is a value we should all aspire to is an idea pushed by Sun. The idea was kind of attractive 10 years ago when there was no usable X11 toolkit other than Motif (and that was barely usable), Macintosh was in shambles, and it looked like the only way to get any GUI software for UNIX/Linux was to piggy-back onto Windows.

      That's not the situation today anymore. Whether you like them or not, UNIX and Linux have two powerful and complete desktop environments and half a dozen excellent toolkits. There is no need anymore to piggy-back on Windows. When people develop for Linux, they should do the best job they can for the Linux environment, not worry about whether it can be ported to other, proprietary platforms. Windows has enough software as it is, and if we ham-string Linux software development with worrying about cross-platform issues, we will always be behind
  • no suprises. (Score:5, Insightful)

    by Lumpy ( 12016 ) on Monday March 07, 2005 @09: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 @09: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.
    • Try wxRuby (Score:3, Insightful)

      by leonbrooks ( 8043 )
      Goodbye, quirks.
    • Python + wxPython = killer cross platform Rapid development language.... as soon as you get past the quirks.

      When the best RAD environment available is an abortion like Boa Constructor, you are suffering from more than "quirks."
    • Re:no suprises. (Score:3, Insightful)

      by Tablizer ( 95088 )
      I find that for some tasks a coordinate-based IDE works better, and for others a "flow-based" (nested) approach works better. Thus, when people get into holy wars over cordinate versus flow, I say "both!". But, nothing has integrated both yet.

      The entire market is confused right now, and this is not necessarily (or not only) Microsoft's fault. Businesses like rich GUI's, but also want open standards and easy, web-based deployment. These requirements are either contradictory or have not been integrated int
  • by erroneus ( 253617 ) on Monday March 07, 2005 @09: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.
    • no, it doesn't (Score:3, Insightful)

      by idlake ( 850372 )
      The software industry has many different jobs. Most of them are the same whether you run open source software or Microsoft software (support, documentation, etc.). In fact, software development itself is usually paid, and paid about equally, whether it is open source or proprietary.

      The big difference between Microsoft and open source is the extra profits. Microsoft is making huge profits on their software. But if companies don't have to pay for those profits anymore, that means more money, not less mon
  • VIA forums... (Score:4, Interesting)

    by realkiwi ( 23584 ) on Monday March 07, 2005 @09: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.
    • Re:VIA forums... (Score:3, Insightful)

      by Anonymous Coward
      The server admin seems happy but the user experience sucks big time.

      And, if you like, you can build crappy software on top of EJB, Tomcat, Apache, LAMP, etc. Why are you blaming .NET?
    • Re:VIA forums... (Score:4, Insightful)

      by jeremyds ( 456206 ) on Monday March 07, 2005 @09:46AM (#11864660)
      What does the platform the forum is built on have anything to do with whether or not it's "user friendly"?
  • by MSBob ( 307239 ) on Monday March 07, 2005 @09: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.

    • Yes, COM and Win32 ugliness do show through in .NET. However, they couldn't have done it any other way. Remember when .NET came out any every single windows programmer was bitching and moaning about having to re-learn and re-implement everything? Imagine how many times worse that would have been without backwards compatibility. To make things "just work" in a backwards compatible way, some of the ugliness had to show through. All abstractions leak.

      It is unfortunate, but there is no other way it would

      • There's a VERY big difference between .NET being a wrapper for Win32 and backwards compatibility. Doing everything within .NET's runtime for client apps means calling Win32 functions. Their bugs and flakiness show through. The added layer also brings a huge performance drop.

        Calling COM and Win32 function directly, however, is another whole story. The interrop sucks. And it doesn't just suck, it sucks badly. The could have written .NET from scratch instead of a layer on Win32 and still have interrop.
  • by spacedx ( 458227 ) on Monday March 07, 2005 @09: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.
    • Re:What about .MAC? (Score:3, Informative)

      by fsck! ( 98098 )
      Just so you all know, THIS GUY WAS MAKING A JOKE. .Mac is completely unrelated in scope to .NET. It's an Apple-centric hosting service with lots of OS integration for contact and bookmark syncing, plus webmail and hosting. It's not a runtime. I wish I had mod points right now.
  • 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.
  • Already debunked. (Score:3, Interesting)

    by MythMoth ( 73648 ) on Monday March 07, 2005 @09:35AM (#11864576) Homepage
    This myth, .net is merely thin wrappers to Win32 has been very thoroughly debunked by the inimitable Ian Griffiths in his OnDotNet [ondotnet.com] column on Longhorn.

    Being anti-Microsoft doesn't automatically make something true.
  • by Chris Kamel ( 813292 ) on Monday March 07, 2005 @09: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 @09: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 @09: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 @09: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.
    • I'm not defending Grimes, because I honestly think he's lost his mind, but I'm looking at some of my very old Powerpoints when I, too, was involved in the very early (pre) betas, and, sure enough, there it is: COM+ 2.0.

      In fact, I see COM+ 2.0 far more than COM3, prior to the change to NGWS.

      Looking back further still, the original COM+ was more like COM+ 2.0 (with attributed-based programming extensions to C++, no less), but that got scaled back and the shipping version of COM+ was more akin to COM+MTS.
  • Ick (Score:5, Funny)

    by the_2nd_coming ( 444906 ) on Monday March 07, 2005 @09: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 @10: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.
  • This is a little off-topic but it's something I'm very curious about.

    Mr Grimes says:

    I think that case insensitivity is juvenile

    and so I can, perhaps, ask about capitalization conventions.

    Why is it that people write (and case-sensitivity therefore forces me to write)

    thisLittleThing();

    instead of

    ThisLittleThing();

    or even

    this_little_thing();

    ?

    To me, this_little_thing() is much easier to read, and at least ThisLittleThing is tolerable. But I am forced to say thisLittleThing() instead. It seems just plain counterintuitive to use capital letters within the name of something, but to not capitalize the first letter of it.

    I really wish most langages WERE case-insensitive, because then I could type ThisLittleThing() and nobody would care except me (who would find it much easier to read my own code). The only thing case sensitivity lets you do is make ThisLittleThing mean something else from THisLittleThing and I don't see how that benefits anyone.

    I think the best case convention is in the Apple file system, where I could say THISLITTLETHING and it meant the same as ThisLittleThing, but if I saved a file as ThisLittleThing it would appear in that same case.

    So could some kind soul explain the benefits of case-sensitivity, and why we should write thisLittleThing() instead of ThisLittleThing?

    I know it's a little thing but since I value more or less correct English, writing like that bugs the heck out of me.

    Many thanks.

    D
    • A common coding convention is for variable names to begin with a lowercase letter, while class names begin with an uppercase letter. So a maintenance programmer would expect ThisLittleThing and thisLittleThing to name a class and a variable, respectively.

      As for the underscore thing... many people agree with you, but this_little_thing is slightly more verbose (takes longer to type AND read) than thisLittleThing without adding content. But hey, that's another one of those religious issues that always flar

  • by mattgreen ( 701203 ) on Monday March 07, 2005 @10:32AM (#11865060)
    While we're bitching about APIs, would someone point me to a good API similar to .NET? I've used Java a bit and didn't find it nearly as intuitive as .NET. The inexpressiveness of the language ends up making life tedious (such as no support for delegates). Naming inconsistencies abound, such as .size() being used on some containers instead of .getSize(). Python, for all intents and purposes, can do a whole freakin lot but the API is one of the messiest I have ever seen.
  • by leandrod ( 17766 ) <{gro.sartud} {ta} {l}> on Monday March 07, 2005 @10:33AM (#11865082) Homepage Journal
    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 @11: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
  • "I've also tlkd to plenty of shareware developers and they certainly aren't using java. May use C/C++, Visual Basic, or Delphi." -- Fernandez.

    *sigh*

    of COURSE *shareware* developers are going to stick with windows. its the platform that created shareware, and has all the built-in tools (specifically, the registry) and the legacy of libraries out there to support the enforcement of shareware licenses by use-counts, disabled features, etc...

    that and once you've had to pay for your development environment, of course you're going to want to get some money back for your products.

    on the other hand, OpenSource client software exists in C, C++, Python, Java, Perl, and others, but until Mono gains a foothold (unlikely because skeptical developers fear when M$ pulls out the patent trump card they're holding), there will be very little C# open source out there. Free IDE support is out there because it, too, is open-source in many cases (eclipse being the major one).

    professional developers use the right tool for the right job (theoretically). as such, we have pieces in vb (with vb.net add-ons leadng to an eventual full refactoring to vb.net) and java JFC, as necessary.
  • Glad I'm a JAVA guy! (Score:3, Interesting)

    by AwesomeJT ( 525759 ) on Monday March 07, 2005 @12:51PM (#11866356) Homepage
    I'm glad I stuck with Java. I'm fairly happy there, although I would give my right arm for a deconstructor. The J2EE suite is coming a long nicely and there are now free application servers these days to run on any platform/OS that runs the JRE. Anyone from the M$ camp ready to defect to the Java side?
  • by Doc Ruby ( 173196 ) on Monday March 07, 2005 @12:56PM (#11866428) Homepage Journal
    Interesting how Microsoft gets all heated up about developing technologies, like .NET, only when threatened by others, like Java, that they can't control. When the threat is no longer hot, because it's beaten like Netscape, or can't be beaten, like Java, Microsoft's intensity in delivering the new tech also subsides. The actual needs of users, trumpeted in the vaporware announcements as imperative, never actually enter into the considerations.
  • Case Insensitivity (Score:3, Insightful)

    by Nom du Keyboard ( 633989 ) on Monday March 07, 2005 @01:08PM (#11866584)
    I think that case insensitivity is juvenile,

    And I think you're an idiot for saying that. Now we've both had our equal say.

    The argument that "VarX and "VARX" should refer to different variables makes no sense to me. I've used Unix since 1977, and to this day don't feel it improved anything be being so case sensitive. When a simple typo can create a programming bug, that's making software errors way too easy. To this day, modern databases know not to do case sensitive searches without special instruction. Perhaps they know something that programming languages don't.

    I have yet to see one good argument for how case sensitivity improves the ability to write better code. I know many why it doesn't. And most early programming languages survived just fine without it, especially since keypunches didn't include it unless you multi-punched each column by hand. VB 6 and .NET get it right. It corrects your casing to match the initial declaration of the variable. That is not juvenile!

    Leave the case sensitivity for the data, and keep it out of my programming languages. This is the one worst thing that Java didn't fix when they had the chance!

  • .Net DOA (Score:4, Insightful)

    by theolein ( 316044 ) on Monday March 07, 2005 @01:40PM (#11867015) Journal
    While I can sympathise with Richard Grimes and certaqinly agree with him that .Net is more of a marketing exercise than technological breakthrough (even C# is Microsoft's response to Sun's lawsuit over MS' mangling of Java), I don't think Microsoft can now afford to give it up.

    While they may very well be desperate since almost none of the initial investments have paid out, i.e. the lack of notable .Net applications on the client side of things reminds me very much of Java's client side predicament, they are in the now unenviable position of having spent so many years (6+) in development and (5+) in marketing and obviously having spent astronomical sums on both that they can not afford to switch to something else.

    They seem more likely, as is shown by their decisions to port Avalon and Indigo to XP, to try and hack it to work on all platforms so that at least the development effort will not have been wasted. The end effect will probably be that .Net will be ubiquitous on the various Windows platforms and will be the end user development plaform of choice, much as VB is today, but that it will be the same total sludge of low level hacks that give MFC and VB their well deserved reputation for irritation.

    I also serioiusly doubt that .Net, will ever really kill off server side Java, not unless Sun makes some really stupid moves, although that, I suppose, is well within the realm of possibility.

    I aslo agree totally, that MS is very quick to jump and get all defensive whenever somebody of note crticises them or their products. Admitting failure or misdeeds is not one of MS' strengths.
  • by theolein ( 316044 ) on Monday March 07, 2005 @11:10PM (#11873231) Journal
    I was wondering, apart from his comments themselves on the state and future of .Net, what the real consequence of some of Richard Grimes' stature is when he decides to publicly drop his .Net column.

    It occurred to me that this is the first public person who is both a respected author in the Microsoft developer world and, possibly more importantly, a columnist at DrDobb's, who is publicly washing his hands with .Net. And that is why, I think, why Microsoft's bloggers are doing overtime on the defensive damage containment sector.

    Dr Dobbs is possibly the most respected software development journal in the English speaking world. Certainly it has dropped somewhat over the years with the advent of the internet and the ease of accessibility to good quality development articles that the internet brings, but it is still probably the most important journal, especially relating to Microsoft products. The fact that a noted author in this journal has decided to wash his hands of .Net due to his frustration with the framework is what got the bloggers up in arms. Fear, simple fear, I think.

    is it really that important? I don't know. I have no idea if this is the beginning trickle of a torrent of developers who will decide to drop .Net and move to some other framework or platform, or if it is just one frustrated man who will have no influence on future events.

    While I would suspect the latter, I think that Microsoft's bloggers reactions means that Microsoft fears the former. And they right to be. A general dissatisfaction with .Net could very really cripple Microsoft's uptake in the enterprise, and the loss of enterprise development interest would leave Microsoft with an Desktop OS, a Server OS and an Office package.

    Think about that.

The rule on staying alive as a program manager is to give 'em a number or give 'em a date, but never give 'em both at once.

Working...