Discussions

News: .Net: 3 Years of the 'Vision' Thing

  1. .Net: 3 Years of the 'Vision' Thing (54 messages)

    3 years have gone by since .NET was launched. Peter Galli writes about whether it has been a success, or a failure. One analyst claims that: "Three years later, most of the hopes behind the .Net initiative have not been realized," adding that .Net has now almost vanished from Microsoft's vocabulary. Microsoft disagreed, saying that they took .NET out of their vocab as it is now assumed.

    .Net: 3 Years of the 'Vision' Thing

    Slashdot has got a lively discussion going (as you would probably guess). People are talking with views on both sides, and there are some interesting comments mixed in there.

    Discussion on Slashdot

    Threaded Messages (54)

  2. Oh, great. Now slash-dot is going to get "serversided". If it goes down, we're holding you guys responsible.

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Easily share live data across a cluster!
  3. I certainly would not discount .NET just yet :-) Given the fact that .NET is quickly becoming standard de-facto on Windows client (an obvious strategy by MS) and many studies predicting .NET in one form or another in nearly 50% enterprises in the couple of years, .NET is the only platform that’s competing with J2EE regardless many current shortcomings of the initial version.

    In my company we address Java and .NET in a very unique way and practically every potential customer we talked to has something going on with .NET in some shape or form.

    And lastly, anybody who knows COM/DCOM world would acknowledge that .NET is enormous technological achievement for company like MS that up until recently had no clue what server side development is. And as history shows – they are good in learning their lessons…

    Regards!
    Nikita Ivanov
    Fitech Labs.
  4. .Net: 3 Years of the 'Vision' Thing[ Go to top ]

    It seems the article talks about the .Net initiative (not the .Net developement platform) at first then the developement platform then back to the broad use of the term. .Net (as in the framework and VS.Net) is still going strong in MS circles.

    I guess we need to make sure we differentiate. Nikita, you are talking about the .Net Framework and VS.Net and I think the article is mainly addressing the initiative. The initiative has faded.

    I've been struggling to get my MS only clients to go to .Net (development). Some are finally going to move to it in some fashion.
  5. .Net: 3 Years of the 'Vision' Thing[ Go to top ]

    <mark>
    Nikita, you are talking about the .Net Framework and VS.Net and I think the article is mainly addressing the initiative. The initiative has faded.
    </mark>

    Sure, I think that marketing failure was a near-death experience for MS as far as .NET goes and they quickly realized that. To narrow my scope I’d say that when I’m referring to .NET I’m referring to .NET SDK (and supporting technologies).

    VS.NET is inferior product in many respects. Working simultaneously for two years with Eclipse and VS.NET I’ve come to realize that sometime that long experience and wealth of resources are not deciding factors. It’s alarming to see how VS.NET lags behind Eclipse in almost every category…

    Regards,
    Nikita Ivanov.
    Fitech Labs
  6. .Net: 3 Years of the 'Vision' Thing[ Go to top ]

    VS.NET is inferior product in many respects. Working simultaneously for two years with Eclipse and VS.NET I’ve come to realize that sometime that long experience and wealth of resources are not deciding factors. It’s alarming to see how VS.NET lags behind Eclipse in almost every category…


    I've been using both two (in addition to VS6). I would tend to agree. I think too many are blinded by the flashy glitz. But still, for those who are "MS shops", it is a major leap forward.
  7. I agree with Nikita, I also work simultaneously in Java and VS.NET (VB.NET) for last two years and using Eclipse since its 2.0 release.
    VS.NET does not come anywhere close to Eclipse. I feel MS should concentrate of MS Office tool set and VB/VB.NET desktop app only.
  8. VS.NET and Eclipse.[ Go to top ]

    May be i'm missing something but WebForms in .NET are years ahead of anything in Eclipse/Java. They maid it as easy as VB forms, not to mentions huge number of WebControls.
    How do you compare it to Struts for example? Struts has only primitive HTML Controls while .NET has rich set of WebControls that go far beyond HTML forms. No WYSIWYG Web forms designer - have to use separate tools. No standardatized ways of handling events in Actions. And that's only with Struts. What about other Java web frameworks?
    I've been doing Struts/JBOSS for last year and when i first tried ASP.NET i was shocked by it's easiness.
  9. You're probaby right[ Go to top ]

    Your're probably right, Java tries to catch up with Java Server Faces, but is still behind.
    But I have a question - how do these rich Web controls behave in non-IE browsers? Aren't they problematic? I would expect so.

    Best regards,
    Piotr
  10. You're probaby right[ Go to top ]

    A web form produces HTML in the end – its compatible with all browsers to some extent, but doesn’t actually do anything you can’t achieve with pure HTML. You can get some nice looking results, but my experience has been that its really problematic to build a large-scale app with .NET. (And you still can’t use the built in session object in a web farm because session information is stored in memory on the web server and MS’s load balancing doesn’t control delivery of bound sessions).

    I’ve noticed that the take up of asp.net still seems to be pretty low even on MS sites – I’m always amused when I come across a “how to do something wonderful with .net” article on MSDN that is in “classic” asp rather than asp.net (and how many none MS sites to you know that have the tell-tale aspx page extension?) Given that (according to this article) .NET is 3 years old I’m quite surprised by how little it has really progressed...
  11. You can use Session on web farms. Just put the following text in your web.config:

    <sessionState mode="StateServer" stateConnectionString="tcpip=myStateServer:myStateServerPort"/>

    Or, if you prefer:
    <sessionState mode="SQLServer" sqlConnectionString="sql connection string"/>
  12. Well yes but both options mean that all my session info. is now stored on a single box so I have a single point of failure for my entire web farm, I probably need an additional dedicated server just to store the session info, and, for option 2, SQL server running on it. This is better than the previous asp approach (where you couldn’t work around the limitation at all) but it still isn’t ideal.
  13. www.microsoft.com is using ASP.NET. Admittedly, they're mostly generating HTML from XSL stylesheets, hence the asmx extension. But many of MS' new or actively developed sites are on ASP.NET, e.g., msdn.microsoft.com.
  14. Sure. I wasn’t saying that MSDN doesn’t use any asp.net, and I wouldn’t have expected them to migrate all their prior content to it. But I am surprised at how many articles still appear to be rendered in older version of asp. A quick glance at the asp.net page on MSDN shows it has two new articles (“Improving Web Application Security: Threats and Countermeasures” and “Explore speech-enabled versions of two popular sample applications”) which are both asp, and two others which are using asp.net.
  15. Hey, hey, hey. Let not this discussion rollercoast-eth into pure MS-land.

    That said - I remember a discussion recently about ASP.Net and Java web application frameworks on TSS. One of the points that was brought up is the difficulty in implementing coventional Model 2 MVC systems WHILE using the WebForms (Controls+Events+Viewstate etc) technology.

    (Read this next line before you bite me) Of course, there is nothing stopping a .Net developer from inheriting behavior in code-behind classes that "mimics" centralized controller systems. Meaning you could build in generic logic into a "controller" class library that provides a structured approach to redirection, error-handing, authentication and authorization and so on. That said, the lack of centralized controller based systems (ala Model 2) make the ASP.Net platform complex to build applications with.

    (Psst. Try changing a hyperlink/redirect + application processing behavior in 10 places with two simple changes to an XML mapping file in ASP.Net. I do it all the time with Webwork and Maverick)

    So, given the absence of any libraries that do this very well today in the .Net world (except for Maverick.Net which really is a port of a Java framework), I really prefer developing in the J2EE world.

    If my customer gives me a choice. :-|

    For example, I think that MS development technologies do NOT provide sufficiently clean & mature abstractions that can deal with issues of declarative transaction management and data access in applications. Please don't go on about Datasets and how they are the greatest thing since sliced bread. They are not. Also don't talk about System.EnterpriseServices - talk to me after you've used them in a large .Net application.

    Take a look at Microsoft's recent architectural revision for their Petstore - they have moved to using something that looks fiendishly similar to DAOs, a construct used in the Java world since Pythagoras' time (ok, ok, maybe a couple of years after that). While there is nothing in the DAO design pattern that limits it to the Java world, it gained global popularity primarily due to its use by Java programmers. Microsoft's earlier "data access block" was pitiful.

    The bottom-line to all this rambling is that: Microsoft may have released isolated pieces of kick-ass technology of the kind that typically goes into building cool applications. But they don't have the whole set.

    Java does. To be more precise, J2EE does.

    Today. Now. This moment. Hurrah!

    In fact, not only do you have solutions for various "enterprise-class" problems (like messaging, declarative transaction management, object relational mapping, integration technologies, Model 2 MVC, object caching, clustering) in the J2EE realm, you have MULTIPLE solutions. Meaning you have choice.

    What are my choices in the .Net realm? While the situation is probably getting better (kinda/sorta), choosing Microsoft usually means signing away "your general ability to make choices". Which is why I maintain that the proverbial "signing your soul away to the devil" phrase in the MS context has concrete manifestations as far as physical, day-to-day reality goes.

    It's funny. AFAIK, the best application building tools and frameworks I know of today in the .Net realm are mostly ports from existing, mature frameworks originally written in Java. Maverick.Net, NUnit, NAnt, and a bunch of others.

    Is there anything stopping MS from building the perfect tool set? Probably not. But I'll believe it when I see it.

    Sandeep.
  16. <!--Java does. To be more precise, J2EE does. -->

    I agree, Java/J2EE is much mature framework than .NET. But Sandeep try to compare apples to apples not apples to oranges. In the stack of .NET and J2EE, definitly J2EE is much mature at middleware and Datatier. But when it comes to presentaion tier, JSP and even JSF are way behind .NET. Webforms, Codebehind, caching web controls have no match in J2EE, and Java have to learn from .NET like .NET learned it from Java.

    I heard lot of buzz about complexity in middle tier and data tier, but no body cares much when it comes to complexity at presenation tier in Web based applications. Bilieve me maintaining and coding presentation tier is as daunting task as the rest of stack in enterprise applications, and .NET tried to resolved that problem ahead of J2EE. Are they succeded or not only the time will judge it.

  17. Webforms, Codebehind, caching web controls have no match in J2EE, and Java have to learn from .NET like .NET learned it from Java.


    See Tapestry and Echo. Maybe not the same but as good if not better. Don't forget to compare .Net with Java APIs not VS.Net with Java APIs.
  18. <quote>
    I agree, Java/J2EE is much mature framework than .NET. But Sandeep try to compare apples to apples not apples to oranges. In the stack of .NET and J2EE, definitly J2EE is much mature at middleware and Datatier. But when it comes to presentaion tier, JSP and even JSF are way behind .NET. Webforms, Codebehind, caching web controls have no match in J2EE, and Java have to learn from .NET like .NET learned it from Java.

    I heard lot of buzz about complexity in middle tier and data tier, but nobody cares much when it comes to complexity at presenation tier in Web based applications. Bilieve me maintaining and coding presentation tier is as daunting task as the rest of stack in enterprise applications, and .NET tried to resolved that problem ahead of J2EE. Are they succeded or not only the time will judge it.
    </quote>

    Architecting applications using ASP.Net is as easy people claim it is. Try and compose a page out of several smaller pieces. Try posting data from a page with a bunch of Web controls to another (without resorting to intermediate storage of the data). Try adding lots of custom validation to a web control.

    More importantly, your assumption that comparable+usable features don't exist in the J2EE realm is incorrect. Webwork has UI tags for Html controls, for instance, that allow validations as well. e.g. p><webwork:tabbedpane id="tp" contentName="'tabs'" tabAlign="'RIGHT'"/></p>
     
    As for Codebehind, what with beans, controllers and models, I don't need Codebehind. IMHO, Microsoft created ASP.Net as an extension of conventional thick client programming models. This is all very good, and looks easy to work with. But I've used it extensively. And I think I'll default to Java if I've an option, thank you.

    As a mercenary consultant, I've absolutely nothing against .Net being wildly successful. Hey, more power to Microsoft if they do pull it all off.

    Catch is - .Net doesn't come close to meeting my overall needs right now. Java and J2EE do. And these needs extend beyond the presetation layer. It's the "package" that counts. The "whole deal".

    Besides, there's this thing about portability that's not necessarily on top of Microsoft's priority list.

    Sandeep.
  19. <quote>
    More importantly, your assumption that comparable+usable features don't exist in the J2EE realm is incorrect. Webwork has UI tags for Html controls, for instance, that allow validations as well. e.g. p><webwork:tabbedpane id="tp" contentName="'tabs'" tabAlign="'RIGHT'"/></p>
    </quote>

    Sandeep Webwork might have all the functionality and more, but it is not part of the standard J2EE framework.This is one of the biggest problem (in my personal opinion) with Java, every one is writing his/her own framework,what happened to the logo learn once and apply every where. Long time ago we all agreed on one interface, that was why Java was so popular and that is the key to portability.

    <quote>
    As for Codebehind, what with beans, controllers and models, I don't need Codebehind.
    </quote>

    BTW codebehind and Java beans have no comparision. Codebehind falls into presentation/view stack on the other hand Java beans falls into Model stack, at least according to my understanding.

    <quote>
    Webforms and codebehind is a very poor remake of what Apple did with WebObjects more than 5 years ago. Only the VS IDE is nicer than WOProjectBuilder
    </quote>

    Could be very true, but at least MS is trying. Besides that I personally think it is ridiculous and very tidious to write your presentation tier in HTML. It's just like writing your code in machine language. I think it is really nice to code your html controls as Objects in a high level language (codebehind approach) and let them spit the html.
  20. BTW codebehind and Java beans have no comparision. Codebehind falls into presentation/view stack on the other hand Java beans falls into Model stack, at least according to my understanding.


    Um, er, that's not what I said - I said the "combination" of the three elements I mentioned obviates the need for a construct such as Codebehind for me.

    Sandeep.
  21. Sandeep Webwork might have all the functionality and more, but it is not part of the standard J2EE framework.


    "Standard?" So are you are implying Asp.Net, a proprietary technology from Microsoft is standards-based?

    Rashid - there is a world of difference between a technology that has no competition by virtue of its being a "product offering" from a "single vendor" and therefore is the only entry in its class in the running, and a group of vendors around the world rallying to create a specification to increase the "level of homogenity" in solutions built using "competing products" that they offer.

    Sandeep.
  22. <quote>
    there is a world of difference between a technology that has no competition by virtue of its being a "product offering" from a "single vendor" and therefore is the only entry in its class in the running, and a group of vendors around the world rallying to create a specification to increase the "level of homogenity" in solutions built using "competing products" that they offer.
    </quote>

    I am 200% agree with you. Of course MS is a product, a monoply that I don't like as much as you. This is why Java/J2EE is more mature too at most of the time, but how it stops us to adopt some good thing MS come up with; just becuae it's from them...
  23. "But when it comes to presentaion tier, JSP and even JSF are way behind .NET. Webforms, Codebehind, caching web controls have no match in J2EE, and Java have to learn from .NET like .NET learned it from Java. "

    Webforms and codebehind is a very poor remake of what Apple did with WebObjects more than 5 years ago. Only the VS IDE is nicer than WOProjectBuilder. But for this, there is a separate war going on;)
  24. You're probaby right[ Go to top ]

    Actually, the controls are conditionally redered. They render pretty well on other browsers (much better than anything I have seen on the Java side), but obviously they spend more time on IE renderers. To be fair, this is consistent with browser market share. You can always plug in your own renderers.
  25. VS.NET and Eclipse.[ Go to top ]

    <quote>

    > May be i'm missing something but WebForms in .NET are years ahead of anything in Eclipse/Java. They maid it as easy as VB forms, not to mentions huge number of WebControls.
    > How do you compare it to Struts for example? Struts has only primitive HTML Controls while .NET has rich set of WebControls that go far beyond HTML forms. No WYSIWYG Web forms designer - have to use separate tools. No standardatized ways of handling events in Actions. And that's only with Struts. What about other Java web frameworks?
    > I've been doing Struts/JBOSS for last year and when i first tried ASP.NET i was shocked by it's easiness.

    </quote>

    http://jakarta.apache.org/tapestry/index.html
    http://spindle.sourceforge.net/

    Tapestry is mature, ready-to-use web component framework that does the magic (and more). Spindle is Eclipse plug-in for Tapestry.
  26. .NET and J2EE[ Go to top ]

    You know, this .NET versus J2EE discussion reminds me of old VB vs C++ discussions of mid-90's.
    I think same arguments apply here. VB (.NET) Simple, extremely easy to use environment for small-to-mid-size typical projects. C++(J2EE) allows you to do virtually anything at a price of huge complexity.
    You gotta be nuts, for example, to implement some travel booking or vacation report app in C++ (i've been doing C++ for last 8 years and i know what i'm talking about). Same applies to .NET and J2EE. You DON'T need a machine gun to kill a fly.
    Another major problem is J2EE market fragmentation. Tons of inconsistent implementations and even designs.
    Someone suggested to use Tapestry or JavaFaces. Not only it does not have even fraction of user base that WebForms have, they also don't come even close in terms of IDE integration. And forgive me for being cinycal but what Tapestry is gonna make to my resume compared to WebForms (.NET). Generally speaking, because of J2EE market fragmentation, there is no single widely adopted technology worth spending time and efforts on.
    Few more notes: ALL of my friends that were/are looking for jobs now, told me that ALL companies using MS require knowledge of .NET. It's just a matter of time before M$ world fully turns to .NET.
    BTW, i noticed one interesting thing: many Java developers on this site are pretty familiar with .NET. In M$ world it's the opposite. .NET developers, mostly, don't have a clue about things like Struts, Faces and so on. This fact by itself shows how fast M$.NET is getting adopted.
  27. .NET and J2EE[ Go to top ]

    <Leonid Finis>
    BTW, i noticed one interesting thing: many Java developers on this site are pretty familiar with .NET. In M$ world it's the opposite. .NET developers, mostly, don't have a clue about things like Struts, Faces and so on. This fact by itself shows how fast M$.NET is getting adopted.
    </Leonid Finis>

    I completly agree with this statement. There are lots of opensource initiatives on source forge which have ported some of the J2EE frameworks (and tools) to .Net world (example Maverick, Log4Net, etc). But I think MANY in .Net world do not have knowledge(?)to use any of these. I have friends who use .Net but have not used any of the open source tools. If it ain't from Microsoft and/or not in VS.Net they are not going to use.
  28. .NET and J2EE[ Go to top ]

    BTW, i noticed one interesting thing: many Java developers on this site are pretty familiar with .NET. In M$ world it's the opposite. .NET developers, mostly, don't have a clue about things like Struts, Faces and so on. This fact by itself shows how fast M$.NET is getting adopted.


    Java Developers are pretty familiar with .NET primarily because Java developers are familiar with enterprise internet server-side programming concepts and paradigms. Most M$ developers are not exposed to this area (there are exceptions but many of M$ programmers are simply VB and ASP folks) and therefore your observation comes at no surprise. It is certainly not an indication of M$.NET's adoption speed.

    However, there is no doubt that .NET will be a force in the years to come, given M$'s position in the desktop.
  29. .NET and J2EE[ Go to top ]

    BTW, i noticed one interesting thing: many Java developers on this site are pretty familiar with .NET. In M$ world it's the opposite. .NET developers, mostly, don't have a clue about things like Struts, Faces and so on. This fact by itself shows how fast M$.NET is getting adopted.

    ---> I am attending an Enterprise Architecture workshop hosted by MS and the trainer has had a hard time to understand what object persistance is and could not answer my question about .NET serialization features. It may not be MS fault but for shure it draws a clear idea about the kind of enterprise software solutions MS can offer...
  30. The MS advantage[ Go to top ]

    Part of Java's problem is its main strength: variety, choices, flexibility.

    With MS you get one solution from one provider. It's a no-brainer deciding what to use. You have little choice. For many companies this is good enough. They don't want to spend countless hours looking for the "best" solution, they just want to go with safe bet. MS is a safe bet in the sense that it is always the "standard" of its own platform.

    Larger companies may think of this differently because they are looking at the problem from a longer term perspective.

    On the other hand some comparisons are unfair (but nevertheless don't improve the perception). Cost-free Java solutions (eg. Eclipse, Netbeans) generally aren't as good out of the box compared to VisualStudio because you get what you pay for. I would assume that if you pay out the $5000 for JBuilder or Websphere Application Developer you may get better results. Compare expensive products (VisualStudio) with expensive products (Websphere Application Developer).

    I see some people complain that the "templated" or "easy solutions" in MS and other solutions are not general enough. The thing is that these templated solutions cover a great percentage of data driven programming. For an outside contracter (such as myself) this can mean the difference between making money and losing it.

    Note: I am being a bit of a devil's advocate here since I actually don't use MS based products for development, currently.
  31. VS.NET and Eclipse.[ Go to top ]

    May be i'm missing something but WebForms in .NET are years ahead of anything in Eclipse/Java. They maid it as easy as VB forms, not to mentions huge number of WebControls.

    > How do you compare it to Struts for example? Struts has only primitive HTML >Controls while .NET has rich set of WebControls that go far beyond HTML forms. >No WYSIWYG Web forms designer - have to use separate tools. No standardatized >ways of handling events in Actions. And that's only with Struts. What about >other Java web frameworks?
    There is one thing in Java which simply rocks cmapring even to .NET set of widgets: applets

    Write rich UI with applets, use SOAP to communicate with Server....
    Is't it technologically superior?

    Michal
  32. VS.NET and Eclipse.[ Go to top ]

    May be technology is academically superior. Should be, after all, it's not its first incarnation! Only java sucks life from my portable's batteries like a dying witch. :-).

    It takes ages to start up Eclispe (not to mention WSAD) on a 2GHz machine. It takes about only 3 seconds for VS.Net. I am not even talking about the first-time start up, when Eclipse has to do 44,000 disk reads before the screen comes up (check this out in Windows Task manager). So much for putting an enormous effort in jit and then... not keeping the results for the next app run or disabling it while debugging.

    have a nice day,
    --VS.
  33. VS.NET and Eclipse.[ Go to top ]

    It takes ages to start up Eclispe (not to mention WSAD) on a 2GHz machine. It takes about only 3 seconds for VS.Net. I am not even talking about the first-time start up, when Eclipse has to do 44,000 disk reads before the screen comes up (check this out in Windows Task manager). So much for putting an enormous effort in jit and then... not keeping the results for the next app run or disabling it while debugging.


    Just tried both on my XP 2Ghz laptop (512Mb). 14 seconds for VS.Net and 10 for Eclipse.

    Now I am trying them on Linux and OSX. Still waiting for VS.Net to come up. :)
  34. I think u dont know what do u mean by start up time then ..
    Its takes 5 to 7 seconds on my machine 1.4 GHz / 256 MB RAM for eclipse.
    and I know vs.net takes atleast 10 to 2 seconds to do the same ..
    Althoguh our comparisions arent perfect as the num of processses running at the same time etc may be dif. But ur claim is totally baseless that eclipse takes more time to come up that vs.net. I have everything on my box and i comapre things too.

    Regarding vs.net it takes a long time to refresh on the screen, it so heavy and I m always worried abt it crashing on me anytime. It has crashed atleast 5 times in a month, specially when i import some 30 - 40 files in it from other project. ( inherent with windows i guess. )
       I run eclpise for days and months without closign it and it works perfect everytime.....
  35. VS.NET and Eclipse.[ Go to top ]

    Web controls are not as easy as HTML. One person creates an HTML screen, another person adds tags, another person creates controls, and another person develops the back end logic (or 1 builds EJBs and 1 admins the EBJ server.) Three or four people, each with an area of expertise, but not requiring a broad knowledge. Versus .NET where everyone has to work on the UI, business logic, IPC, and persistence, and there is no possible way to understand the details of any layer.
  36. JavaServer Faces is equal to .net webforms.
  37. Java has it's equivalent technology[ Go to top ]

    JavaServer Faces is equal to .net webforms.


    Prove it! Betcha can't. Doesn't even come close - yet.
  38. .Net: 3 Years of the 'Vision' Thing[ Go to top ]

    The only .NET jobs I've seen are for Microsoft and a few of her partner startups here in Seattle, but Win32 programmers seem (anecdotally) to be in higher demand than ever. I've heard some pretty big numbers (to me) for the type of jobs that were typical code monkey positions a few years ago. My suspicion is that most developers are moving to, or starting from unix and/or Java. It's not that more VB/COM developers are needed, but that the small shops that were their bread and butter are having a hard time finding the new blood.
  39. There are two separate issues concerning the evaluation of techologies such as .Net or J2EE:

    1. How solid these technologies are from the technical standpoint
    2. How solid they are from the usability standpoint

    One would assume that, by now, most of the current technologies have passed the litmus test on the solidity and robustness form the nuts-and-bolts standpoint (in other words, these technologies should offer reliability, performance and sturdiness required by the businesses running them).

    However, when it comes to how easy it is to use those technologies to develop business solutions, the situation really is dismal.

    Solutions provided by the Java community is reaching the point where the level of complexity clearly surpasses the benefits such solutions may provide (I'm talking about products such as Jetspeed, Turbine, and so on). Most attempts to grasp the complexities of using the J2EE-based frameworks are an exercise in frustration. We definitelly need a better model.

    .Net trumpeted a more user-friendly approach to building apps, but in my opinion turned out to be just a pile of empty promises. Again, as with Microsoft's early legacy products (i.e. MS Access, VB, etc.), everything seems to be going smoothly and cheerfully (if you can stomach those moronic wizards) as long as you're attempting to do something vanilla, that is, something that conforms to the least common denominator, as envisioned by the .Net designers. However, as soon as you need to stray from that narrow path, all hell breaks loose. Then, .Net turns into a nightmare that's hundreds times more trying than the J2EE nightmare.

    I'm hoping that the designers of these platforms will come to their senses and rebuild their products with the support for developers' efforts in mind. Otherwise, most of these 'solutions' are still fairly useless.

    Alex
  40. The key problem with .NET at the moment is that it's a pure Microsoft standard. Yes, I know about the .NET subset that was submitted to the ECMA (few people use this very limitted subset) and yes I know about Mono (which is trying to clone the Microsoft "standard" .NET), but right now .NET is whatever Microsoft says it is and if you want more than the basic ECMA spec, you have to tie yourself to several Microsoft-specific technologies.


    .NET now is like Java was before the JCP process. Back then, Java was whatever Sun said it was. Sure several people could license Java, but Java's sole direction was guided by what is good for Sun. If it's good for Sun and bad for everyone else, then it's going into Java. If a feature can either be generally optimized or optimized to Sun's hardware (or applications), the Sun specific approach will likely win. Once the JCP process came into existence, Java became one of several voices guiding Java. True, it's the biggest voice, but it can't ram anything through the JCPs. For instance, Netbeans is not part of J2EE even though Sun would love for it to become the defacto standard IDE (over Eclipse and other alternatives).


    .NET needs a JCP-like process if it hopes to be anything more than a more powerful alternative to VB and a more friendly alternative than C++.
  41. Robert,

    JCP has not helped Java; instead of listening to users, the EG has compe up with:
    EJB, JDO, JSF, Portlet API, CMS Api, etc. etc. Not very usefull and may have run time fees (propraitory)

    Things that had little to do with JCP are: Servlet, JSP, JSTL, Stuts (developed on Jakarta and made popular), iBatis, Hibreante, etc. This is what users want and use.

    How come no JCP for pgSQL or BSD/Linux license, it does not hurt.
    Instead of EG, why not have more Open Source and have the users decide, based on user input and popularity. C# might be good at listening to users, so please no EG on C#.

    .V

    PS/OT Nice links:

    Creating a master-detail WinForm with C#
    http://bdn.borland.com/article/0,1410,30192,00.html

    Parameterized queries with ASP.NET in C#
    http://bdn.borland.com/article/0,1410,30191,00.html

    ASP.NET datagrid design with C#
    http://bdn.borland.com/article/0,1410,30190,00.html

    Simple Database Development with C#
    http://bdn.borland.com/article/0,1410,30184,00.html
  42. JCP has not helped Java; instead of listening to users, the EG has come up
     with: EJB, JDO, JSF, Portlet API, CMS Api, etc. etc.

    Things that had little to do with JCP are: Servlet, JSP, JSTL, Struts (developed on Jakarta and made popular), iBatis, Hibernate, etc. This is what users want and use.


    This seems to be a pretty biased summary. JSP and JSTL do indeed come out of the JCP. And Struts is heavily informing the JSF JSR. iBatis is nowhere near as popular a technology as JDO or CMP. Servlets were created by Sun and mandated as a 'standard'... that's a better example of 'listening to users'?

    If you are trying to say that popular technologies were not originally created within the JCP... well, that's the point. It is technologies that 'users want and use' which make it into and through the JCP, where they can reach an even broader audience through 'standardization' and vendor support.

    I think there are serious problems with the JCP, but I also felt your analysis was flawed.
  43. Popularity[ Go to top ]

    iBatis is nowhere near as popular a technology as JDO or CMP.


    The Lamborghini Murciélago is not as popular as the Pontiac Sunfire either. But I would still rather have the Lambo. ;-)

    Point: Popularity has little to do with quality or suitability to task. Network effect is one thing, but choice is another. Luckily with Java we have both.

    Cheers,
    Clinton
  44. Popularity[ Go to top ]

    Point: Popularity has little to do with quality or suitability to task.

    However, popularity is an excellent measure of 'what users want'. The original statement was that iBatis is not part of the JCP process, and this is evidence that Sun is not listening to user needs.
  45. I totally agree, the JCP is definately enhancing the java communities ability to drive the platform forward.

  46. > Things that had little to do with JCP are: Servlet, JSP, JSTL, Struts
    > (developed on Jakarta and made popular), iBatis, Hibreante, etc. This is what
    > users want and use.
    >
    Here are some relevant JCPs:
    * JSTL -- JSR-000052
    * Servlet and JSP -- JSR-000053
    * Struts -- JSR 127 (Okay, it's the Java Server Faces JSR but Struts is it's inspiration and Struts NG will include JSF)


    As for iBatis and Hibernate, they're specific application libraries that have chosen not to adhere to any existing standards (for pragmatic reasons). If they wanted to define their own JCP, there's no reason why they couldn't. Apache and JBoss are on the JCP committee, so open source is welcome.


    > How come no JCP for pgSQL or BSD/Linux license, it does not hurt.

    Again, these are specific applications -- not something that wants standards. There's no JCP for Oracle or Sybase or IBM DB2 for the same reason. Unless they can come up with something else to standardize, JSR 54 (i.e. JDBC) is all that's necessary.

    > Instead of EG, why not have more Open Source and have the users decide, based
    > on user input and popularity. C# might be good at listening to users, so
    > please no EG on C#.
    >
    There's nothing wrong with Open Source (Linux is my primary OS and Eclipse is my primary IDE), but it needs standards like TCP/IP, HTML, XML, the X Window API, POSIX, Unix, the freedesktop standards, and others in order to remain cohesive. Even "rebel" languages like PHP and Perl have realized that it's unproductive not to follow standards (Perl+Python+Ruby are defining the Parrot VM so they can share code between languages; PHP 5.0 is modeling itself after Java so that it can integrate better with J2EE.).

    Mono is okay (I'm a Ximian GNOME user so I harbor no ill feelings towards Ximian), but while one company (Microsoft in this case) is solely defining the future of .NET, it'll always be in catchup mode and have to settle for APIs that are better optimized (or even tied to) Microsoft specific products. Winforms, for instance, is being implemented by the Mono team but the Winforms APIs leak out Win32 details (in much the same way Swing leaks out AWT details), so the Mono team is forced to use WINElib to emulate the Win32 API. Had Winforms gone through a JCP process or an ECMA process, it would have likely been adapted so that it was more platform neutral. As it current stands, even after Winforms is complete, it won't run all Winforms apps because WINElib is far from a complete emulation of the Win32 API. .NET also makes creating COM objects and tying your application to Windows and Microsoft-specific technologies a lot easier, so don't be surprised if even non-Winform .NET apps don't run in Mono.

    Mono's original goal (I don't know the current one) was to provide a language independent way of tying in several GNOME technologies. If it was compatible with Microsoft, fine, but it's no big deal if it isn't. It makes no guarantees about portability with .NET or any non-GNOME platform. Mono will likely succeed in it's chosen niche.

    At some future time Mono might become as influential over .NET's future as Microsoft currently is, but it's nowhere near that today.
  47. On a very high level i think

    .Net
    GOOD -
          - easy and fast development and so development cost is low, attracts beginner programmers
           - Very good documentation, examples, code samples provided by MSFT itself

    BAD
         - sucks as its tied to MS Windows platform and less reliable for high end apps. will be mostly confied to small - medium level apps.


    USEFUL For -
            Small start ups, small -medum size apps, intranet apps with low/medium traffic


    J2EE
    GOOD- Great stability , reliability , robust app.
               - works on almost any platform with little or no changes
               - standard open system arch. thru Java community

    BAD
               - medium to high development cost
               - SUN provided java docs suck. Its been years i have been waiting for good documentation from SUN for jdk apis. Thats why sites liek TSS, JGuru, Orielly etc etc etc have more users than sun's developer network.

    Useful For
              - Basically any apps - specially medium to high end . Very reliable, once developed with good design - its very easy to maintain( except client side using SWING - sun never got SWING right)
  48. Yawn !! More hype[ Go to top ]

    Well its been 3 years or just one year that .Not has been release. When was alpha version thought to be stable release version. So if I think of some thing and have
    a half ass code that doesnt work well I can that take in acount of the software years in release.

     Walla that is why Windoze 95, 98 mellinium, SQL server, exchange , VB, NT, .Not and IE is such crap of software.
  49. Yawn !! More hype[ Go to top ]

    I disagree .. Please be realistic when making a coment

    IE is not crap .. for sure. Netscape is crap .. slowest browser i have ever come across

    VB - it wasthe best tool for client server development - and YES its much better than any SWING / AWT crap of SUN. And thats why during 1996 to 1999 VB took away market from Power builder - almost finished power builder.

    win 2000 - one of the most stable desk top OS i have ever seen. ( linux came in later )

    I m a dedicated java programmer but still know how to appreciate MSFT.
    Thru competition we grow .. not blindly calling something crap ..
  50. Yawn !! More hype[ Go to top ]

    I've got to agree. Where Microsoft is forced to compete, they make some pretty good products.

    As for .NET, as long as it is making Java better, I think it is earning its keep. Besides, maybe now someone will finally focus on good UI tools for Java ;-)

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Easily share live data across a cluster!
  51. Yawn !! More hype[ Go to top ]

    I've got to agree. Where Microsoft is forced to compete, they make some pretty good products.



    Sure wish they had some competition for IE. - http://www.computerworld.com/securitytopics/security/holes/story/0,10801,82895,00.html?SKC=news82895

    (One reason I use mozilla unless a site I need to see won't come up in it)
    Like "they" say in golf - "Short and straight is better than long and crooked."
  52. Guess, this talk is around every corner of every software organization.
    Interestingly,there are 2 perspectives to this ,namely,

    OS Interoperability: Well thats where java comes in, with its enterprise architecture in J2EE, offering solution to be taken across platforms.

    Language Compatibility: Well .NET is what it is!! Compatibility with most of the languages (basically microsoft supportive), OOP Concepts very well designed , and also its latest add-on in JCLA . But , mind you all this only on Windows platform.
  53. You know, I get sick and tired when everyone talks about J2EE being so portable. Yes, if you more-or-less stick to one vendor that can support multiple platforms that you assume you might port to and that they don't go bankrupt (my advise: Chose your vendors wisely).

    Also, 94% of the computing industry worldwide, never had or never will port their software offerings. The costs are very high and vendor J2EE support slightly differs from one platform to another, from a performance to configuration standpoint.

    It’s good to know that if portability is required that J2EE has an upper hand vs .NET, at least thus far.

    So, my question to you is: How many have you ever ported a really large J2EE system (no Micky Mouse projects please)? And how many have you done it without any hitches? Be honest please, the whole world is listening.

    Long live J2EE (.NOT) ;D

    Ross
  54. How many have you ever ported a really large J2EE system?

    I have worked on it, Ross.

    Large application both in terms of code size and no of transactions as of date. Its a bank application, based entirely on J2EE/WebServices. It pretty much represent the entire "enterprise app" infrastructure of the bank. No EJB. About 3 millioan trans a day.

    I dont know if you call it a Mickey Mouse App? Leave that to u?
  55. Thanks for responding.

    That is quite impressive. Good choice in not using EJB.

    So my question still stands. As large and impressive your project (application) was, has your team every ported it to another platforms. And what I mean in platform is. Different OS, WebServer, Database...

    Let me know

    RP