Slashdot Mirror


Java vs .NET

CHaN_316 writes "Yahoo is running a story called 'Is Java Finished?' It provides a brief overview of the strengths and weaknesses of J2EE and contrasts them with .NET. Classic arguments are brought up like Java being great for portability while .NET ties you down to Microsoft products, etc. It's interesting that they bring up the Java Community Process, and how it is a rather slow moving procedure that is causing Java to become stagnant."

45 of 686 comments (clear)

  1. VS sucks by Anonymous Coward · · Score: 1, Interesting

    I think there are several Java IDEs, which are better than VS. Try the latest VS.NET, it sucks bug time.

    1. Re:VS sucks by dasmegabyte · · Score: 4, Interesting

      What the fuck are you smoking?

      There are some good Java IDEs, no doubt, but none of them can touch Visual Studio for, well, any single thing you could possibly want to do with an IDE. From designing interfaces, to writing code, to generating code, to debugging code, to remote debugging, it's just awesome and completely customizable.

      Maybe you just picked it up, said "Oh Microsoft, must be junk." You were wrong to do so; it's way better than VS 6. Maybe you saw the animated docking and said "Too pretty, must be junk." You're wrong again...that's the first thing I take out, but by and large it's not a whistles and bells IDE. Maybe you saw all the icons and thought, "Too visual, must be junk." You'd be wrong...everything you want to do in Studio.Net can be done without ever touching the designer, and in fact I don't have a single icon bar turned on in my IDE.

      Compared to Sun's IDE, the awesome in its own right open source Netbeans, VS is much faster for compilation, has more accurate and immediate response from controls and object generation is more reliable. The tools are for the most part simpler while at the same time being more complete. They are easier to use and you can mess with the generated code without destroying the associated resources (for the most part). VS.NET doesn't have as robust a feature set as some Java IDEs, but it's got plenty and it all works.

      --
      Hey freaks: now you're ju
    2. Re:VS sucks by k-zed · · Score: 2, Interesting
      That might be true; in fact, I used Visual Studio myself and it wasn't all bad. I don't exactly like Java either.


      However, what you say is no excuse for using and especially developing for anything that's even remotely related to Microsoft and it's closed-in, proprietary platform! Openness and portability are the most important things, and even more so these days. That means you shouldn't ever use .NET or anything such, even if the open alternatives are inferior. (IMHO. That doesn't mean it's not true though.)

      --
      we discovered a new way to think.
    3. Re:VS sucks by anomalous+cohort · · Score: 2, Interesting

      Actually, VS.NET is pretty buggy once you start using it on large projects. It crashes a lot. The compile is sometimes really slow. The UI designer for web pages/controls is useless on pages with a complex DOM. It has integration glitches with VSS. VS.NET 2003 is not much better. I've been on teams for both a complex J2EE project and a complex .NET development project and I have tried a lot of IDEs. I still use emacs.

    4. Re:VS sucks by m0nk3ym1nd · · Score: 2, Interesting

      Baloney. I'm having a music download website developed -- it'll be online soon, I hope -- and one of my absolute requirements is that it *must* be free/open source software. Why? If my website ever gets big enough to threaten The Power (RIAA, BSA, M$FT, etc) then I'd begin to view proprietary software licenses as a distinct liability. The entire existence of the proprietary licensors depends on The Power, after all. They'll find some pretense to revoke my Flash license, say, or keep me tied up in lawsuits until I fold. Nope, it's FOSS for me, I can't afford *not* to do it that way. Am I paranoid? Or is it possible proprietary licenses could be used against an 'enemy of the state' such as myself? No, I'm not paranoid. The BSA busted schools in PA and Oregon for not having a piece of paper to go with every HDD contaminated with Windows, for crying out loud.

    5. Re:VS sucks by Anonymous Coward · · Score: 1, Interesting

      ...because figuring out where changes to your design model (i.e., Visio diagram) need to be implmented in your source code does not work too well.

      Take database design. Visio has OK ER design tools. But in V2000 they took out the 2-way tools so that it is only one-way (i.e., suck DB schema and make a Visio diagram from it). It is now only great as a documentation tool, but now useless as a design tool.

      Design and implementation may be seperate, but they are intertwined. The tools you use should facilitate the interaction, not throw up a brick wall between the two.

  2. Red Queen race by iangoldby · · Score: 5, Interesting

    causing Java to become stagnant

    Why would we not want a language to be stagnant? I wonder how much time is wasted just trying to keep up with changes to languages and development environments?

  3. Re:Java vs. .Net by bladernr · · Score: 5, Interesting
    I wouldn't say that .Net will never take off. Microsoft has access to senior executives in large corporations; I know that shouldn't make a difference, but it does. I am consulting at a major communications company now, and I just got a call from a VP an hour ago saying "Take a look at Microsoft for the stuff you are doing." It seems MS paid him a visit, and they are pitching lots of .Net/XP stuff against our existing HP SuperDome environments.

    Think of this another way: What if .Net was designed by a single person in their garage, would it get the attention it does? Of course not. Dot Net is a real threat to Java simply because it comes from Microsoft (a mega-corp with plenty of access).

    You may not like it (I know I don't), but that is the nature of things.

    --
    Sarcasm and hyperbole are the final refuges for weak minds
  4. Re:Java vs. .Net by metallicagoaltender · · Score: 3, Interesting

    Saying .NET will never take off, just because it hasn't yet isn't entirely fair.

    I'm certainly a Java proponent, but I know full well .NET has the entire Microsoft Machine behind it, and considering they usually do a good job of getting product acceptance regardless of whether or not its the 'better' product, I wouldn't count it out.

    Between the friendliness and name-value that Visual Studio has, and the fact that when a manager is making a choice about a product platorm for project, they don't always factor in the developer's best interest (if ever ;-) ), I'd actually be quite nervous about .NET gaining ground.

  5. Microsoft API performance by aacool · · Score: 2, Interesting
    In re: the performance of .NET vs. Java, once long ago, I wrote an API library based on ODBC using calls to the Microsoft ODBC dll, choosing to not use MFC for what I thought were performance advantages (lean, mean, etc)

    Strangely enough, I found that I was having some perf problems in my library functions that exactly modeled what MFC was doing in it's calls to the MS ODBC dll.

    After quite some digging, I found that a call to a DLL function with exactly the same parameters by my API as opposed to an MFC call to the dll was way slower and in at least one case gave different results. Please note that I'm talking about perf on the function call alone, all other things being constant

    Conclusion:MFC was 'rigged' to perform better with the MS ODBC DLL than a third party function call.

    It wouldnt surprise me if there were similar reasons for performance differences between .NET and J2EE - thoughts?

  6. Java is dying, news at 11 by FeloniousPunk · · Score: 4, Interesting

    Sounds like more MS FUD to me. So how many times has Java been declared dead/ dying now?
    Where I work (for a DoD agency) we are developing J2EE solutions with open source tools in part to get away from vendor lock in, something that MS is particularly bad with. Once MS ratchets up the lock in with the introduction of DRM in Office file formats, I think MS solutions as a whole are going to become less attractive, and this will be a strong disincentive to adopt .NET.

    --
    I know this because Tyler knows this.
  7. Re:Industry Newspeak by stratjakt · · Score: 5, Interesting

    Carpenters don't buy from hammer companies that change their hammers every "release".

    Sure they do, there's been a lot of innovation going into hammers lately. They release new versions of hammers constantly, and other woodworking tools - to many oldtimers dismay, who will swear up and down the hand plane they used in 1952 was an order of magnitude better than todays.

    Stanleys Anti-vibe series of hammers, for instance, they have whats basically a tuning fork built into the handle. The fork vibrates and takes the energy away from your hand. Spend a day ramming nails in with a wooden handled hammer, then a day with one of the newer models, and you definately feel the difference.

    They're also constantly adjusting the weights and balances, tweaking the shape and makeup of the heads/claws.

    Go look at the tool section at home depot and get an idea about hammers.

    --
    I don't need no instructions to know how to rock!!!!
  8. Re:Portable? by herwin · · Score: 2, Interesting

    I know you're trying to be funny, but I mark my students' projects using my Mac dual G4. They were developed on PCs and *X boxen, but I run them on my own machine. If there are problems, we have a serious chat.

    I teach advanced object oriented design and security. It keeps food on the table.

  9. What about Java on other platforms..... by smd4985 · · Score: 4, Interesting

    such as cell phones (J2ME) and Linux? From what I understand MS has no presence on cell phones (and there are a lot more cell phones than desktops) and they'll do their best to avoid needing to have a presence on Linux (i.e. bribe a down-and-out company to try and take out Linux in the courts).

    I think Sun has done a great job promoting Java on a variety of platforms, so I think McNealy isn't concerned about .NOT.

    --
    smd4985
  10. If I were to choose... by mnmn · · Score: 2, Interesting

    I would try my best as usual to avoid both. Say I have to produce distributed networked applications that are portable. I'll just use QT. Say it has to be used in embedded systems too. I'll use ANSI C using gcc compilers everywhere, and use #ifdefs to make up for the difference.

    Therefore, I'll save my company big bucks, since they'll use less ram and storage to save and run the code. They'll also need lesser CPU/MPUs.

    Say I have to work on an ERP system. The same combination comes up. I'll use a good database that runs on many platforms (DB2? Firebird? pgsql?) and the GUI frontend will use QT or glib or fltk or the likes.

    I havent found abstraction layers (virtual machines?) like .NET and Java to be efficient enough to be worth it. I'd rather hire more expensive coders who can do C/C++. I know it is 2003, but even for the most complex applications, I enjoy trying to run it on my Pentium 200MHz 48mbRAM 2GB hdd system with Windows 95 to check how lean and mean the code is. Just compare Opera with Mozilla and tell me what you like.

    --
    "Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
  11. Re:It's obvious by molarmass192 · · Score: 4, Interesting

    Sun's not a monopoly and don't make it sound like MS gave the entire .NET framework to the ECMA. Nope, just the C# langauge and the CLI, this would be like Sun turning over javac and java to the ECMA but keeping a grip on anything beyond Java primitives, it's a bullshit token PR jesture. The JCP is a far more public process for directing Java than anything we'll ever see from MS for .NET.

    --

    Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws-Plato
  12. Guys lets put the zeolotry aside for a second by Anonymous Coward · · Score: 1, Interesting

    I program windows applications for a living. The productivity increases from .Net are just amazing. Plus it grants easy access to the Windows API for any "bare metal" stuff you need. After the Swing travesty I swore off developing Java client applications on Windows forever. Is Java dead on the Windows desktop? Yes. Does C# vastly improve the Java library? Yes. Is Java in danger in niche markets like embedded software or true cross platform server side stuff? No.

    I swear its seems like 90% of the people who post to Slashdot never wrote a professional line of code in their life. The client doesn't care what language you use. They want something done as fast as possible for as cheap as possible that still meets their needs.

  13. There is no such thing as Java Programmer by SlashingComments · · Score: 2, Interesting


    I checked on Java on it's early days when Sun had Engineers. Henry Wong I think was ( about 5/6 yrs back, don't actually remember who else was there) conducting the seminars.

    Sun had a great promise. But, it is still a promise. I have seen so much bullshit around that language and half-progrmmers posing as object Gurus etc. etc. made me really sick.

    Saga continued, DOT.COM made our company rich but Java made us poor.

    We blew over 5 mil behind a product with good and bad programmers but still that product did to gain any ground. The we added some good marketing people ( yes they exist ) with lot of effort they made it barely sellable.

    If Sun were spending half as much energy behind the hardware division their stock will not be in single digits today !

    Now-a-days, when I go through resumes of new/experienced programmer, knowing Java AND not knowing C or PERL is a disqualification to me--these people will never get through the door.

    There is no such thing as Java Programmer--either you are programer and program whatever language come in your way or you are just a total waste of space.

    So, I guess, end of Java will end of lot of stupid people who should not have in the programming profession in the first place.

    whatever .... at lease by following this principle, I am having success in recruiting good programmers !

    --

    - People who believe other people have no right to live, got no right to live ...

  14. Re:Shoehorn by theNote · · Score: 2, Interesting

    I think MS is taking the opposite approach, but not on the size scale side.

    I am currently developing in .NET, and solves one real life problem that no other solution brings to the table, cross language compatibility.

    I can't remember the last time I had to develop a client (not web) application that had to run on 2 or more platforms.

    In all my years, no one has ever said to me "build me such and such and make sure it runs on unix and windows without recompilation".

    However, I have been on many teams where everyone knew a different language or paradigm.
    This is the problem that .NET solves.
    The VB and OO coders can finally work together and speak the same APIs.

    If .NET becomes truly cross platform, great.
    Can't say that it will make a difference to me since I guess I'm the only person in the world who knows what platform they are devloping for up front.

  15. Java is finished for most open source work by penguin7of9 · · Score: 3, Interesting
    I don't believe Java (by which I mean the entire Java 2 platform, not just the language) is "finished" as a commercial platform, but I think it is finished as an open source platform unless Sun makes some radical changes. Why?
    • Maintaining WORA and interoperability among implementations is the stated goal of Java, and Sun has put teeth into their licenses to try and enforce that. That is, even the Java specification is covered by a license that prohibits you from releasing your own non-conforming version. While that may or may not be a laudable goal, it is in conflict with the fundamental principles of open source that you can take stuff, improve it, and release the improved version. And I think it actually is harming the technical development of Java.

      Another way of looking at it is that Java is too encumbered by intellectual property--copyrights, patents, and licenses--held in part by Sun and in part by an industry consortium (JCP). Anybody that builds applications on top of Java becomes as dependent on Sun as people who write Windows software become dependent on Microsoft. While there are plenty of open source projects for both Java and Windows, ultimately, that is not a good state of affairs for open source developers.

    • WORA brings with it a lot of costs but few benefits for Linux developers. When I write a Linux desktop application, I want it to work well on Linux, I don't care about whether it runs on Windows. But if I use Java, there are all sorts of Linux desktop and Linux kernel features I can't access. And the entire design of Swing and Java2D is based on a Windows/Mac-like local display model, something that simply does not work well with X11.

      WORA made sense for Java's original purpose in life, that of a thin, universal client platform. WORA makes no sense for Linux developers trying to develop high-quality Linux applications. (And, frankly, I think Windows programmers are saying the same about Java on Windows, which is why .NET will probably be more popular with Windows developers).

    • Java is just not a very convenient language to program in. For most needs, something like Python, Perl, PHP, or Ruby is simpler. And when those are not powerful enough, people just drop into C/C++ anyway.

    Java held a lot of promise for open source development at one point, but I think that's over now. The Java platform will continue to be used widely in many commercial (and some free) server-side applications. Subsets of Java will be used in teaching and research. And you will see more and more partial clones of Java appearaing. Open source will probably continue with a mix of languages. gcj+SWT, which implements the Java language but not the Sun APIs, may achieve modest popularity. Mono+Gtk# may become fairly popular (but the .NET clone that is part of Mono probably won't--both for legal and technical reasons).

  16. Re:Java vs. .Net by jimfrost · · Score: 4, Interesting
    After all, it hasn't during the 3 years its been out.

    Technically .NET wasn't released until a year ago last spring. It's only been out about 18 months. Last fall it was clear that people using .NET were very early adopters, but uptake seems very strong.

    To be honest, Java on embedded devices doesn't seem like that big a win to me at the moment, no matter how many cellphones they're trying to ship with it. Most Java in use is on the server side. And that is a big differentiator between Java and .NET: Java runs on pretty much any hardware you care to throw at it, which means you can scale your server from that itty-bitty Pentium box up to the biggest stuff Sun sells. With Windows you've got midrange Intel boxes and ... midrange Intel boxes. Little per-box scalability, and that means that large systems are going to be a pain to manage - particularly given how hard it is to manage Windows servers in bulk.

    I can see .NET being useful for small servers that need to be put together quickly and cheaply; VS.NET is great for that. But it's not really there yet for big systems, both in terms of framework maturity and OS scalability and stability.

    Mostly I think we'll see .NET be used in building GUI applications in the near term. Let there be no mistake, it is phenomenal at that.

    --
    jim frost
    jimf@frostbytes.com
  17. Re:Java, my abusive friend by throbbingbrain.com · · Score: 2, Interesting
    Came back with more knowledge and was disappointed by speed (ran on a slow machine while trying IDEs from Borland and Forte)
    Most newer IDEs provide far more functionality than anyone needs while learning tha language or working on simple applications. That contributes to the long startup times and some of the complexity.

    The MS Visual Studio .NET user interface is also quite slow unless you throw some serious hardware at it. 2GHz+ CPU, 1GB+ RAM to make it a bearable experience.
    Anyone know any good/quick IDEs for Java? (that would install on a RH9 distro, that is)
    Try Netbeans.
  18. Interview with Anders Hejlsberg by hackrobat · · Score: 5, Interesting
    Earlier this week, artima.com published an interview with Anders Hejlsberg, lead architect of the C# programming language. Hejlsberg, interviewed by Bruce Eckel and Bill Venners, talks about the C# design process, the trouble with checked exceptions, and his idea of simplexity .

    C# is one programming language I've stayed away from--and for no particular reason. I had picked up the C# specification [PDF] in 2000, but never really got down to the canonical "hello world" program. Today in 2003, as I look back, I guess I haven't missed much.

    Let's go back to August 2000 and revisit Hejlsberg's famous O'Reilly interview by Josh Osborn.

    Why are there no enums in Java, for example? I mean, what's the rationale for cutting those?

    And Java has enums now, just like they come in C#.

    one of our key design goals was to make the C# language component-oriented

    I think this was really nice, and fitted in well with Microsoft's COM framework. I remember COM enthusiasts mentioning how every C# object would automatically be a COM object, thereby eliminating all that old school drudgery.

    C# is the first language to incorporate XML comment tags that can be used by the compiler to generate readable documentation directly from source code.

    Python and Java have docstrings (or javadoc) as part of the language.

    Developers are building software components these days. They're not building monolithic applications or monolithic class libraries.

    Developers are building all sorts of stuff, and not just "components". I think that statement is overrated.

    Boxing allows the value of any value type to be converted to an object, while unboxing allows the value of an object to be converted to a simple value type.

    Thanks, now Java has it too!

    Unsafe code allows you to write inline C code with pointers, to do unsafe casts, and to pin down memory so it won't accidentally be garbage-collected. [...] The real difference is that it's still running within the managed space. The methods you write still have descriptive tables that tell you which objects are live, so you don't have to go across a marshalling boundary whenever you go into this code. Otherwise, when you go out to undescriptive, unmanaged code (like through the Java Native Interface, for example), you have to set a watermark or erect a barrier on the stack.

    Honestly, I didn't understand the stuff about "unsafe code", the implementation of IL, and the implementation of generics. Just for comparison sake, Python also has a scheme for inlining C and C++ code.

    Let's face it, some people like to program in COBOL, some people like to program in Basic, some like C++, and some will like C#, I hope. But we're not trying to tell you to forget everything you ever did.

    I've raised this point to Java bigots on several occasions. It's just too difficult (and sometimes impossible) to interface Java with other languages. (In this context,

  19. Re:Shoehorn by Fnord · · Score: 5, Interesting

    I'll agree with client side stuff, but I've been in a situation in the past where we developed a server size web app (in J2EE) on a single nt4 server (purely for ease of access). Then when we went gold, capacity grew and it moved to a cluster of linux servers. Then when the business picked up and capacity grew in large amounts we moved to a couple Sun E6500s. .NET wouldn't have allowed us to migrate like this.

  20. Re:.net is great if your already an MS shop by jrst · · Score: 2, Interesting

    It was originally intended to illustrate various Java technologies and the application of those technologies. It was intended to be a *teaching* tool.

    To take such an illustrative example, rearchitect it, then make any claims about efficiency, is/was ludicrous. Like taking sample code out of a book on Java, and then showing how an expert .Net programmer can do it so much more efficiently.

    Do some more research and you'll find that the Petshop project has been completely discredited as a comparison of Java and .Net.

  21. Re:Java's not exactly pining for the fields just n by KyleCordes · · Score: 3, Interesting

    By coincidence, I gave a talk on how Java and .NET compare, just a few days ago:

    http://kylecordes.com/story-260-java-net-talk.ht ml

    One thing with the SD Times identified as a source of trouble (the size of the included libraries), I identified as a strength: .NET has a lot of things "in the box" that a developer / team needs to go find, select, download, install, etc. for Java. I personally like the best-of-breed approach that can result from that (choose from the many SOAP implementation, choose the best one for our needs), but for many developers, having a good-enough solution "in the box" is more palatable.

    This is particularly exacerbated in some development shops where extensive format decision and permission processes are needed to make any third party tool purchase (or free software adoption).

  22. Competition by jj00 · · Score: 2, Interesting


    I'm posting late, so I doubt anyone will read this:

    .NET might be the best thing to happen to Java. Finally, there is some competition to Java. Sun and MS will try to make their baby the easiest / most powerful to use.

    Java has needed this for a long time. Ever noticed how long it took to get a For...Each statement in Java?

  23. Re:hmm lets look at jobs on monster by thebatlab · · Score: 2, Interesting

    So you've shown that .NET jobs are close to J2EE jobs, yet C# jobs are lower than Java which to me shows, in a way, how you can use the .NET platform and not be tied down to one specific language.

  24. Re:Java's not exactly pining for the fields just n by CommandNotFound · · Score: 2, Interesting

    If Sun keeps the enhancements coming and works to bring the development environment up to Visual Studio's standards (Yes, VS has its problems, but it has a lot of unique tools, like compile-and-continue, which save hours!), Java may well survive.

    Check out Eclipse for Java development. The workspace/perspective paradigm will take a day or two to get used to (plus the different key bindings), but this is a really nice IDE. I'll wager that MSFT will be copying the "lightbulb" feature of Eclipse that shows you a list of possible solutions to the problem, alongside a preview of the code changes this will entail. Very slick. The GUI could be a little more responsive, though, but so could VS.Net 2003 on a 1.8GHz P4.

    I don't think it has a form designer, but for the big projects Eclipse is geared toward those can be more liability than asset.

  25. They should fix their marketing by t_allardyce · · Score: 2, Interesting

    What?? .NET is a programming language?? I had no idea, i tried to read the Microsoft marketing crap but i couldnt figure out what .NET was other than an "enterprise solution" (something we're trying to sell to big companies), a "set of software technologies" (something that comes on a CD) and a "new generation of technology" (upgrade from whatever we sold you last year)

    --
    This comment does not represent the views or opinions of the user.
  26. Re:Shoehorn by Directrix1 · · Score: 3, Interesting

    You're premise is flawed. You act like .Net is some kind of miracle Rosetta stone. Far from it. If your going into a project that you want to be an all java project, you have the developers that don't know java, learn it. Now if you have a group of developers and they all know C, C++, Perl, Java, whatever and you want their project to be a .Net project. Then every single one of them is going to have to relearn their tools because they have to learn how to use the CLI in addition to their preferred language. And then after your project is complete, you have a hodge-podge, a patchwork quilt of a system in which you are eternally going to need each kind of developer on staff in order to make modifications. This is exactly the opposite situation with java, where standardization of language and libraries make bringing in new developers almost trivial. .Netization might be touted as the end to all woes, but in the long run it can bring about many more woes than you ever knew you had. So what are the drawbacks to using java? People who don't know it have to learn it. Thats it.

    --
    Occam's razor is the blind faith in the natural selection of least resistance and in universal oversimplification. -- EF
  27. Re:Java vs. .Net by jimfrost · · Score: 2, Interesting
    Heh, that's probably because Microsoft was sticking the .NET label on everything for awhile.

    If you ignore that little bit of marketing idiocy then .NET comes down to being Microsoft's take on Java. In fact, it's derived from Microsoft's version of Java. When Sun sued Microsoft over compatibility issues Microsoft didn't just throw that work away, they changed it into .NET.

    What they did, and this is clear from the VM language and APIs, is take the JVM pretty much intact and renamed the class library packages, classes, and methods using a slightly different naming scheme. If you know JDK 1.1 you are already familiar with a lot of the .NET foundation classes except that the packages have moved around.

    On top of that Microsoft added some data management classes (not all that different in concept to JDO), a hell of a lot of UI and forms-management classes, web service support, and lots of XML support. And of course they integrated this well with their IDE.

    Aside from doing a very good job with UIs, ASP.NET is hugely improved over the previous version of ASP (which, IMO, was disgusting). They still have pretty minimalist support for sessions if you ask me, but then again stock J2EE isn't really any better.

    So: It's Java, with extensions both Windows specific and generic, with multiple source languages, and a nice IDE that has a bunch of code generators built in.

    Getting back to this stuff being derived from Microsoft's version of Java, I think that in the long term Sun's lawsuit against Microsoft for "polluting" Java (which, in any objective view, Netscape was far more guilty of) will prove to have been a very big mistake. Back when Microsoft was trying to do Java Sun at least could control to some degree what direction they went. By forcing Microsoft to abandon Java entirely they are trying very hard to leverage the technologies to their maximum advantage.

    And, to put it bluntly, they are doing a much better job of it so far than Sun has. Sun still has a huge edge in many areas due to J2EE's maturity, but I wouldn't expect that to last all that long.

    Personally I think this is great because it means that we're going to have to see rapid development of usable systems in Java land, something we really haven't seen in years.

    --
    jim frost
    jimf@frostbytes.com
  28. Re:Isn't that pining for the fjords? Anyway... by ADRA · · Score: 4, Interesting

    Just to clearify, I am a low level hacker with C on the brains. I am not a bread and butter VB guy. If I wanted to make a quick and dirty GUI though, I could use VB 6 because my company owns it but more importantly, there was no complexity at all. Almost half the things I did were in the realm setting property X to value Y. Simple, quick, done.

    VB is not as much a programming language that became a GUI, but a prototyping tool that became a programming language. The move to VB.NET has taken away all the language simplicity making it a fully fledged language, but made it difficult enough to negate its benefits over other products that fall within its same niche. I do my quick and dirty GUI's in Jbuilder now. If I have to use a fully fledged language, I would rather use a portable one.

    --
    Bye!
  29. Re:Web Applications Suck by lp_bugman · · Score: 2, Interesting

    That's a very GOOD point! The thendency now is to develop everything with a WEB front end but why???

    I'm fairly sure you don't need your accounting program with web interface and don't forget that inventory program developed with ASP ??

    What the F*!!!

    Some interfaces are just ackward if they are implemented as web applications.

    Please STOP trying to write everysingle thing for the web. Only a small percentage of applications benefit from it.

    Even for applications where you realy need to show web result to your clients... they can be just "REPORTING and CONSULTING" addons to your application not the hole fundation of it!

    --
    BSD licensed software can't be stolen....
  30. Re:Web Applications Suck by kalislashdot · · Score: 2, Interesting

    I would have to agree. All my professional life has been writing web-based apps. My current company has been for years trying to move everything to web-based so that way we aren't looked down to a certain desktop OS. The problem is that our new CRM uses a lot of Javascript to do all the complex stuff a web page can't do, so complex it only works right in 1 browser, guess which one. Thats right IE. This totally destoys the previous vision. My CIO knows jack shit and I will laugh when this all fails. I just jumped ship, away from the web department and to security department. I saw that ship sinking.

  31. Re:Slow cumbersome process by roca · · Score: 3, Interesting

    > If you'd like a demonstration of the difference
    > between the run-time execution of .NET vs Java,
    > pick your favorite VM and run Forte, then run
    > Visual Studio .NET (it's written in C#)

    That is a lie. VS.NET is not written in C#.

    > There is a lot of FUD being disseminated about
    > "Microsof is going to sue Ximian, et al. for
    > Mono" blah,blah,blah. That's not going to
    > happen.

    Your omniscience is impressive.

    Microsoft has gotten EMCA's stamp on C#, the CLR, and the basic Framework, but they still control them with an iron grip. When .NET's behaviour differs from the ECMA spec, who's right, ECMA or Microsoft? Who gets to decide how things will evolve --- ECMA, or Microsoft? And of course .NET is much more than what ECMA has blessed. I doubt we'll see ADO, ASP.NET, System.Windows.Forms or a bazillion other APIs that you need to write actually useful applications in ECMA anytime soon.

    Even if you're willing to go beyond ECMA and port the Microsoft proprietary APIs to other platforms, the fact is that System.Windows.Forms is absolutely NOT a cross-platform GUI toolkit. The Mono guys are implementing it by sucking in WINE! There is simply no Microsoft-blessed cross platform GUI toolkit for .NET.

  32. Re:Shoehorn by Fnord · · Score: 2, Interesting

    Just more capacity. The NT4 box was just for convenience, it was what the developers had on their desks. The linux boxes were our first production environment, but turned out not to be powerful enough to handle everything when we got more traffic and the app got more complex capabilities. When we went to the e6500s it was actually a mixed environment. We had some things running on those e6500s, some things stayed on the linux boxes. Mind you, this could have been avoided by better planning, but java's portability let us do a bit of exploring first.

  33. Re:.NET vs. J2EE presentation... by Anonymous Coward · · Score: 1, Interesting
    I would say the statements dispelling the FUD about java are right on. The statements against .NET are half truths or pure distortions. I've been developing with java for 4+ yrs now and I have 1 yr of .NET experience. C# and ASPX is a welcome upgrade from plain ASP + MTS + IIS + ODBC. But I've already found tons of flaws. For example, the sqlxml support in Sql Server is 250x slower than non-xml driver. The performance of XmlTextReader is good if you ignore 80% of a message, but if you actually use 90% of the nodes in a message there's absolutely no difference in performance compared to Java. .NET webservices is document oriented and is difficult to scale. I'm currently working on a project that is completely webservices. The throughput between webservices on different server absolutely sucks nuts. From my understanding, MS still doesn't recommend using .NET remoting as the primary protocol for webservices. You can use it obviously, but the default mode is SOAP and XML. SQL Server with SqlXml with 10 clients will max out the CPU utilization like mad. Yukon still won't have real clustering that works. Yes, I know you can have one way clustering working with tweaking and careful configuration. I'd rather write a database abstraction layer that sends update/inserts to a warehouse database than rely on Sql Server replication. By no means can it do real clustering that is two way like DB2, Sybase and Oracle.

    There are a lot of great things happening in the Microsoft world, but the marketing hype totally distorts technical terms so that they mean nothing. Take the term real-time OLAP. If you use real-time ROLAP, the performance is horrible and ends up creating a ton of threads. The cost of context switching jacks the CPU usage up to 90%+. If you use MS Analysis Service with MOLAP and a set interval refresh the performance is way better. But here is the catch. Don't try it with a database with more than 20 million rows of data. Anything under 1 million rows is fine, but over that you're going to see a huge performance drop off. The same is true of Biztalk and the other servers in the .NET family. Anything that isn't truly concurrent request is fine. Again, this all goes back to the core of windows threading/scheduling model. Even with 4 2ghz CPU, sql server can't handle huge datasets and scale up gracefully. The only way to get it to scale gracefully is to use COM+ on the client side to queue the queries and not overload Sql Server. Once you overload Sql Server it will hose itself.

    so what does this all mean? If you want a fast, rich and good looking fat client, use C++. But if you want portability, use Java. If your loads are tiny, as in 1-2 concurrent requests at peak, then you're fine. Anything over 10 concurrent requests that does moderate lighting will not scale well. It can scale, just not well. You have to spend considerably more time to stabilize and tune .NET to get it to scale well than the equivalent Java solution.

    people should look at their project requirements, budget and development time. choosing one or the other because of marketing is stupid. doing what works best within your given constraints is the professional way to do it.

  34. Re:Not up to the developers... by AstroDrabb · · Score: 4, Interesting

    This isn't always true. I am a developer for a fortune 500 company and we just finished a huge Java vs .Net comparison. The company brought in a lot of outside opinions and had us devlopers give opinions as well. Of course an MS rep was there telling the tall tales to all the PHB's of how .Net would make us 10x more productive and save us millions (just like the commercials), though the figures did not include all upgrade costs for Win2003 Server and WinXP cost. When it was all said and done, just about everyone picked Java, except for the MS rep and a few VB/ASP only type guys who don't have the technical ability to program much more then a few asp pages. It all came down to Java is proven to be stable and secure. MS and their technologies have not and especially .Net. We also have many mission critical apps that just cannot be trusted on an MS platform so they run mostly on Solaris and now some Linux boxen are popping up. Java gives us the ability to choose the right tool for the right job. .Net would have locked us in to just MS and severly limited choices. Once we as developers got that point across to the PHB's, they were able to see the light.

    --
    If Tyranny and Oppression come to this land,
    it will be in the guise of fighting a foreign enemy. -James Madison
  35. no one will care, but the big by f00zbll · · Score: 2, Interesting

    problem with .NET is Microsoft is still encouraging bad development habits. I can tell you first hand from reading ASP.NET code written in VB that it is horrendous. Most of the examples included with .NET do not use good OO practices for the C# examples. The worst part is it encourages the same lazy hard to read coding practices. Without fixing that, it won't make .NET any cheaper, it's just another trick to milk more money from customers.

  36. VS.Net to compile Linux... by thedugal · · Score: 2, Interesting

    Yes. Get yourself a cygwin setup. Create a Makefile win32 project in VS.Net. Set your PATH and other ENV vars in the VS preferences, then setup your makefile to use GCC. You will have to edit your makefile manually whenever you add to your project unless you write a plugin. Nonetheless, you will be smiling after your first project.

    The IDE absolutely kicks arse. Most of the arguments here appear to boil down to VS.Net sucks because it's cool to hate Microsoft.

    If you are running pure Linux and can't abide Microsoft for whatever reason, I suggest you get Anjuta. Anjuta is great for building Linux projects particularly of the gnome variety.

    As a sidenote, I just finished a rather large project using JBuilder, and I must say that I like it very much. I still think VS.Net is the #1 IDE on the market, but for java, JBuilder is quite nice.

  37. It's really quite simple by FunkyMonkey · · Score: 2, Interesting

    I just did a job search on monster.com:

    c# - 704 results
    java - 4398 results


    Yeah, there's just SO much more demand for .NET programmers...

  38. Sorry, .NET is good... even if it is from MS. by Anonymous Coward · · Score: 1, Interesting
    Let's take this point by point...

    The battle for the hearts and minds of developers is heating up, with .NET starting to compete fiercely with Java. The war is being waged mostly inside corporations -- department by department, and project by project. True, many companies will use both technologies. But because Java traditionally is considered more complex and difficult to use, .NET will have the edge in some head-to-head comparisons.

    Ease of use is not the only advantage .NET has over Java. A more refined and advanced security model, greater flexibility in platform specific optimization, arguably richer class libraries, arguably better performance, better garbage collection system, etc.

    On the other hand, developers who want cross-platform interoperability will take Java, hands down.

    Yup. Right now, .NET is really only full blown on Windows. It has some beta level support on Linux (via the Mono project), and has decent support on BSD-based OS's like MacOS X, FreeBSD, and OpenBSD, but some of the best features of .NET (ASP.NET, ADO.NET, WinForms) aren't yet fully implemented on any platform but Windows.

    Can Microsoft (Nasdaq: MSFT - news) blow Java out of the water? Not likely. But even Sun Microsystems (Nasdaq: SUNW - news) recognizes that improvements to J2EE and other Java technology will be key to holding on to and increasing the Java developer base. For Sun, the next two years represent a critical time in the maturation of Java and its market position.

    It wasn't likely than Sony would blow Nintendo out of the gaming market either, but it happened. For Windows development, the game is pretty much already over. .NET will be the clear winner. As far as Microsoft is concerned, that was the goal from day 1. Getting non-Windows development onto .NET is an added bonus if it happens at all.

    .NET's ease-of-use characteristics are forcing Sun to try to simplify Java development. When J2EE first came out, there were many developers using distributed computing, so J2EE was targeted at a very high-level developer, said Ralph Gallantine, group marketing manager at Sun. Now, however, Sun is trying to make J2EE development easier. (J2EE is Sun's standard for delivering multitier enterprise (news - web sites) applications.)

    I don't really see how Java/J2EE is targeted at "high-level developers" and more than .NET is. It's certainly more "high level" than Visual Basic, but that's not saying much. Java can be difficult only because most of the development tools suck. (No, not including Eclipse. Relax.)

    The first fruits of that effort will come in J2EE 1.4, which will include an expression language for development that uses scripting instead of programming language, as well as a standard tag library, Gallantine told NewsFactor.

    Cool. But ASP.NET is a lot more than a standard tag library, which is what I'm assuming Sun is trying to target with these improvements. Doesn't JSP already have tag library capabilities? Can't you already develop your own custom tags? At any rate, the scripting stuff should be interesting, but it's something that .NET can already do.

    J2SE (Java 2 Standard Edition) 1.5, scheduled for beta early next year, also will boast ease-of-use features. "It will allow developers to use less code to write the same functionality," said Karen Shipe, product line manager at Sun. For example, J2SE 1.5 uses generic types that enable developers to avoid having to code in a specific data type each time they want an application to access data. And J2SE will offer monitoring and management features for sysadmins, including better error messages, stack traces and new logging capabilities.

    Generics rule. The next version of .NET will have them as well. But they hardly make programming easier for

  39. Re:Java vs. .Net by timeOday · · Score: 2, Interesting
    To me, ".Net works on Microsot" would imply that the average .net application could be run on something other than Microsoft. Until that is true, the rest is just lip service.

    Microsoft said MFC was cross-platform compatible. They said DCOM was cross-platform compatible. I suppose some weak argument could be made in either case, but let's face it, no software from MS will ever be portable in a useful way. They don't want it to be.

  40. Re:Java vs. .Net by timeOday · · Score: 2, Interesting
    Sorry, I meant to say that to me, it's true that .NET only runs on MS, until the average .net application could be run on something other than Microsoft.

    Shoulda used the preview button!