Sun Debuts JavaFX As Alternative To AJAX
r7 writes "Internetnews is reporting on Sun's introduction of JavaFX at JavaOne today. Looks like a combination Applet, Flash, Javascript, and AJAX with a friendly programming interface. Does this really spell the end of AJAX? I sincerely hope so. Nothing built on Javascript will ever achieve the security, cross-platform reliability, and programmatic friendliness that Web 2.0 needs. Proprietary solutions and vendor lock-in are also dead ends. JavaFX has the potential to satisfy this opportunity even better than did Java over a decade ago. Along with AJAX, let's hope JavaFX also puts paid to Microsoft's viral Active-X and JScript, and, more importantly, that it really is a web scripting language that developers can grok."
Also from the site: Like all of Java, JavaFX Script will be available via the GPL license.
Bad phrasing on the part of the submitter and/or editors: according to the article, JavaFX isn't a "combination Applet, Flash, Javascript, and AJAX" in the technological sense, but in the sense of the kinds of features it provides. It's actually an extension to Java.
Anyway, there is one drawback it's going to have as compared to AJAX: It will require end-users to install something. As it is now, AJAX will run (to some extent) in MSIE, Firefox, Opera, Safari, and a number of browsers with similar rendering engines. Even if it gets built in to the standard JRE, that still requires people to install Java, putting it more on par with Flash (though at this point a lot of people do have Java installed).
So, how long before Sun convinces Apple to include JavaFX in their version of the JRE? Last I looked you couldn't just download a JRE for MacOS X.
On OS X, it's very fast even on my little G4. I believe that OS X pre-loads Java. On Windows, I know it can seem that way, but if parts were pre-loaded (or the whole thing kept in memory and just paged out when not in use) startup would be fast. If this became big (and lets hope, JS is terrible) then the browser would have a VERY good incentive to pre-load java and be ready to go. It wouldn't load up and unload all of Java each time you navigate pages.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
We are moving from using an open language (Javascript) that can be a real pain (thanks to all the different browsers ways of interpreting and using things) to an open language (JavaFX will be open sourced according to the FAQ) that will have a good reference implementation and should alleviate many of these annoying little things about JS, without having to use something as heavy or overkill as Flash.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
I've not had, in 10 years, an easy or simple or quick Java "first time install."
Every single time it has been hard, complex, and slow. This despite wanting it to be good.
I generally have to go visit some download page, figure out which of the myriad Java acronyms I need to install, have it fail, then have to visit the page again and figure out how to do it manually, work at it, fail, and then ultimately, give up. In the very few occasions I've seen it work, there is the infamous Java load time to roll my eyes at.
Contrast with Flash, which I hate, and which I practically have to struggle, to avoid having on my computer.
That is, with Flash apps: I visit, it says, "You need flash," I click on the "OK install Flash thing," and after like 2 seconds, it's installed, and then playing whatever it was I wanted to look at.
After the very first install of Flash, I don't notice that it even loads, at all. I don't even think about it.
figure out which of the myriad Java acronyms I need to install
What? There are only three different "flavors" (if you will) of the JDK: Java EE, Java ME, and Java SE. If you go to www.java.com, you'll only be presented with Java SE, and it doesn't even mention the SE bit. I clicked a "download java now" button, it automatically figured out which platform download I needed. Done.
Maybe you're in some other interweb?
JavaFX was announced in the General Session this morning, but this afternoon, during a pseudo-general session run by Bob Bruin, the Java SE lead (his name escapes me at the moment) mentioned that they are in the middle of a push towards "faster, faster, faster" for Java 6. This doesn't just mean performance running, but he specifically mentioned startup times. This project should be released sometime aroud 6 months from now as something like "consumer JRE" - which is supposed to reduce startup times to "near zero" (read: comparable to native apps). Remains to be seen if it pans out, but it is moving in the right direction, to be sure.
I think he was referring to this site which is the one that most people link to when they want to tell someone to install Java.. because Sun recommends you link to this site.
Anyway, I tried java.com, using Mozilla Firefox, and it gave me this page which is really quite good. One thing I gotta ask though, why is Sun asking me to install an unsigned extension? Why can't they go get a signing certificate already?
How we know is more important than what we know.
Adobe had nothing to do with it. Macromedia did all the legwork before they got bought.
Also, you can't really blame Sun for not having Java pre-installed on most desktops. There were certain monopolists doing everything in their power to prevent Java's emergence as a solid platform.
It's always a long day... 86400 doesn't fit into a short.
Netscape renamed LiveScript to Javascript when LiveConnect actually made it possible and easy to, get this, script java objects. Despite legions of ignorant know-it-alls who feel validated by scoffing at things they feel are somehow technically amiss, Javascript has always been an appropriate name for it ... even if LiveConnect was always a slow and buggy crappy API.
I'm no expert, but I've heard tell that security is a process, not a product.
Well, ya know, PDF has a similar reputation to Java.. it freezes the browser. As such, I almost always curse myself when I click on a link that takes me to a PDF instead of right clicking and selecting save-as. There's a firefox extension which will prompt you every time you click on a PDF whether or not you want to view in the browser or save-as.
How we know is more important than what we know.
Wii - yes (flash 7, lots of sites offer flash games tailored to the wii's interface)
Cell phones - yes ("flash lite", newer phones with FL2 are equivilent to flash 7)
Pocket PC - yes (at least 6)
PSP - yes (6 or 7, not sure)
PS3 - yes (don't know the version offhand, should be at least 7 since wii has that)
sig? uhh, umm, ok
JavaScript is a better language than Java. Seriously, it truly is.
Microsoft kinda-sorta shuffled it off into other areas after that. Now they're back with a vengence. Silverlight will be everything that ActiveX was going to be, but BETTER! Can you feel the excitement?
.NET and security surrounding both to bring this type of technology to the Web.
.NET 3.0 and WPF Web applications. Unlike ActiveX they run in two sandboxes of security, and don't have access or security to do anything more than an HTML page can.
A) Silverlight is nothing like ActiveX. In function, security, etc. The main thing of silverlight is a more feature rich version of vector animation technologies with the ability to push higher quality video in a very easy to program manner that also directly works with current server and browser side scripting standards. It is what SVG should have been, but SVG couldn't see past basic image rendering. Flash is overkill, locked to its programming model, and in the end has far less features than SilverLight.
From what I personally know of Silverlight, MS waited for other technologies to fill this gap, and 5 years later it never happened, so they decided to use what they learned from developing WPF,
B) Yes ActiveX sucks, and should have been limited to a Intranet or corporate technology only. MS was stupid not to have seen the security risks of distributing code in this manner.
C) MS has killed ActiveX in case others haven't noticed. It is hell to even get a control to run anymore because of the restrictions MS has added themselves.
D) If you want to talk about MS's ActiveX replacement, then you would be talking about
Go look up the British Library for an example of a WPF Web application, it is NOT SilverLight.
AJAX is an overused acronym. It doesn't do anything that you couldn't do with frames or popups anyways.
To my mind AJAX is more the step its taken towards generic frameworks that hide the html/javascript/xmlhttprequest stuff that's really going on, and all the cruft to support doing it on multiple browsers and presenting it all to developers with as an API.
In that view AJAX is sort of like the OO C++ wrappers for the C windows APIs. (MFC, OWL, etc). Previously C++ programmers would encapsulate what was needed for the application at hand, each sort of hacking something together. And then suddenly there were these big huge frameworks you could program against; that mostly worked pretty well, but occasionally failed in spectacular ways or hid some functionality that you needed. Forcing you go back to the C APIs directly, and work doubly hard to avoid blowing the whole thing up, since the frameworks could be really badly trashed if you started manipulating hWnd's and so forth directly.
The big difference though, is that AJAX is flakier than the OO wrappers ever were.
Thank You!!
I was just about to say all those things until I read your comment. JavaScript is actually quite nice once you actually learn it beyond using alert.
Check out http://javascript.crockford.com/javascript.html for info on why JavaScript is so misunderstood.
In this world nothing is certain but death, taxes and flawed car analogies.
Sun just released it it seems. They are asking for community help to replace the proprietary bits.
They are doing a lot and doing what they said, you can't deny that.
"I think this line is mostly filler"
If at first you don't succeed, skydiving is not for you
"Go run along and play; the adults have work to do."
You can make a point without insulting people. In fact, it tends to work a lot better.
Start here:
i pt_1.5_Guide
a ndards/Ecma-262.htm
http://developer.mozilla.org/en/docs/Core_JavaScr
(Yes, those are the Netscape docs from 10 years ago. No one read them then, either.)
If you're brave, I also recommend the ECMA specs:
http://www.ecma-international.org/publications/st
All the Web APIs you need to go with that can be found at the source:
http://www.w3.org/
Javascript + Nintendo DSi = DSiCade