You are correct. I was caught up in rebutting Daver’s false information comparing PHP to client-side code and my statements about Java and HTML being mutually exclusive were too broad. As far as the end result is concerned, the delivery mechanism is irrelevant.
Neither can replace Java. PHP is merely a preprocessor, and Flash can only do animations. Neither can do, say, matrix manipulation on a webpage.
Not to be (too) pedantic, but FlashMX has its own language (ActionScript), which is a close cousin to JavaScript, but with more objects. Java is more robust, obviously, but you can do quite complicated/math-intensive things with Flash - it’s not just animation and splash screens. You’d have to build a lot of tools, but you could do matrix manipulation using a multi-dimensional array within ActionScript.
Yay, more creeping featuritis.
Next target: kitchen sink.
Sorry, but as a professional Java programmer in a large corp, I can tell you that the ‘Java vs HTML’ discussion comes up every time we develop a client application that has a zero administration requirement. I’m almost always on the side of doing it in HTML, because I think it is very difficult to build good Java-based client applications. Maybe with webstart, but the applets are just too dodgy in my opinion to make for good, robust commercial applications. We keep trying, though, and we have several commercial products that have client interfaces rendered in Java applets. But I think we’re going to have problems over time with these. The way versioning is done in plugins, for example, leads to all kinds of problems.
HTML with Javascript, XML, CSS, and all the other latest technologies can do a pretty good job of rendering a UI - even a complex, real-time one. I’ve built things like dynamic navigation trees and alarm monitors in HTML, using hidden frames and scripting to poll the server and pass data back to the page at specific intervals. RPC can be implemented in Javascript, or even SOAP calls.
Non-trivial applets also tend to get large and slow to load, which makes the overall user experience more painful. HTML UIs load instantly, and done well they look better than Java and are as usable or more so.
There is TONS of commercial Java code out there, BTW. Our software shop alone currently has about 30 developers who are working exclusively in Java, with maybe another 30 still doing C++ coding. Those who move from C++ to Java usually enjoy the move, because Java doesn’t require nearly so much annoying ‘glue’ to put everything together.
OK let me hijack this a bit.
I use a computer at work. I use webtv at home (simply cause I could never stand to come home and sit behind a computer)
I have written small things in both HTML and Java.
Here is the twist…
WEBTV isn’t Java Compliant. Why? Because Microsoft owns WebTV and Java isn’t a MS product. (it uses Javascript but not Java)
So the biggest complaint WebTV is shut out of so much on the web.
So does this factor into the debate to use HTML.
It does, but not necessarily because we care about WebTV users (kidding…). It’s also relevant for disabled people using screen readers and a lot of other people who are forced to use something less than the latest-and-greatest browser for whatever reason.
With a little effort on the designer’s part, you can detect compatibility and provide the user with a version that will work. For example, some of my team are fond of using Flash navigation tools and some clients really like the results. However, in every case there is a transparent (to the user) gateway which determines whether the user’s browser is Flash-capable and will route to an HTML version if it’s not. This would also be possible with Java applet-based nav tools. Of course, it’s not necessarily true that we’ll provide HTML alternatives to all Java content because there are some things you just can’t do with plain HTML, but if you’re talking about basic site navigation, there’s very little excuse not to provide alternatives.
As an aside, my Flash-happy designers have recently discovered they can do most of the same effects with CSS and DHTML using much smaller source code and much broader compatibility. Nothing I said could convince them that Flash was a bad idea, but they got there on their own.
So if I understand correctly, both HTML and Java can be used to create mild but consistent disagreement, with Java being more effective as a subject of dissent.
What will they think of next.