Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Microsoft Programming IT Technology

Public Standards: C# 2, Java 0 608

TheAncientHacker writes "While Java coders wait for SUN to be willing to accept any public standards for the Java language and runtime, Microsoft's C# and its underlying CLI, already standardized by ECMA, are about to get a second certification. This time by by the granddaddy of certification groups, the ISO."
This discussion has been archived. No new comments can be posted.

Public Standards: C# 2, Java 0

Comments Filter:
  • by japhar81 ( 640163 ) on Wednesday April 02, 2003 @03:01PM (#5646029)
    This is great news. At least the language will be standardized. Now if they'd just do the same for all the libraries, I'd be really happy.

    Imagine what we could do with an actual, standardized, GUI library system (and please dont bring up X*Shudder*, thats not a standard, its a beowulf cluster[fuck].
  • oh well (Score:5, Interesting)

    by AssFace ( 118098 ) <stenz77@gmail. c o m> on Wednesday April 02, 2003 @03:02PM (#5646046) Homepage Journal
    I guess I'll just stop coding in it.

    that's too bad really - I liked java.

    seriously - why should we care? does the code allow me to do what I want? yes.
    and done - I don't care about no stinking standards evaluation.
  • by Anonymous Coward on Wednesday April 02, 2003 @03:04PM (#5646063)
    How much development is still done in "regular" C and C++?

    Who actually owns copies of those standards? I know I don't - simply because they charge several hundred bucks a copy.

    As the artical says: The academic community benefits perhaps more from the published specifications to do computer science research than do companies.

    Academic research is fine, but when I'm looking for new programmers I would much rather have real-world experience. How many academic programs you wrote as an undergrad (or even a grad student) had to run for hours or even weeks and maybe with direct user interaction and not crash? Standards don't help you learn how to code that.

  • by ergo98 ( 9391 ) on Wednesday April 02, 2003 @03:05PM (#5646074) Homepage Journal
    Most Microsoft shops have or will switch to .NET (it's a natural progression), and of course Microsoft shops comprise the majority of "shops" out there. Indeed the most telling evidence of .NETs stunning market presence can be seen at your local bookshop: Already there are probably 2x the number of .NET books than there are Java books (seriously, go take a look).
  • by batkid ( 448363 ) on Wednesday April 02, 2003 @03:11PM (#5646127)
    It seems like Microsoft is trying to change their image from industry bully to industry team player. I have just been to an academic presentation of .NET and I must admit that MS studio .NET is very easy to learn and use, as well as being standards based.

    The problem that I see with Microsoft is their attitude of Windows being the only operating system. The entire .NET platform is built around Windows and the "Write in any language, run on windows" idea is not very attractive at least to me.

    You may argue that MS has already ported .NET to other OS (the rotor project). However, rotor is not meant to be used in production, which makes it rather useless in real life.

    If you look at the Java camp, however, things aren't that great either. The tools are generally not as well integrated and Sun is trying too hard to control Java.

    So, in conclusion, I'm not sure which is better. For now, I am staying with Java for my courses. But the battle is far from over :)

  • by ChaoticChaos ( 603248 ) <l3sr-v4cfNO@SPAMspamex.com> on Wednesday April 02, 2003 @03:12PM (#5646136)
    Could the fact that there are twice as many books for C# indicate that it's twice as hard to use? ;-)
  • by PseudoThink ( 576121 ) on Wednesday April 02, 2003 @03:13PM (#5646152)
    Many of my college classes were taught using Java as the programming language, so I had a few years of experience with it in school. I've been using .NET since it was released, and it's been so much easier programming in VB.NET and C# than it ever was in Java, it's not even funny. Despite their problems, the Visual Studio .NET IDE and MSDN Library have no equivalent. They are totally awesome.
  • by papadiablo ( 609676 ) on Wednesday April 02, 2003 @03:15PM (#5646182)
    Well add one more to .NET because I've been using it for the past 4 months instead of C/C++ or Java.

    Anytime a new technology is introduced there are always going to be more people using the old technology. That doesn't make the old technology better, nor does being new make the new technology better. Your point isn't valid considering how new .NET is and how long Java has been around. If it were then everyone would still be buying VHS tapes instead of DVDs just because it was the "standard" when DVDs were introduced.
  • Java standard (Score:3, Interesting)

    by stevenp ( 610846 ) on Wednesday April 02, 2003 @03:20PM (#5646237)
    AFAIK the Java platform(language, JVM and standard libraries) were submitted for ECMA standardization not long ago. Some time later, however, SUN took an suprising action and notified it is stopping the process, because some of the big boys were trying to destroy the standard by pushing it in the wrong direction. The Microsoft name was mentioned several times, together with their J++ Java implementation. So, SUN withdraw Java from the standartization process in order to save it.
    The real problem was that Microsoft had too big infkuence on ECMA and therefore it could easily turn the standardization direction in the pro-MS way. I believe that Microsoft has big influence over ISO also.
    Maybe it was better that Java was not standardized, but instead the Java Community Process was created which was the better way to develop Java for the future.
  • Re:What's up Sun??!! (Score:5, Interesting)

    by Richard W.M. Jones ( 591125 ) <rich.annexia@org> on Wednesday April 02, 2003 @03:22PM (#5646248) Homepage

    You've obviously not tried to use Kaffe for any serious work.

    Blackdown is a port of Sun's JVM.

    You might have mentioned IBM's JVM, but that's just as proprietary as Sun's.

    Remember that the JVM includes libraries, and without a complete set of working, compatible, debugged libraries your Java development is basically fscked.

    Rich.

  • Re:What's up Sun??!! (Score:5, Interesting)

    by Anonymous Coward on Wednesday April 02, 2003 @03:22PM (#5646252)
    Well the thing is, most of MS's "evil" is because they are big. Any small evil thing they do is blown up huge by the huge impact it has. And especially here by the just plain outright hatred that emasses here.

    In fact I find that Sun and Apple are frequently quite a bit MORE evil if you remove the entire market share from the equation and look at their actions more philosophically.

    Relentless pursuit of fans, maniacal leaders that spew verbal FUD at every oppourtunity, closing down the clone markets, faking JRE test software to make your 4x slower JRE seem as good as the competitions, selectively applying JRE compatibility rules to various friends/competitors and on and on.

    As far as Sun stumbling in the dark, that have done that for JAVA since day one. The early development tools were practically non-existant. And until recently, installing their JRE on Windows required the user to hand edit their environment to add a path to the JRE to it to make it work, even from the windows GUI. How much harder could they make it on themselves and their customers? I always thought that they blew it with their incredable poor dev. environment for JAVA. Compared to developing VB or VC++ on windows it was like using rocks and sticks. UNIX programmers were right at home with the sytem as it of course mimicked typical UNIX development (No suprise, they're SUN!)

    Though MS took advantage of JAVA in ways they probably shouldn't have, Windows developers people were starving for good JAVA tools on Windows and MS stepped up to the plate while Sun didn't. If Sun had provided a Visual Studio type dev environment from day one for all three platforms I believe a HUGE army of Windows developers would have jumped on it and Sun's JAVA would have taken off strong, instead it limped then and it still limps today.

    I am particularly perterbed by Sun's lack of support (or rather lack of EXTREME support) for Java as it is my daily duty at work to find usable cross platform tools for our software dev. needs and though we have actually used some JAVA with some success, it has been a lot more dissapointing as a dev. environment and as a platform than it should be.

  • Re:What's up Sun??!! (Score:4, Interesting)

    by chrisseaton ( 573490 ) on Wednesday April 02, 2003 @03:27PM (#5646298) Homepage
    Your C++ program might not need the standard library, but your C# program will. Everything in C# is reflected and so on, so if you don't have the .NET framework with the Type object, for example, you can't have any types, which leaves you screwed. With no .NET framework you can't have objects, methods, or anything.
  • Very hopeful news... (Score:3, Interesting)

    by WebCowboy ( 196209 ) on Wednesday April 02, 2003 @03:32PM (#5646337)
    ...as long as the standards are treated properly. (rare) Kudos to MS and shame on Sun for dragging their feet with Java. There are some questions in my mind now though:

    1. How do ISO and ECMA treat the issue of patents and licensing (something like what W3C is dealing with)? Being a standard, it should be open and ISO and ECMA should ensure Microsoft does not enforce heavy-handed, expensive licensing terms on their patents.

    2. I'm thinking anything that is pure .NET should run on any CLR implementation regardless of platform--but does making it a standard prevent MS from "extending" its own implementation and still declaring it standard? Can MS impose licensing terms on its own pure CLR/.NET code stating it must only run on MS platforms without running afoul of ECMA and ISO (even if technically it will run on mono for example)? It would sure be nice to one day be able to compile a little VB.NET program and throw the bytecode onto a Mac or Linux or BSD machine and not only have it work, but not worry about violating some EULA...

    3. With these standards, can I be any less worried about using .NET to develop GPL software (regardless of platform) without stepping on MS' toes? It seems in the past they have tried (or at least considered) legal means to restrict developers from using their tools to develop software under those "nasty viral open source licenses" like GPL...
  • by Anonymous Coward on Wednesday April 02, 2003 @03:33PM (#5646341)
    This note was originally published at John Munsch weblog on January the 14th.

    Lots of reasons why I want .NET to fail and fail badly

    It's benefits a criminal organization. Not one that's been found guilty of crimes once or maybe twice, but lots and lots of times. Those crimes are many and varied, but here's just a few of them: Stac Electronics v. Microsoft, DOJ v. Microsoft, Sun v. Microsoft.
    P.S. If you want to split hairs, Stac v. Microsoft isn't a criminal action, it's doesn't stem from a criminal abuse of their monopoly like the other two cases. Instead it was just a case of a small company being driven out of business by willful patent infringement, theft of trade secrets, etc.

    Microsoft isn't just one thing anymore. It's too damn big for that. I'm sure even Bill himself knows better than to think that he truly controls the whole ship because it's become big enough that he can't possibly know all the projects, people, etc. anymore. But even a really large company still has a kind of collective personality that it exudes and a large part of the personality both internal and external to Microsoft for many years now is that of a total control freak.
    If they don't own it, if they don't control it, if they didn't create it, if it doesn't have a broad stamp from Microsoft on it, then they don't want it. Sometimes it's sufficient for the thing to merely exist and they'll refuse to acknowledge it, other times they need to actively stamp it out because they can't control it.

    When was the last time you can remember Microsoft saying they supported a standard? That is, not something they invented and submitted a RFC for, an actual, take it off the shelf and re-implement it without renaming it or "improving" it so it doesn't work with anybody else standard. C++? Basic? HTML? A video or audio codec? Java? Anything?

    I'm sure there's something, somebody will point out their excellent support for TCP/IP or something and I'm sure that's true. But if you were to look at Microsoft as a person in your life, you'd wonder what was wrong with him or her such that so much had to be controlled by that person.

    When your business is selling the operating systems that 90+% of everybody uses, software development tools should not be a profit center.
    Why should I have to plunk down a couple of thousand dollars for a "universal subscription" in order to have access to compilers and basic development information? Sun doesn't have to do that? On this point I'll quote from the .NET "rebuttal" that I linked to above, "For non-profit use VS.NET can be had pretty cheaply, especially if you know anyone that is in college somewhere." Pretty cheaply? For a non-profit (that means charities, churches, universities, the hobbiest who is going to give away his work for FREE)... pretty cheaply? Wow. That is well and truly pathetic. To try and justify it, and say, oh well, you can try to scam an educational discount so it won't be so dear, is even more pathetic.

    Marketing. Have you been "lucky" enough to catch one of the .NET commercials with William H. Gacy telling you how great it is without really ever telling you anything about it? Microsoft doesn't trust .NET to stand on its own technical merits and it knows it may go like cod-liver oil down the gullets of a lot of people who have seen how the company works behind closed doors even if it were the tech shiznit.
    So they are going to pull a page out of Intel's bum-bum-buh-bum "Intel Inside" playbook and try to sell the brand like it's sneakers and cola. Trust us, you'll look cool if you use it, and we'll keep hammering the brand on TV so somebody who doesn't have much tech savvy in your organization will ask you if you are using it, or have plans to port to it, or whatever, even if he hasn't got a clue what "it" is in this case.

    They don't trust you. They don't like what they can't control and they can't control you. They can try and they always will keep trying bu
  • by Nightshade ( 37114 ) on Wednesday April 02, 2003 @03:33PM (#5646342)
    Cerification will only slow things down for Microsoft. By not submitting Java to be certified, Sun maintains control over the language and is able to respond more quickly to development needs (and more rationally instead of making comporomises to suit all people's needs). Just look at how much progress has been made in Java since version 1.0! Will C# be able to evolve as quickly? Well, just look at what ISO certification and too many comporomises did to C++!
  • Re:If you insist. (Score:1, Interesting)

    by Anonymous Coward on Wednesday April 02, 2003 @03:54PM (#5646560)
    Well several parts don't make sense without Win32. Why do I need COM Interop on Unix? ASP.NET and ADO.NET are ported over. Remoting has been ported over by Mono?

    Standardizing the class libraries is stupid - they're a moving target for a reason. Microsoft standardized a few base class libraries, just like ANSI C standardized base library calls.

    Every tuesday Sun runs its deprecate script and, woops, J3EE now deprecated your program lets write it again. Class libraries are a moving target, they're hard to standardize.
  • by SuperKendall ( 25149 ) on Wednesday April 02, 2003 @04:04PM (#5646675)
    Also, anyone submitting a standard to the JCP relinquishes patents on any parts of the standard.

    Not that Microsoft would do anything funny with Patents and .Net!! No Sir!!

    Wasn't April 1st yesterday?
  • And this means...? (Score:2, Interesting)

    by EricTheGreen ( 223110 ) on Wednesday April 02, 2003 @04:15PM (#5646790) Homepage
    Would someone care to post a lucid, fact-supported description of why this matters for any practical purpose?

    The lack of a public standard has seemingly not deterred IBM, et al, from JDK development.

    The presence of a public standard has done nothing to change the perception of .Net being tied to Windows, Mono not withstanding.

    In neither case has the presence/lack of a public certified specification meant diddly to the functionality and utility of either platform.

    This sounds more like fanboy posturing than anything meaningful.
  • That's only 1 score (Score:3, Interesting)

    by MORTAR_COMBAT! ( 589963 ) on Wednesday April 02, 2003 @04:27PM (#5646878)
    Public Standards: C# 2, Java 0

    Supported platforms: C# 1 (Windows), Java 3 (Windows, Linux, Solaris) (and that's just from Sun).

    Vendors: C# 1 (Microsoft), Java 5 (Sun, IBM, BEA, Oracle, Allaire) (in fairness there are many more Java vendors... those are the 'big ones').

    So the score is already 8 to 4, and what you'd find is a lot more '1s' in the C# column which read 'Microsoft', 'Microsoft', 'Windows', 'Windows', etc.

    And going back to 'public standards': when Microsoft Office publishes a set of DTDs [sun.com] which comprise a very public 'standard'... I'll be shocked. Their 'XML-based openness' in Office 11 is far from that goal.
  • by Billly Gates ( 198444 ) on Wednesday April 02, 2003 @04:53PM (#5647151) Journal
    Actually Microsoft did this not to run Unix apps but to get government contracts which require posix compliance. Microsoft made sure it was crippled in return so they would migrate to win32 after it became apparent that the posix layer was broken.

  • by eyefish ( 324893 ) on Wednesday April 02, 2003 @04:56PM (#5647184)
    I think before people reach some conlussions, they should be aware that Microsoft does not have the lightest intention of making their .Net environment a standard or open source for that matter.

    Summiting C# to standard bodies means nothing in the world of .Net, for the very simple reason that in order to write even the most basic usefull C# application you need *libraries*, a virtual machine, and many other propriatary Microsoft hooks. Summiting C# to standard bodies is just a public relations move from Microsoft, so that they can brag later that C# is open-standards based and Java is not, then management makes a decision to go full steam with .Net and a year later realize that they are stuck with all the Microsoft propriatary stuff you need to run C#.

    The analogy to Java would be Sun making the Java Language an open standard, but then keeping the Java API (i.e.: the libraries), and the JVM proprietary.

    I do agree with many though that Java should be not just a standard, but even open source. However when it comes to Virtual Machines it is *extremelly* important to have some central authority to authorize changes, since one of the premises of a VM is that you can run code anywhere, and if you let a million programmers create their own VMs, all of a sudden code stops running everywhere, defeating the advantages of a VM. This is why I don't mind SUN controlling a bit the final say on Java development, and experience tells me that the Java Community Process is a very reasonable alternative to open standards and open source. In the end, Java is a deFacto standard anyways when it comes to enterprise business applications, so Sun might as well try hard to submit it to ISO at least. But remember, all Sun is trying to do is avoiding a fragmentation of the Java market, which I think it's A Good Thing.
  • by Mammy-Nun ( 156025 ) on Wednesday April 02, 2003 @05:06PM (#5647272)
    ISO serves corporations, not the public. Check it out:

    http://www.iso.org/iso/en/faqs/faq-general.html#1. 10 [iso.org]

    1.10 Can anyone join ISO?

    Not as individuals or as enterprises - although both have a range of opportunities for taking part in ISO's work, or in contributing to the development of standards through the ISO member in their country. Membership of ISO is open to national standards institutes or similar organizations most representative of standardization in their country (one member in each country). Full members each have one vote, whatever the size or strength of the economy of the country concerned. This means that they can all make their voices heard in the development of standards which are important to their country's industry. ISO also has two categories of membership for countries with fewer resources. Although such members do not have a vote, they can remain up to date on standardization developments. Lists of the three categories of ISO members are available on ISO Online.

    Do you really thing MS would risk having the standard at the whim of the non-strategically-aligned?

  • Fluff, pure fluff (Score:2, Interesting)

    by jkabbe ( 631234 ) on Wednesday April 02, 2003 @05:16PM (#5647350)
    Why does certification of a particular version matter? Sure, Microsoft can get C# certified by some standards body. Who cares? What really is important is who controls the version after that. AFAIK Microsoft has not created a community body involving other companies to set the direction for C# as Sun has with Java.

    And as we all know, C# is only a fraction of what is necessary to run .NET. Can anyone tell me if Microsoft has submitted their entire shared library to standards bodies or is it just the C# language and underlying virtual machine? If Microsoft is still keeping the libraries proprietary then it will be even more of a red herring.
  • by miguel ( 7116 ) on Wednesday April 02, 2003 @06:08PM (#5647860) Homepage
    Regarding the patent of the ISO/ECMA documents, you might want to read what Jim Miller (one of the inventors listed in the patent said): here [unipi.it].

    I quote:


    Beppe,

    As one of the inventors on that patent as well as the person heading up
    the standardization efforts for the CLI, I'd like to explain why I've
    never felt the two are in conflict.

    The ECMA process requires that all patents held by member companies that
    are essential for implementing its standards are available under
    "reasonable and non-discriminatory (RAND) terms" for the purpose of
    implementing those Standards. This is the normal condition used in all
    International Standards organizations, including both ECMA and ISO.

    But Microsoft (and our co-sponsors, Intel and Hewlett-Packard) went
    further and have agreed that our patents essential to implementing C#
    and CLI will be available on a "royalty-free and otherwise RAND" basis
    for this purpose.

    Furthermore, our release of the Rotor source code base with a specific
    license on its use gives wide use to our patents for a particular
    (non-commercial) purpose, and as we explicitly state we are open to
    additional licenses for other purposes.

    --Jim

  • by Patoski ( 121455 ) on Wednesday April 02, 2003 @06:19PM (#5647988) Homepage Journal
    The Office 11 beta is supposed to show a much stronger commitment to "openness" in the use of XML file formats than anything to come from MS before now.

    From what I understand the default file format is still in binary form. I also seem to recall seeing that the XML export strips out all the formatting which makes the whole thing pretty useless. Finally, as others have rightly pointed out just having the XML to a file doesn't help a lot unless one also has the DTD. One can obfuscate text just as easily as one can a text file.

    [fasdfdas]]Dear Sirs,[/fasdfdas]

    The above tagging isn't very open and doesn't help *much* when trying to figure out how a file format works. :) Again, all this is second hand knowledge which I haven't seen for myself. YMMV
  • The JCP and Java (Score:3, Interesting)

    by ievans ( 133543 ) on Wednesday April 02, 2003 @06:38PM (#5648189)
    I work for Sun, and while I won't pretend to speak for them, I work most of the time on the various J2EE JSRs, so I sort of understand how the whole process works, and therefore understand the rationale for why Java isn't an ECMA or ISO standard.

    The Java Community Process (http://www.jcp.org) is an independent organization that sets the standards for Java. Anyone can join the JCP, although most members are companies. The Java language, the different distributions of Java (J2SE, J2EE, J2ME), and technologies that are built on Java use Java Specification Requests (JSRs). Various members (the expert group) collaborate on the JSR to define the technology, and work on a reference implementation. For example, Tomcat is the reference implementation of the JSP and Java servlet APIs. This is one major difference between ECMA/ISO and the JCP: the requirement of a reference implementation.

    I think the idea behind the JCP was to be able to modify the language and the APIs more quickly than other standards bodies, and ensure that there are useful implementations of the standards that go hand in hand with the standard.

    In the case of Apache, there have been some modifications to the JCP to allow open-source implementations of JSRs, and to make the compatibility tests available for non-profits. JBoss and Sun have locked horns because, in Sun's view, JBoss is not a non-profit, and are using the J2EE JSRs to make money without licensing the J2EE brand, as BEA, IBM, Oracle, Borland, and others have done. Because Apache is in fact a non-profit organization, Sun's been much more willing to work with them.

    Sun produces most of the JSRs, but not overwhelmingly so (around 60% if I remember correctly). Your average open-source hacker will find it harder to contribute to a JSR compared to, say, Gnome or KDE. Unlike .NET, though, it is possible to get involed in the development of Java and J2EE, either directly as an individual member of the JCP, or indirectly by providing comments during the public reviews of JSRs.

    There are many people at Sun that would like the public more involved in developing Java, and others who would not.

    Keep in mind that this is my impression of Sun's rationale, and I do not speak for Sun on any level.
  • by reanjr ( 588767 ) on Wednesday April 02, 2003 @07:18PM (#5648551) Homepage
    Actually, given the way the .NET framework works, I would think it would be rather difficult to write low level virus.

    I've had extraordinarily good success with .NET scaling to whatever level I've needed it to (excluding a horrible MySQL implementation I got from some third party).

    The phrase "isn't even supported by Microsoft in its own products" perplexes me since it is not something that needs to be supported. Maybe you should clarify exactly what you mean by this.

    The C# and VB compilers are free (as in beer). So I don't see the developer expense.

    Oh well, I guess if you have some preconception of what programming "really is" (and it somehow includes Java for some reason) then that's your prerogitive.
  • Re:www.jcp.org (Score:2, Interesting)

    by ruriruri ( 566567 ) on Wednesday April 02, 2003 @07:57PM (#5648833) Homepage
    You may want to read The Java Gated Community Process [ibiblio.org] for an alternative view of exactly how open the process really is. In short: Sun maintains complete control in the JCP, except in a shadow-government role rather than as a straightforward dictatorship.
  • Absolutely! (Score:3, Interesting)

    by GCP ( 122438 ) on Wednesday April 02, 2003 @09:20PM (#5649299)
    On the positive side, there is this kick-ass project called Mono that implements it, and runs on a variety of other systems as well.

    Absolutely! And I think that way too many people dismiss the advantages of C#, the language, because of its prominent position in a Microsoft initiative.

    I'm a big fan of Java, but after having used it for a lot of projects, I find that I'm VERY pleased by the extras offered by C#, the language, and the basic CLI extras that are covered by the upcoming ISO standard.

    I do NOT require a perfect clone of .Net. Go for it, Miguel! Get as close as you can, but if MS blocks you then let's have a Mono Community Process and come up with alternatives that are even better. For a while, being able to run the exact same app on both Windows and Linux might be useful, but my first priority is a great dev platform for Linux, not a way to run Windows apps. Over time, that first priority will get even stronger, and I'll get more interested in other languages such as a MonoScheme and less interested in Windows compatibility.

    Go Mono!

  • IBM Takeover (Score:3, Interesting)

    by RichiP ( 18379 ) on Wednesday April 02, 2003 @09:29PM (#5649364) Homepage
    I, for one, wish that IBM would take over the reigns of Java. I love Java and have been using it for years (alongside C, Perl, PHP, etc.), but I can't seem to like a single thing about Sun. They may have top quality hardware, but, even then, I still don't want them and their hardware.

    IBM, OTOH, has done well by the community and I would vote for them if a new steward for Java was ever sought.
  • by Zebra_X ( 13249 ) on Wednesday April 02, 2003 @11:07PM (#5649950)
    That .NET is a platform to make you, the developer more productive.

    I've not done a lot of desktop application development - so I can't really speak for the desktop crowd. I'd venture to say that it's not quite where it should be.

    The web however, is something different. ASP.NET is fast - easy - and extremely flexible and provided your server doesn't crash :-) extremely stable. Many of the most important aspects of basic application development are already done for you such as authentication and authorization, a decent crypto api and others. It comes with a standard set of "controls" for web forms that are flexible and reliable. Visual Studio supports the .NET Framework quite nicely and makes developing under ASP.NET quite pleasant (except for the html reformatting, quite annoying). All in all it's a good package. MS has done a great job documenting and exposing how .NET works, not from a code level BECAUSE WE DON'T NEED TO KNOW ABOUT IT but from an API/Method level. Generally speaking there is documentation on most of the common "problems" when learning .NET.
    The most compelling aspect of .NET is the fact that we can RELY on MS to maintain control of the .NET framework and classes. Unlike our friend Sun and Java which has become a mess of separate packages and little documented dependencies that are unreliable, prone to null pointer exceptions, and hidden caveats in packages that are necessary to do basic development work (XSL Parsers come to mind) .NET is a welcome relief to the uncontrolled mess that Sun now proudly hails as Java. .NET has unquestionably borrowed from every language design pattern that has appeared on the face of the earth since the chinese invented the abacus. But I don't care, becuase I can get my work done, and when I wake up in the morning I'm not real worried that my applications have chewed their tails off while I slept peacefully.
  • by Anonymous Coward on Thursday April 03, 2003 @02:31AM (#5650831)
    Actually, at least some "hidden APIs" are not even hidden. System.Windows.Forms.Form.Handle and System.Windows.Forms.Message.Hwnd are direct hooks to the underlying win32 interface. You can not build GUI .NET programs with System.Windows.Forms without win32, which caused the Mono project a lot of problems, finally resulting in using WINE.

    If you want cross-platform GUI programs with .NET, you need to use GTK#, but then you could just as well use a cross-platform standard C-compiler and GTK++.

If all else fails, lower your standards.

Working...