What .NET Got Right
by Brian Jepson02/11/2002
As I write this, I'm heading home from a trip to New York City; while I was there, I got together with some old friends I used to work with at a major Wall Street firm. Two of them still work there; another has gone to work for a company that builds and markets software for energy trading.
All three of them swear by Java. What was once considered iffy and experimental is now the standard. We talked about .NET, and our conversations led me to the following conclusion: although .NET is a huge improvement over the old Microsoft way, it makes only incremental improvements over J2EE -- none of which are compelling enough to convince a Java shop to rewrite everything in C#.
Sun can look at these incremental improvements, take what's actually useful, and incorporate it into future revs of J2EE. And Microsoft would do the same for their next rev of .NET. Essentially, Microsoft has caught up with Sun, and they'll be neck and neck for a long time, as each raises the bar slightly. And while .NET is not going to lure people away from J2EE, I think it will keep Microsoft shops from switching to Java.
Microsoft has a tremendous edge in Visual Studio .NET, however; from the Visual Studio .NET cockpit, you can get at every feature of .NET. From creating Web services to publishing them, you don't need to leave the development environment. I haven't seen anything comparable in the Java universe, but parts of it seem to be there in products like Borland's JBuilder, iPlanet's NetBeans and Forte, and other IDEs. Visual Studio .NET's ease-of-use has raised the bar, but its capabilities are not out of the reach of others.
|
|
By contrast, I recently ordered the Sun ONE Starter Kit. The first CD was full of white papers; the next CD was Java stuff I could download from java.sun.com, and the other two CDs contained different versions of iPlanet. Compare that to Visual Studio .NET: minutes after installing, it walks you through the essential tasks, keeps a to-do list for you, deals with deployment issues, and folds your laundry. I was expecting more from the Sun ONE CD. It doesn't help Sun to reiterate the features of J2EE, which is what the Sun ONE CD does. I'm sure that for most features in J2EE, there's a corresponding one in .NET, and vice versa.
Maybe it's wrong to compare the Visual Studio .NET distribution to the Sun ONE Starter Kit, but I think people evaluating the two technologies will make these comparisons. Visual Studio .NET reduces the initial learning curve, and this is a huge advantage in wooing developers who haven't yet chosen between J2EE and .NET.
|
| |
I would like to be able to insert the Sun ONE CD into my CD-ROM drive and find myself creating Web services 15 minutes later; even a road map would have been helpful. I felt overwhelmed when I saw all those white papers in my browser.
So while .NET certainly won't kill J2EE (not that I ever thought it would, but it feels reassuring to say it :-)), it does finally make Microsoft a viable contender in the enterprise space. With Visual Studio .NET's ability to make complex things very simple, Microsoft will not only keep its current customers but also make new customers out of people who, six months ago, would have gone with J2EE without a second thought.
Brian Jepson is an O'Reilly editor, programmer, and co-author of Mac OS X Panther for Unix Geeks and Learning Unix for Mac OS X Panther. He's also a volunteer system administrator and all-around geek for AS220, a non-profit arts center in Providence, Rhode Island. AS220 gives Rhode Island artists uncensored and unjuried forums for their work. These forums include galleries, performance space, and publications. Brian sees to it that technology, especially free software, supports that mission. You can follow Brian's blog here.
Return to the .NET DevCenter.
You must be logged in to the O'Reilly Network to post a talkback.
Showing messages 1 through 27 of 27.
-
The Big picture - .NET vs J2EE
2002-02-23 06:57:59 kjambu [Reply | View]
-
The Big picture - .NET vs J2EE
2003-06-08 15:29:58 anonymous2 [Reply | View]
Oh, how wrong you are, my little developer... Linux and its associated technologies are reaching more and more market segments... Here in Spain some parts of the public administration are embracing Linux, just as is it happens in Germany...
Beware, even M$ gurus are threatened... Oh, is that a penguin reaching over your shoulders?
-
What is actually more efficient?
2002-02-21 23:15:43 neeloy@iscw.net [Reply | View]
Any real data yet on what is more efficient at doing certain tasks?
-
who needs IDE's??
2002-02-15 09:24:01 gf [Reply | View]
Hi,
pfff who needs IDE's?? Perfect are:
jEdit
ant
tomcat
resin
jboss
cvs
s.o.
...what do you want more ;-)...
~Gerhard
-
.NET and Java can co-exist - not either/or.
2002-02-13 06:33:48 dmehers [Reply | View]
There is at least one company offering a bridging product based on a pure Java implementation of Microsoft's .NET Remoting protocol, allowing .NET components to access EJBs as though they were written in C#, for example.
http://www.intrinsyc.com/jaNET
-
You're Right You Got Something Wrong
2002-02-13 05:58:37 dougpan [Reply | View]
Microsoft has always been good at getting things up quickly, but to keep it up is what is most important.
Catchy heading:
"Visual Studio .NET outshines Sun's starter kit."
I think what people should really be interested in is if .NET ourshines JAVA, and not how a free starter kit compares with a full IDE environment. Thank you for making that point early in your article... "although .NET is a huge improvement over the old Microsoft way, it makes only incremental improvements over J2EE".
You do say, "Maybe it's wrong to compare the Visual Studio .NET distribution to the Sun ONE Starter Kit", and you're right.
Over the past 22 years in the computer business, I have found that those that don't really know what is going on under the covers are more often only succesful at getting things up quickly. However, those that have gone throught the entire process of understanding how things go togther rather than using a full blown IDE run into problems they can't fix later.
Doug -
Sun - Software Company?
2002-02-22 20:51:51 robinf [Reply | View]
Let's face it, MSFT makes better software. Sun should focus on HW and give up on SW, period. It simply can't get it right, look at what they have done to Forte, Java Studio(anyone remember this..), StarOffice, NetDynamics, ... the list goes on. iPlanet is a joke, it is not going anywhere.
-
.NET will take a Bigger Bite
2002-02-12 13:37:33 kjambu [Reply | View]
Let me upfront clarify i am a strong Java supporter. I love Java But...
There is no doubt that .NET will take a bigger bite. Microsoft will definitely have the last laugh with .NET
On whatever comparable standards J2EE can in no way even come near .NET.
Take for example the recently offered JWSDP from Sun as a single window download for WebServices. Take a VB.NET/C# guy and a Java guy who are both new to implementing WebServices. I can bet by the time the Java guy writes his first Hello World Web Service the Microsoft programmer would have mastered atleast all the fundamentals of WebServices, like how to publish, how to consume, and the fundamentals of what is WSDL,SOAP,UDDI and what they are meant for (if not mastering them).
In fact there is no comparable tool to VS.NET in the whole of Java world including Visual Cafe, VisualAge or any such thing.
I can say that the only innovative thing Java did in its whole life time was to bring in the context of Servlets (Compileds pages) when the entire world was toying with scripting whihc is now anyway a matter of history with ASP.NET offering everything Servlets have to offer and more.
Microsoft made some mistakes which Java corrected. That does not mean that Java invented them. I am talking about the DLL Hell and Registry problems. That was the area which made EJB succeed. And that is also a matter of the past now with X-copy deployment introduced in .NET now.
If .NET was not there then there is meaning in using Java as a Technology for the Internet. But i dont see any reasoning in using Java for the Internet when we have an all in one solution in .NET
ClientSide of Java according to me is almost dead. See the way ASP.NET has leveraged XML to bring Server-side controls. This one concept i cannot but admire. The idea is revolutionary.
I dont need to write a single line of code for client side validation.
Take for instance ADO.NET again. Manipulating XML is one of the key developer job today, and that is done in a fizzy in .NET
Above everything, the beauty of it all is .NET is a product that is getting released as a finished product. Compare it with EJB which released specifications in three chunks and the related products even now not having implemented many of the EJB 2.0 features. Even the JDK is not fully mature after 7 years of Java. What are we talking about. Whose money are we playing around with.
Can you do anything in Java, without downloading something from somewhere. Can you build an application without any support from any responsible source. Then how is it Sun and Java different from OMG and Corba.
This discussion can be argued to any length.
While have been a strong supporter of Java and worked with it for past 6+ years, i cannot but admire the robustness, flexibility and artifacts of .NET
Kudos to Bill Gates and his team. With Unix Bill had to go hand in hand with his competing Windows, but that will not be the story with J2EE and .NET
.NET according to me has already won the race, technically. It is a cohesive complete solution for today's internet.
Jambu Krishnamurthy
-
.NET will take a Bigger Bite
2002-02-15 20:02:18 denizkaan [Reply | View]
"Take for example the recently offered JWSDP from Sun as a single window download for
WebServices. Take a VB.NET/C# guy and a Java guy who are both new to implementing
WebServices. I can bet by the time the Java guy writes his first Hello World Web Service
the Microsoft programmer would have mastered atleast all the fundamentals of WebServices,
like how to publish, how to consume, and the fundamentals of what is WSDL,SOAP,UDDI and
what they are meant for (if not mastering them)."
First of all, there is no relation with using .NET, JAVA and mastering web services concepts.
This is very funny. It sounds like if you use MS pots rather than JAVA pots while cooking,
you will master the Turkish cusine in a shorter time. Actually, go and look at www.javaskyline.com
You will see many many web services related products, which help creating and maintaining
them from beginning to end. You can choose whichever you like. You know freedom of choice idiom. Right? : )
"In fact there is no comparable tool to VS.NET in the whole of Java world including Visual
Cafe, VisualAge or any such thing."
Really? Actually, there are many many tools from many different vendors. Please take a
look at www.javaskyline.com web services section. By the way, Visual Cafe? We are on 2002
Jambu. There is no Visual Cafe anymore. :) There are 30 or something like that IDE's from
many companies.
"I can say that the only innovative thing Java did in its whole life time was to bring in
the context of Servlets (Compileds pages) when the entire world was toying with scripting
whihc is now anyway a matter of history with ASP.NET offering everything Servlets have to
offer and more."
Well, how can you say the only innovative thing Java did in its whole life time
is servlets? How many Java based technologies did you master?
"Microsoft made some mistakes which Java corrected. That does not mean that Java invented
them. I am talking about the DLL Hell and Registry problems. That was the area which made
EJB succeed. And that is also a matter of the past now with X-copy deployment introduced
in .NET now."
First of all, it does not matter if Java invented them or not, but I think Java invented
many things. Do you suggest MS invented C#? What is the relation between DLL hell and
registry problems and EJB???? Sorry, but I cannot see any relations.
"If .NET was not there then there is meaning in using Java as a Technology for the
Internet. But i dont see any reasoning in using Java for the Internet when we have an all
in one solution in .NET"
Thats because you are blind. Can't you still see "having one solution" is root of all evil?
Ever heard of something like competition and its effects on quality and prices of products?
"ClientSide of Java according to me is almost dead. See the way ASP.NET has leveraged XML
to bring Server-side controls. This one concept i cannot but admire. The idea is
revolutionary.
I dont need to write a single line of code for client side validation."
What is the relation between clientside and .Net? When people talk about clientside Java
is dead, they don't mean client side validation, but, client side programs. I can't believe
you are saying this.
"Take for instance ADO.NET again. Manipulating XML is one of the key developer job today,
and that is done in a fizzy in .NET"
What is the relation between ADO.NET and manipulating XML? And, what do you mean by
manipulating XML is fizzy in .NET? Do you mean it is easy or fast or something else?
If you mean "easy", XML manipulation is already easy not only in Java, or .NET but even
in Pascal and Fortran now, thanks to standard XML manipulation APIs (DOM, SAX etc) and
libraries that implement them. If you mean fast, it is much faster in Fortran running
on Unix than .NET's whatever language. Should we turn back to using Fortran then? : )
"Above everything, the beauty of it all is .NET is a product that is getting released as a
finished product. Compare it with EJB which released specifications in three chunks and
the related products even now not having implemented many of the EJB 2.0 features."
Dear, dear. First of all, there are many containers that implement full EJB 2.0 specs.
Again, look at www.javaskyline.com's EJB section. EJB is progressing slowly, and nicely,
at the rate that it should progress. There is no reason to haste and make mistakes. We
are seeing security disaster after security disaster related with "long time" planned
and tested MS products starting from OS to web browser, .NET to IIS. First of all,
I think MS proves that haste is evil. Second, if there was "ONE SOLUTION" in Web Server
arena, and that was IIS, many firms would not be able to shift to some other product after
IIS vulnerabilities were revealed. In short, once again, "one solution" is really bad
idea my friend.
"Even the JDK is not fully mature after 7 years of Java. What are we talking about. Whose money
are we playing around with."
JDK is not fully mature, and it never will be. : ) Because it is evolving constantly
according to innovations and shifts in hw and sw world. For example, XML became popular,
and related api's added to JDK. So, it is better to say the technologies that JDK is now
containing were not mature 7 years ago. Do you suggest first JDK should have XML parsing API?
There was no such thing at those times dear Jambu. Did Visual C++ 1.0 had DOM parser API?
It would be bad if Sun said "ok. JDK is finished." Do you think that .NET is finished?
There will be no more improvements in the future? What about COM, DCOM, COM+ etc?
Wasn't COM mature so that there was a need for DCOM? Wasn't DCOM mature so that there
was COM+? And what money are you talking about? JDK is free. : ) But Visual Studio,
Visual Studio.net are not. : )
"Thanks for accepting that client side java is dead. Microsoft's innovative client side
tools help enhance the RAD environment even better. Take for instance, i need not even
worry about browser compatibility issues, that too without writing a single line of code."
Well, first of all, MS is the root of browser compatibility issues. It created non standard
HTML tags first. And yes, you should worry about browser compatibility issues. Your
pages might not work in Netscape or Opera (Which is my favourite web browser by the way.
Fully w3c compliant, and much much much faster than IE or NS.)
"What are we talking about Cross platforms. How many of us have used Java to develop pure
Cross platform applications. If that is the case why even after 7 years of Java, JNI is
around. How many of us have written Java applications to access Visual Basic DLLs."
I know many many developers including me who wrote pure cross platform applications. Why
should I restrict myself to one platform? And more importantly, why should I write Java
apps to access Visual Basic dlls??? I am using Java to not to deal with Visual Basic
and Visual X, Visual Y, Visual Z dlls.
"Even today i can say, to be on the safe side, more than 70% of Java programmers use
notepad or some such editor to write Java programs. Many of the Java presentations are
done in Microsoft Powerpoint. The first or early versions of the JDK and other packages
come for Windows."
OH! WHAT? I did not know that!!! If java presentations are done in MS PP, I should stop using
J2EE and shift to .NET. : ) Well, all those IDE producing 30+ companies are stupid,
since they are writing IDEs which they are not able to sell since Java Programmers use Notepad.
: ) Especially Borland released 6th version of their IDE, although they were not able to
profit from the previous 5 versions. Thanks Jambu, I did not see it before.
Why did I use wonderful Java IDEs like IDEA, Netbeans for last 5 years while there
is such a wonderful program called Notepad? I must be stupid! Now I see the light! Kudos
Bill Gates and .NET team for creating this wonderful program called Notepad.
"For reliability purposes, it is better to be with a single vendor, rather than no vendor
at all. How many of the mid level organisations have the technical expertise to play around
with the Linux Operating System, Apache Open Source Servers and so on. That may be good
for research not for business."
First of all, believe me there are some to play with them. Do you know how many Linux distributers
are around? They all played with Linux OS!
According to me .NET is the third solution for the internet. First was ASP and COM, then
Java and now .NET Let us accept facts and embrace the better technology. There is nothing
like monopoly. When something better comes up no one can dictate. All of us know that Java
definitely cast a shadow on Microsoft technologies. Then why this fear syndrome of
monopoly. Is Unix dead? Let us see what is good for humanity. Let us take the best of both
worlds and get going.
I have no comment on the paragraph above. : ) The substance you had used before writing this
should be something really strong. Better be careful.
I am a Java fanatic... But, Because it was good, we cannot leave the better things that
are coming up and lag behind.
Oh are you a Java fanatic? Really? I think you mean the coffee. Right?
I wonder how many Bill Gates' the world will see.
I hope not many. : )
kaan.
denizkaan@yahoo.com
-
.NET will take a Bigger Bite - 3
2002-02-16 08:20:06 kjambu [Reply | View]
Hi denizkaan,
Here is a point by point reply.
My replies are between two lines after
each of your comment like this.
====================
my comment
====================
"Take for example the recently offered JWSDP from Sun as a single window download
for
WebServices. Take a VB.NET/C# guy and a Java guy who are both new to implementing
WebServices. I can bet by the time the Java guy writes his first Hello World Web
Service
the Microsoft programmer would have mastered atleast all the fundamentals of
WebServices,
like how to publish, how to consume, and the fundamentals of what is WSDL,SOAP,UDDI
and
what they are meant for (if not mastering them)."
First of all, there is no relation with using .NET, JAVA and mastering web services
concepts.
This is very funny. It sounds like if you use MS pots rather than JAVA pots while
cooking,
you will master the Turkish cusine in a shorter time. Actually, go and look at
www.javaskyline.com
You will see many many web services related products, which help creating and
maintaining
them from beginning to end. You can choose whichever you like. You know freedom of
choice idiom. Right? : )
======================
Undoubtedly there is relation between .NET, J2EE and learning WebServices. It is
.NET that revolutionized WebServices as a concept we are seeing today and Java
followed course. If you say that the RPC program we wrote in C 15 years back and
WebServices are one and the same, then we are talking on a different plane.
======================
"In fact there is no comparable tool to VS.NET in the whole of Java world including
Visual
Cafe, VisualAge or any such thing."
Really? Actually, there are many many tools from many different vendors. Please
take a
look at www.javaskyline.com web services section. By the way, Visual Cafe? We are
on 2002
Jambu. There is no Visual Cafe anymore. :) There are 30 or something like that
IDE's from
many companies.
======================
Yeah i agree there is no Visual Cafe anymore. I know there are 30 or odd IDEs for
Java. Only thing is i do not know which one to use which day of the month. One good
robust solution is better than 30 half cooked and hurriedly brought in versions. I
have also written an IDE for Java, will you use that. VS.NET is the end result of
15+ years of research and productivity testing.
======================
"I can say that the only innovative thing Java did in its whole life time was to
bring in
the context of Servlets (Compileds pages) when the entire world was toying with
scripting
whihc is now anyway a matter of history with ASP.NET offering everything Servlets
have to
offer and more."
Well, how can you say the only innovative thing Java did in its whole life time
is servlets? How many Java based technologies did you master?
======================
Tell me one more thing. Don't ask questions back my dear friend.
======================
"Microsoft made some mistakes which Java corrected. That does not mean that Java
invented
them. I am talking about the DLL Hell and Registry problems. That was the area
which made
EJB succeed. And that is also a matter of the past now with X-copy deployment
introduced
in .NET now."
First of all, it does not matter if Java invented them or not, but I think Java
invented
many things. Do you suggest MS invented C#? What is the relation between DLL hell
and
registry problems and EJB???? Sorry, but I cannot see any relations.
======================
I cant help if you cant relate DLL Hell/Registry issues with Components. Developing
Microsoft components meant we had to struggle around with Registry issues. The
whole world knows that. Because of the beautiful packaging mechanism that Java
brought in, in the context of EJB deployment, EJB's atleast did not have this
problem. Metadata getting tagged along with the component was a great thing. But
again this was not a solution that Java invented. It was a need that made them do
so. They needed a platform independent solution and hence could have not thought
about tying their component to the Windows Registry. Now however .NET components do
the same.
======================
"If .NET was not there then there is meaning in using Java as a Technology for the
Internet. But i dont see any reasoning in using Java for the Internet when we have
an all
in one solution in .NET"
Thats because you are blind. Can't you still see "having one solution" is root of
all evil?
Ever heard of something like competition and its effects on quality and prices of
products?
========================
I may be blind, the whole world is not. Having one good solution is always better
than having thousand hacked solutions. A solution is supposed to help produce
results. You cant expect every programmer to tweak around with the files and even
worser with the code of each product. We are not doing research, we are talking
business.
========================
"ClientSide of Java according to me is almost dead. See the way ASP.NET has
leveraged XML
to bring Server-side controls. This one concept i cannot but admire. The idea is
revolutionary.
I dont need to write a single line of code for client side validation."
What is the relation between clientside and .Net? When people talk about clientside
Java
is dead, they don't mean client side validation, but, client side programs. I can't
believe
you are saying this.
=========================
I am very clear when i say Client side of Java is dead, that i am meaning Applets,
AWT and Swing specifically in the context of developing applications for the
internet. .NET has made a lot of innovations to develop code on the client side.
Specifically the Server controls, Validation Controls and the way they have
integrated HTML, scripting and Component code in one single IDE is marvellous. Drag
and drop and code...your applications is ready. Think of any comparable solution to
this in Java for client side development.
=========================
"Take for instance ADO.NET again. Manipulating XML is one of the key developer job
today,
and that is done in a fizzy in .NET"
What is the relation between ADO.NET and manipulating XML? And, what do you mean by
manipulating XML is fizzy in .NET? Do you mean it is easy or fast or something
else?
If you mean "easy", XML manipulation is already easy not only in Java, or .NET but
even
in Pascal and Fortran now, thanks to standard XML manipulation APIs (DOM, SAX etc)
and
libraries that implement them. If you mean fast, it is much faster in Fortran
running
on Unix than .NET's whatever language. Should we turn back to using Fortran then? :
)
===========================
Let us be very clear that we are comparing .NET with Java and not with Pascal or
Fortran. Faster depends on many other issues than just a language. That way we can
do all this in pure Assembly and even worse in binary. So let us compare apples
with apples. XML has become a medium by which we want to transport data. Then the
data manipulating objects that a tool provides should help us do that easily. To
that extent .NET has in a focussed manner included many tools, which XML based
component development a fizzy. In Java i have to write every bit of code including
the stubs and skeletons. That's what i mean.
===========================
"Above everything, the beauty of it all is .NET is a product that is getting
released as a
finished product. Compare it with EJB which released specifications in three chunks
and
the related products even now not having implemented many of the EJB 2.0 features."
Dear, dear. First of all, there are many containers that implement full EJB 2.0
specs.
Again, look at www.javaskyline.com's EJB section. EJB is progressing slowly, and
nicely,
at the rate that it should progress. There is no reason to haste and make mistakes.
We
are seeing security disaster after security disaster related with "long time"
planned
and tested MS products starting from OS to web browser, .NET to IIS. First of all,
I think MS proves that haste is evil. Second, if there was "ONE SOLUTION" in Web
Server
arena, and that was IIS, many firms would not be able to shift to some other
product after
IIS vulnerabilities were revealed. In short, once again, "one solution" is really
bad
idea my friend.
============================
Microsoft is not bringing in .NET in a haste. It has done serious introspection of
its own products, studied the best products available outside of Microsoft, taken
the best of all worlds, spent three long years diverting 80% of the company's
resources to deliver such a product. In the kind of technology advancement we are
seeing today, beyond a point we cannot be slow. There is certain amount of haste
that needs to be applied. Security is an issue in whichever technology we talk
about. Just a web technology cannot provide a reliable security mechanism. The
Operating System also plays a major role in protecting internet systems today. And
we should know that the Operating Systems that we are using today were not build
for the internet. New Operating systems have to emerge to plug the security
loophole in a better way, if not completely seal them.
============================
"Even the JDK is not fully mature after 7 years of Java. What are we talking about.
Whose money
are we playing around with."
JDK is not fully mature, and it never will be. : ) Because it is evolving
constantly
according to innovations and shifts in hw and sw world. For example, XML became
popular,
and related api's added to JDK. So, it is better to say the technologies that JDK
is now
containing were not mature 7 years ago. Do you suggest first JDK should have XML
parsing API?
There was no such thing at those times dear Jambu. Did Visual C++ 1.0 had DOM
parser API?
It would be bad if Sun said "ok. JDK is finished." Do you think that .NET is
finished?
There will be no more improvements in the future? What about COM, DCOM, COM+ etc?
Wasn't COM mature so that there was a need for DCOM? Wasn't DCOM mature so that
there
was COM+? And what money are you talking about? JDK is free. : ) But Visual Studio,
Visual Studio.net are not. : )
===========================
Atleast when a version is released, it should not have problems. Every version,
when it is released itself has deprecated functions. Even now see how many JDBC
driver options one has. Every platform has one and you do not know which one is
performance efficient. You have pure Java drivers, we don't know from how many
sources. Which one do i use, who guarantees it. See the way EJB specifications were
released. By the time a product implements a specification, another new version of
the specification arises and then there is a learning curve for the average
programmer - i am not talking about a seasoned programmer like you. Sand is free on
the beach. Do we build our houses with it. Trees are abundant in the forest. Do we
build our boats with it. We buy from reliable specialists ok.
===========================
"Thanks for accepting that client side java is dead. Microsoft's innovative client
side
tools help enhance the RAD environment even better. Take for instance, i need not
even
worry about browser compatibility issues, that too without writing a single line of
code."
Well, first of all, MS is the root of browser compatibility issues. It created non
standard
HTML tags first. And yes, you should worry about browser compatibility issues. Your
pages might not work in Netscape or Opera (Which is my favourite web browser by the
way.
Fully w3c compliant, and much much much faster than IE or NS.)
=============================
Every company worth its name has extensions to any technology, leave alone HTML.
Even BEA's Weblogic has so many vendor specific solutions. And take it from me. No
vendor worth the business salt, will stick to a generic specification compromising
on the market. When i was in the armed forces, in a specific location, we used to
fly about 150 miles once a week to take bath. How many of us do that way. Using
Netscape and Opera (Don't change your favourites) is something similar to that. I
also have favourites. I even today use the spreadsheet program i developed in
Pascal when i was in 12th grade. Do you want to use it, or will you use it.....
=============================
"What are we talking about Cross platforms. How many of us have used Java to
develop pure
Cross platform applications. If that is the case why even after 7 years of Java,
JNI is
around. How many of us have written Java applications to access Visual Basic DLLs."
I know many many developers including me who wrote pure cross platform
applications. Why
should I restrict myself to one platform? And more importantly, why should I write
Java
apps to access Visual Basic dlls??? I am using Java to not to deal with Visual
Basic
and Visual X, Visual Y, Visual Z dlls.
==============================
If Java cannot access a component running on another popular platform seamlessly
without tweaking around,then what is cross platform we are talking about. Should we
shun all the legacy code to embrace Java. Yeah why do you need JNI then, if Java is
the all in all solution.
==============================
"Even today i can say, to be on the safe side, more than 70% of Java programmers
use
notepad or some such editor to write Java programs. Many of the Java presentations
are
done in Microsoft Powerpoint. The first or early versions of the JDK and other
packages
come for Windows."
OH! WHAT? I did not know that!!! If java presentations are done in MS PP, I should
stop using
J2EE and shift to .NET. : ) Well, all those IDE producing 30+ companies are stupid,
since they are writing IDEs which they are not able to sell since Java Programmers
use Notepad.
: ) Especially Borland released 6th version of their IDE, although they were not
able to
profit from the previous 5 versions. Thanks Jambu, I did not see it before.
Why did I use wonderful Java IDEs like IDEA, Netbeans for last 5 years while there
is such a wonderful program called Notepad? I must be stupid! Now I see the light!
Kudos
Bill Gates and .NET team for creating this wonderful program called Notepad.
======================
It may be small, but notepad definitely is one of the favourite editors. And take
it from me, with all those beautiful IDEs you are talking about (I have also used
many of them) we still take recourse to the small editor notepad for doing many of
our Java jobs. Out of the 3000+ Java books that must have been there in the market
80% of them use notepad to teach Java. No Visual Basic book does that. Can you see
what i am saying now.
======================
"For reliability purposes, it is better to be with a single vendor, rather than no
vendor
at all. How many of the mid level organisations have the technical expertise to
play around
with the Linux Operating System, Apache Open Source Servers and so on. That may be
good
for research not for business."
First of all, believe me there are some to play with them. Do you know how many
Linux distributers
are around? They all played with Linux OS!
======================
Yeah there are some. Each one did in his own way. Which one do you rely upon.
Playing around does not give credibility. I have many Unix fanatic friends, all of
them use their fanaticism only for research, not for business, even their own
business.
======================
According to me .NET is the third solution for the internet. First was ASP and COM,
then
Java and now .NET Let us accept facts and embrace the better technology. There is
nothing
like monopoly. When something better comes up no one can dictate. All of us know
that Java
definitely cast a shadow on Microsoft technologies. Then why this fear syndrome of
monopoly. Is Unix dead? Let us see what is good for humanity. Let us take the best
of both
worlds and get going.
I have no comment on the paragraph above. : ) The substance you had used before
writing this
should be something really strong. Better be careful.
=========================
Because i am talking facts. There is nothing to comment when the facts are bare and
open. The days of Java's dominance is over. Wait and see, it is definitely going to
be .NET I also loved and used Java and still using in some of my Distributed
applications. But that does not mean i will stick to it when there is a better and
reliable technology around. Let us learn to accept facts.
=========================
I am a Java fanatic... But, Because it was good, we cannot leave the better things
that
are coming up and lag behind.
Oh are you a Java fanatic? Really? I think you mean the coffee. Right?
==========================
True i am a coffee fanatic too. I am from the extreme south of India, where we have
the best of coffee daily. I miss that, Java gave me some. .NET seems to be better.
I like the best coffee. I dont settle for less flavour.
==========================
I wonder how many Bill Gates' the world will see.
I hope not many. : )
==========================
That's it! Thanks for agreeing. When i moved from VB/ASP/COM to Java nobody
bothered. Vice versa seems to be a problem for some. One way traffic...?
Thanks denizkaan...
I enjoyed your points in favour of Java, but Java lacks the old flavour now my
friend.
.NET and J2EE will go together...., only thing is .NET (un)fortunately will have
the lead. You have to live with it.
==========================
Thanks
Jambu Krishnamurthy -
ClientSide of Java is almost dead?
2002-02-14 06:13:57 mpetschke [Reply | View]
I really have my doubts.
E.g. many server applications have applets in webpages as administrative consoles. This works much better as a frontend than a purely HTML forms based GUI with many roundtrips. ASP.NET does not offer this with its webforms.
Furthermore the webforms do not solve -as supposed- the problem with the presentation layer. Some of the controls present themselfes nice on IE but with non IE-browsers they look rather odd. (Maybe this changes as .NET goes ahead)
Even more java applications (AWT/Swing) are being used as cross platform GUIs (E.g SAP, Oracle9i, ....).
Does it give real more value to the customer to reimplement these GUIs with WindowForms?
MP
-
Atleast there are issues of concern......
2002-02-14 06:44:42 kjambu [Reply | View]
hi mpetschke,
i agree with you that Java applets are superior to HTML forms. In fact JFC according to me has no parallels to match as far as GUI is concerned. It is a good medium for intranet setups.
But as far as the internet is concerned, there is no straight forward mechanism by which i can communicate with the server through an applet. Almost always we have to take recourse to some kind of tunnelling through http to send data from an applet to the saerver.
If the applet is going to be doing some complex calculations and not necessarily going to communicate with the server then it is the right solution. Then again the problem of cross-browser compatability and JVM versions in browsers have to be handled.
We cannot always relate the usage of a technology with products like SAP and Oracle. How many mid level organisations have the capability or expertise of these companies. From my experience i have seen, people settle down with JSP and html which increases product development life cycles drastically, compromising on the powerful GUI capabilities that applets provide.
When i say Client side of Java is dead, i compare it with the powerful capabilities that J2EE has brought on the server side, specifically with EJBs. That kind of a robustness and ease of use definitely lacks on the Client side.
As far as .NET is concerned, innovations are on a diffrent plane. While pure HTML is used on the client, client side validations have been beautifully handled by Server controls without we having to write a single line of code. The ease with which we can develop the frontends is astounding. HTML, Scripting for client side validation, and able to access client side data on the server side have all been seamlessly integrated. I can today develop a ASP.NET application in .NET in the same manner i have been developing VB applications for server side components. Drag, drop and write event based code. This is definitely not possible in J2EE environment.
AWT and Swing would have been successful for the internet only if the browsers had cooperated. As technologies definitely AWT and Swing are great, but when it comes to implementation for the internet they have problems. Interacting with client side components on the server is not as flexible as it is in .NET
That's my experience... You may contradict...
Thanks
Jambu Krishnamurthy
-
.NET is not available clientside, nor is it portable serverside.
2002-02-12 16:16:13 nzheretic [Reply | View]
"ClientSide of Java according to me is almost dead."
Well, because Microsoft has not released .NET clients for anything other platforms other than it's own, clientside .NET can be considered non-existant.
When will Microsoft be releasing .NET for the Mac, MacOSX, Sun, Linux, BSD?
Overseas and in a few larger organizations in the US, there is a movement away from relying 100% on Microsoft for the desktop platform.
Without full cross platform portability support from Microsoft, all you are doing is locking yourself into a single vendor relationship.
At least with Java there is alternative vendors such as IBM to get a complient JVM enviroment from.
-
MSFT does not need to do it, someone else will...
2002-02-22 21:01:16 robinf [Reply | View]
Look at http://www.go-mono.org, http://www.dotgnu.org, and http://www.halcyonsoft.com/inet, not to mention MSFT+Corel's FreeBSD .NET effort.
Mono's client is GNOME based, Halcyon's iNET client is JFC based. With C# & CLI adopted as ECMA standards, should we be concerned about client-side .NET? I don't think so.
Robin
-
.NET will take a Bigger Bite - 2
2002-02-13 06:55:06 kjambu [Reply | View]
With SOAP, XML and WebServices going to be the future of Distributed computing, according to me the issue of Serverside portability is a non issue. Even talking about Java's portability, how often can one deploy a EJB developed in Weblogic in WebSphere or vice versa without tweaking around nitty gritty things. This I am assuming both the servers are running on NT. If it is on two different Operating Systems you know what are the issues. Many things in Java are still vendor dependent and each Application and WebServer has its own extended features. Then what are we talking about server side portability. If JVM is what is serverside portability developing a MVM (Microsoft Virtual Machine) should be a jiffy.
Thanks for accepting that client side java is dead. Microsoft's innovative client side tools help enhance the RAD environment even better. Take for instance, i need not even worry about browser compatibility issues, that too without writing a single line of code.
What are we talking about Cross platforms. How many of us have used Java to develop pure Cross platform applications. If that is the case why even after 7 years of Java, JNI is around. How many of us have written Java applications to access Visual Basic DLLs.
Even today i can say, to be on the safe side, more than 70% of Java programmers use notepad or some such editor to write Java programs. Many of the Java presentations are done in Microsoft Powerpoint. The first or early versions of the JDK and other packages come for Windows.
For reliability purposes, it is better to be with a single vendor, rather than no vendor at all. Howmany of the mid level organisations have the technical expertise to play around with the Linux Operating System, Apache Open Source Servers and so on. That may be good for research not for business.
And let us not tie up this discussion with the current state of the internet. It is only at an infant stage. Making a Language or technology work across Operating Environments should not give us the last laugh. That too, at its best, is a patch up solution only. We do not know what the Operating System of tomorrow will look like. None of the Operating Systems that we are using today, including Unix, Windows and the Mac were built for the internet era.
Newer things will emerge. New Operating Systems have to be built and there is a long way to go. I feel by the end of this century, humans will forget that they have to go to a shop to buy things. An analogy to that today for example is, when a mother asks her kid as to from where does milk come, the kid says gleefully, 'From the Fridge'. (Not from the cow anymore!).
According to me .NET is the third solution for the internet. First was ASP and COM, then Java and now .NET Let us accept facts and embrace the better technology. There is nothing like monopoly. When something better comes up no one can dictate. All of us know that Java definitely cast a shadow on Microsoft technologies. Then why this fear syndrome of monopoly. Is Unix dead? Let us see what is good for humanity. Let us take the best of both worlds and get going.
I am a Java fanatic... But, Because it was good, we cannot leave the better things that are coming up and lag behind.
Let us face reality. Let Sun and others bring something better as the fourth solution, probably by 2005 when we have faced some more problems in internet commerce. For instance, can we look at a solution for eliminating the stateless nature of the protocols now. The world will see more of Ritchies and Goslings and Andreesens.
I wonder how many Bill Gates' the world will see.
Kudos to Bill Gates and his team. Today is 13th of February 2002 the launch day of VS.NET and i am happy that i got the opportunity to write this piece. My lanuage may be harsh but no hard feelings intended.
Thanks
Jambu Krishnamurthy
-
*cough*
2002-02-12 09:01:19 johnmunsch [Reply | View]
I love the laughably leading question above the comments section, "Do you agree with Jepson's take? Or will .NET take a bigger bite out of Java?"
How about option three - Jepson is wrong, in that .NET does not come close to parity with Java and MS loses market share to developers who are abandoning Visual Basic anyway and they decide to pick Java rather than C#.
You see, my take is that a development environment is far more than the sum of a handful of parts from a single vendor. A parity between Sun and Microsoft is not the same thing as a parity between Java and Microsoft.
Point #1: Microsoft has a long history of not-invented-here that prevents them from encouraging third party development environments the way Sun has. As long as Visual Studio is your cup of tea, you're grand, for any other tastes forget it. Ultimately, that prevents serious innovation in their development environment. The various Java IDEs could not be more different from one another and they are showing strong differentiation in areas like plugins/adaptability and refactoring. Any improvements that Microsoft shows will be quickly copied. They on the other hand will have a much harder time keeping up with all of IBM, Borland, Sun, etc. on their respective IDEs.
Point #2: The comparison in the article is between Visual Studio .NET and Sun ONE and the point is made that most of what is on one of the Sun discs could have simply been downloaded. This point should not be glossed over or dismissed. Because most Sun tools are readily available to all developers they can be used to build web applications on any scale. That includes personal and hobby websites.
An example of this would be the Very Quick Wiki (http://www.croninsolutions.com/veryquickwiki/wiki/jsp/). I intend to install one on my own personal website to work on a project and open it up to third party contributions. There's nothing magical about the code that would prevent someone from writing an ASP/.NET version of the JSP code, but what would they run it on? IIS on a personal workstation is just for testing purposes not deployment. So the overall effect is to discourage hobbyist use of the technology. Unless you have a business reason and a business budget for your project you should stay away from Microsoft's tools.
To say that Visual Studio .NET is better than a combination of Netbeans + Sun's SDK + some libraries _today_ is to miss the point that they are available to everyone and .NET simply won't be. And there is nothing preventing people from achieving parity between the freeware and open source material and what Microsoft has with VS .NET.
Point #3: Which brings us to open source. When I write an application or web application using Java I can call on a vast array of open source for bits and pieces. For example, at Freshmeat.net a quick review of the languages attached to different projects tells us that there are 1194 Java projects listed (a number exceeded only by Perl, C, and C++) whereas there are 6 C# projects. That's _six_, as in single digit...
ASP existed for years without my ever seeing an open source framework to aid in development of complex websites. I would have killed to have had one for some of the projects I did. Over in the Java camp I can pick from Struts, Cocoon, Turbine, etc. etc. etc.
Need more examples? Need to display RSS on your website, you can pull the code out of one of my applications. Need to render a complex graph on the fly for a daily display on a webpage, use Batik from Apache to render it using SVG. I could go on and on all day but it's pointless, Microsoft is fighting an army of ants and it is running out of bug spray. -
re: *cough*
2002-02-12 10:48:19 Brian Jepson |
[Reply | View]
These are great points, and I agree with most of what you say. But you mention having to pick and choose your development environment, platform SDK, and libraries. I did not mean to imply that Visual Studio .NET is better than the various permutations you or I could come up with. My position is that, for many web development tasks, VS.NET eliminates the need to put all this stuff together yourself, and that's going to appeal to organizations who would rather buy than build.
That's not to say I think it's a better solution; personally, I believe that I could put together a superior solution using an open source framework any day. But I still think .NET is huge step forward for Microsoft.
Even if you don't accept the proposition that .NET is on par with J2EE, consider the possibility that .NET is a large step in the J2EE direction. In exchange for not assembling all the pieces yourself, you get that 20 percent of the features that you can use to build 80 percent of all web applications.
All I'm asking is, if the Sun ONE initiative is supposed to be an answer to .NET, why isn't Sun showcasing products that compare to Visual Studio .NET? Based on some of the responses from other readers, there are some great examples out there.
- Brian
-
re: *cough*
2002-02-12 13:08:40 johnmunsch [Reply | View]
In that context then, I agree with you. .NET is a huge step forward from their older material (I did only Windows web work until August 2000 myself so I left just before .NET was making its initial appearances). And your rule about 80-20 is one that I use myself often and I know it to be very true indeed.
I can only hope that Sun does answer Microsoft's offerings with equally strong offerings gathered together and packaged to an extent that it seems equally appealing to those who still have to make decisions about their development future.
-
.NET vs. Java/Web services tools
2002-02-12 08:08:38 Steve Anglin |
[Reply | View]
There's no question that .NET got it right in terms of tools and other offerings in contrast with the Sun ONE starter kit. However, .NET still has some hurdles, namely security.
Also, there's better Java and Web services tool offerings outside of Sun: IBM WebSphere/VisualAge, BEA Weblogic/Webgain IDE, Borland's Web app server/JBuilder IDE, etc.
And finally, in defense of Sun, they really don't want to 'sell' Sun ONE as a product, along with Forte for Java, etc. Sun wants to be recognized as a Java and Web services organization. In Richard Green's own words, Sun wants to be recognized as the software industry "evangelist" for Java and Web services.
It was awkward for Sun to eliminate the iPlanet division, especially with Sun's vendors: BEA, IBM and the like. Look for Sun to let former iPlanet products like Forte for Java and parts of Sun ONE to go on the market. Look for Novell to acquire some or all of these to enhance its own Web services directory products, that's if IBM let's them.
--Steve Anglin, Managing ONJava.com/.NET DevCenter Editor
-
japple
2002-02-12 07:35:50 Brian Jepson |
[Reply | View]
I saw a post on the dotgnu mailing list that mentioned japple:
<blockquote>
Japple is a rapid application development environment for building web applications and services. Built on the JavaTM2 Platform and open-standards, Japple allows you to develop and deploy web applications many times faster than traditional methods.
</blockquote>
This sounds very cool!
-
Comment on "What .NET Got Right"
2002-02-11 23:23:19 diegovis [Reply | View]
>I haven't seen anything
>comparable in the Java universe
With IBM WebSphere Application Developer (WSAD) you don't leave the IDE fro building/publishing Web-services, too.
Some features of IBM WSAD:
- foundation based on open source (eclipse.org)
- plug-in architecture (more projects about in sourceforge.net)
- J2E oriented
- open IDE (e.g. Eclipse C/C++ plug-in)
Best regards,
Diego Visentin
Santin e Associati S.r.l. -
Comment on "What .NET Got Right"
2002-02-12 06:08:35 Brian Jepson |
[Reply | View]
Thanks for the pointer - I'll check that out.
This is the sort of thing that should have been on the first CD of the Sun ONE starter kit.
Cheers,
Brian -
Comment on "What .NET Got Right"
2002-02-23 03:43:08 diegovis [Reply | View]
I advise you to check these articles:
http://www7b.boulder.ibm.com/wsdd/techjournal/0202_kraft/kraft.html
http://www7b.boulder.ibm.com/wsdd/techjournal/0202_lu/lu.html -
WebSphere Studio Application Developer Links
2002-02-25 07:52:37 Brian Jepson |
[Reply | View]
Thanks - these links are great. Here they are again, with titles and clickable hyperlinks:
- Publishing, Discovering, and Testing a Microsoft .NET-based Web Service using WebSphere Studio Application Developer
- How IBM WebSphere Studio Application Developer Compares with Microsoft Visual Studio .NET -- Part 1: Conceptual Differences
- Brian - Publishing, Discovering, and Testing a Microsoft .NET-based Web Service using WebSphere Studio Application Developer
-
The Microsoft Security Bugbear
2002-02-11 19:48:58 nzheretic [Reply | View]
The problem is that .NET is still based on the Microsoft platform which inherits Microsoft's past attitude to the priority of security.
Sure, the CLR provides a sandboxed enviroment using methord call type and argument checking, preventing buffer overflow and misstype attacks, but it does not provide much protection for failure in application/program logic of the underlying DDLs and Servers. For example, type checking would not provide protection against malformed URLs passed to IE.
See "Meet the future of Windows security exploits
"
http://www.theregister.co.uk/content/archive/23075.html
Even Bill Gates acknowledged this issue in his recent "leaked" email.
http://www.infowarrior.org/articles/2002-02.html#memo
Quote
"As software has become ever more complex, interdependent and interconnected, our reputation as a company has in turn become more vulnerable. Flaws in a single Microsoft product, service or policy not only affect the quality of our platform and services overall, but also our customers' view of us as a company."
Unquote
If you say that this issue must also effect Java on the Microsoft platform, well, yes it does.
However, from what I have seen of the C# and CLR interfaces,SUN's Java accesses external interfaces though a higher level of abstraction. This provides a small measure of protection against potental failings in the externel application logic.







That being the case, ease of use, the learning curve involved and productivity timeframes are the most important.
Microsoft has all along been a software company and has specialized in User interfaces, ease of use and integrated products. If not more it has been bringing out products in these lines for the past 12+ years.
Why should a hardware company like Sun even try to compete in this area. It would have been nice if developments in the hardware front would have been concentrated. Giving away something free on the software front, projecting itself as a messiah for s/w developers and having the hardware prices nowhere in the reach of a common developer is beyond my thinking. How many Java developers use Sun Solaris for developing their Java applications compared to Windows machines. That seems ridiculous.
As far as the development environment goes, today as we stand, there is no single product in the market that can match Visual Studio.NET And as far as i have seen from the Beta1 stage of the .NET framework, i dont see if it lacks anything that Java has to offer. Don't bring the platform independency aspect into this discussion anymore. With SOAP, XML and WebServices, the days of platform dependency is history.
See the kind of complexity EJB involves, especially for a begginner to distributed computing. What is it that you can greatly achieve with EJB that u cannot with a simple dll, for which i need not take one single step extra to develop in VS.NET Why make things complex when the same can be achieved in simple ways.
It is very easy to say Microsoft copies technologies and remodels it as if it is its own. What did Sun do. Almost all the technologies from Sun, except Servlets, were tehnologies that were around somewhere in some form. Also see, if Sun has done anything great in the last one year. Two things that have come out from this side are Apache Struts and bundled up old XML packages as WebServices. None of them are simple and straightforward. Even for the serious Java guy, it is playground for tweaking around. See ASP.NET's Server Controls, how are they less than struts, yet so simple and intuitive to use.
Then this big talk about MVC and design patterns, Model 1 and Model 2 and so on confusing the young Java programmer and distracting the .NET guy. Is it not common sense that code and content has to be separated. This we are doing the days ASP and COM. In fact the real use of COM caught on when this problem was identified in the initial days of internet programming. MVC in JFC was understandable. There itself Java has not adopted the complete MVC architecture as that science goes. If you pour through the documentation of Sun's MVC for software today it talks basically about how to write applications separating code and content. Something which can be told in one paragraph need not be talked about as if it is a technology. These kind of things can put away a young computer scientist who is venturing into the world of computing.
As a Microsoft developer, i have only one thing to do, get on to .NET Everything is part of the environment and if anything advanced there are leads from within the ide. In fact VS.NET is a one window opening to a Microsoft developer....What is the equivalent, or even a far equivalent thing from Sun's side.....That should tell whether the world should imbibe .NET or J2EE. I am a strong Java lover and have developed many systems in Java, but when a better technology comes around i dont suggest anyone to stick to something because i love it. That way i loved COBOL too, I loved C too.....Can i suggest COBOL to the world now.
Let us agree facts, .NET is definitely superior as a usable product to whatever Sun has to offer as disjointed entities.
After all this debate, take it from me .NET and J2EE will go hand in hand, only thing is .NET will have the upper hand and the lead. J2EE will be trailing behind. Like Coke and Pepsi, Like Unix and Windows, Like ......
But this time on .NET is a sure winner!!!
Thanks
Jambu Krishnamurthy