I think it all depends on what the purpose of the programming is, i think each of the languages you mention have their own strenght, and most people like different languages.
>>Best Web Technologies
[edited by: lazerzubb at 9:43 am (utc) on July 8, 2003]
Any good opinions on Java?
Not a good opinion as it is from a non-technologist! I may be way off here as it is only from limited experience with developing our own mainly text based sites.
1. Java was heralded as the "next big thing" say half a dozen or more years ago as the first major cross-platform web technology with "push" and multimedia capabilities. It was owned by "sun" i think and "could" work across both major browsers and several OS's
2. We found that the ratio of info presented vs loading time/memory req. made it not useful at that time.
3. plus the fact that browsers did have to have java capability built in or added, (and that capability needed a significant amount of hard disk space for the browser software)
4. We thought that it had high memory requirements making it susceptible to problems in low memory viewing environments.
Subsequent technologies like Flash may have superceded a lot of it's competitive advantages.
I know i will probably get blasted over this, but its an unprofessional perception based on our limited practical experience with it in our own small world! Some of the early applications of java looked very impressive graphic and animation wise, and these types of applications seemed to be the way it got early excitement. - video-animated banners - early interactive applications etc...
As a java user myself I wouldn't disagree with that at all Chiyo, as far as client side java goes. Server side java is as useful/powerful as any other server side web technology. I use java because I know it pretty well, and I get on with the OO methodology very well. That said, theres no good reason why I couldn't do just the same thing with classic ASP, .NET or php - if I knew anything about those last two that is :-)
My opininbg on Java is currently a hat/hat/HAT relationship.
thanks to some obscure combo of major bugs in Java-OpenGL relationships , it instantly fries any of my browsers due to my dual monitor setup.
That the bug has been known for a while and not been fixed is a sorry state of afairs. To that effect I had to deinstall all traces of Java from my machine to safe guard my sanity and protect my work. A pity, since there was the ocacsional online ap I wanted to run...
JAVA as a part of JavaServer Pages is fabulous. Stand alone applets when used as online applications are also fabulous. Applets used a cute addition to a web page aren't really that different from DHTML and require that the client have a virtual machine.
Browsers and OS used to come with the JVM pre-installed, but Windows XP decided not to include Java support (hence the big lawsuit of Sun vs MS), but it's a quick download.
FWIW, two aspects I wonder the most about when considering which web technologies are "best":
1) How well -- and how far/big -- will a given technology scale? How much traffic can a large site handle using technology X .vs Y? I don't know the answer to this. A lot depends on implementation of course.
I routinely read that server side Java, i.e. J2EE/Application Server/Servlets/JSP is chosen by large firms that want to build very large websites that will handle very large amounts of traffic. Is Java really the best for building a site that scales to the largest extent possible? How does PERL or PHP compare I wonder?
I don't think Google uses app servers or Java. But they are serving up pretty much static results from their prebuilt indexes and databases rather than stuff created on the fly in real time by some database backed corporate site. I think that's the kind of corporate type workload folks giving the nod to Java are referring to.
I recently read a little on Java. Seems there have been very large improvements made in speed lately. At least so claim folks talking about the latest version of Java (1.4.1 or 2; can't recall)and some JVMs (like the one IBM makes that improves garbage collection quite a bit).
2) Which facilitates the best security? Sure, lots depends on which components are chosen and how well everything is configured. But which technologies (esp. development languages) best help one to write exploit free code? I hear Java talked about favorably is this regard, too.
>>Any opinions on the most useful Web technologies?
Ya beat me to it lazerbubb, HTML........
Is CSS a technology¿¿
IMHO Java is a great language in search of a decent implementation :) First it was promoted as client side then when that failed it was promoted as a server side web development environment.
For most web applications J2EE is massive overkill: an app has to be preety big (eg online banking) to justify the additional development overhead.
And as for speed, it is still an issue as evidenced by each new release saying how much faster it is - every time! If it really had speeded up as much as advertised by now java programs would complete execution before you even thought of starting them ;)
Anyone else see the infamous java-Hello-World-requires-30MB-memory-footprint sun memo?
Oops and by the way, security is a process not a product... you can write insecure apps in any language.
Yes, security is not a product per say. However, I think developers -- at least non top notch expert ones (i.e. the one's developing most of the code out there) -- are more likely to produce code with security vulnerabilites using some languages than they are with others.
Take 1000 developers equally competent in, say "C" and Java. Have them each implement the same complicated application in both "C" and Java. Which code base do you think will most likely to have the most buffer overflow exploits?
I'm not trying to defend Java -- nor attack "C. Just trying to clarify the type of exploits I understand to be more likley in language X codebase than if it were written in language Y codebase.
My advice is: look at the type of people developing on each platform, and see which one you most resemble. :)
From reading some of the posts here, it seems that learning Java isn't really necessary. What about cookies? I never really looked into it, but to Cookie visitors to my site, is it necessary to learn Java?
Those are two different languages. One is compiled and is very complex, the other is interpreted and is very easy to learn.
I take your point louislouis. I just wanted to highlight that it doesn't matter if you use the world's most secure language/environment if you write code that allows, for example, SQL injection.
If we're talking about great web technologies that don't get even remotely the exposure they deserve, then I'd vote for Zope [zope.org] and Python [python.org] in general without hesitation.
I understand what you are saying -- and you are SO RIGHT. Too bad lots of folks gloss over the security aspects of coding software.
|Browsers and OS used to come with the JVM pre-installed, but Windows XP decided not to include Java support (hence the big lawsuit of Sun vs MS), but it's a quick download. |
Can you "automate" the download process?
So that the browser asks something simple like "would you like to download Java?" and then "accept the agreement?" and then "thank you, installation complete?"
How can one make it really easy for the user?
Can this be done in a browser independent way?
Does Opera come with Java?
|If we're talking about great web technologies that don't get even remotely the exposure they deserve, then I'd vote for Zope and Python in general without hesitation. |
Given all this truly fantastic selection of open source software products, how come we don't see things like Python or Perl "applets?" Is this inherently hard to do, or easy to do but requiring more help from volunteer programmers?
Its very confusing to discuss technologies without making a distinction of server side and client side things.
If you are talking of server side technologies then Java in the form of JSP/Servlets competes with
Perl,PHP,ASP,Coldfusion,Python and many more.
Each has its own strengths .. and "who is using it" is the most important factor in choice of which one to pick because each developer has some favorite which is best for him/her. Other considerations are what goes well with what .. ie ASP/IIS/Windows or PHP/Apache/*nix etc are usual combinations.
Java is not the best choice for most situations IMHO. May be large scale applications which require lots of developers and rigrous consistency on how the code is written is one such situation.
Client side technologies are a different animal altogether