Sun Debuts JavaFX As Alternative To AJAX 441
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."
Have they fixed the startup time? (Score:4, Insightful)
It has been found that people give a web site about 2 seconds to respond before they determine it is not going to load and surf away.
Re:Have they fixed the startup time? (Score:5, Insightful)
Re:Have they fixed the startup time? (Score:5, Interesting)
Also, because of the most stupid thing Sun ever did, people tend to deliberately close the JVM after that first initiation. Why? Cause Sun puts a stupid little Java icon into the systray. It immediately draws attention to the fact that the JVM is in memory and people think they might get a speed boost or something by closing it. (Or something equally irrational that users think.) This was a pretty predictable result.. and the icon serves no purpose anyway, so why bother?
Re: (Score:2)
Re:Have they fixed the startup time? (Score:5, Insightful)
It's just confusing to them.. and it has a negative effect on performance when they fiddle with it.
More importantly, it's a change to their desktop which happens outside the browser window in response to going to a web page. Users don't really understand that it is the browser that spawned this.. they think that it was the web page that spawned this, and they understand that web pages shouldn't be able to put icons into their systray.
All in all, it's a dumb idea.. and Sun should have done some user testing to see what the user's reaction to it was.
Re: (Score:2)
Re: (Score:2)
The first 30 seconds of user testing would have told the engineers at Sun that.. so clearly they didn't do any.
Re: (Score:2)
And then from the summary:
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 pro
Re: (Score:2)
Re: (Score:3, Informative)
Strongarming Mozilla (Score:3, Interesting)
That would go a long way toward maiking this idea fly.
Stupid branding. (Score:5, Insightful)
Sorry Java, you're not nearly as important as you think you are. QuickTime commits the same set of sins, which is why I swear by QuickTime Alternative, it is a bit less annoying.
Re: (Score:3, Interesting)
Re:Have they fixed the startup time? (Score:5, Interesting)
And thus it really depends upon how this is used. If its used deep into a page say for something like an online word processor, where you know and expect to be waiting, versus a homepage which you expect to open instantly. Really its up to the developers to use it where it makes the most sense. Sadly few do.
Re:Have they fixed the startup time? (Score:4, Interesting)
Re:Have they fixed the startup time? (Score:5, Insightful)
* Static strict typing, that throws a runtime error if you try to cast to an incorrect type
* Compiled into bytecode, with a JIT runtime
* Cross-platform (windows, mac, linux and solaris)
Re:Have they fixed the startup time? (Score:5, Insightful)
Re: (Score:3, Insightful)
Re: (Score:3, Informative)
Re: (Score:3, Interesting)
Re:Have they fixed the startup time? (Score:5, Insightful)
Re:Have they fixed the startup time? (Score:5, Informative)
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)
Re:Have they fixed the startup time? (Score:4, Informative)
"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.
Re:Have they fixed the startup time? (Score:5, Interesting)
Re:Have they fixed the startup time? (Score:4, Insightful)
Re:Have they fixed the startup time? (Score:5, Informative)
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.
Re: (Score:2, Informative)
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?
Re:Have they fixed the startup time? (Score:5, Informative)
Anyway, I tried java.com, using Mozilla Firefox, and it gave me this page [java.com] 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?
Re: (Score:3, Interesting)
That's a gross exaggeration. I've done (proprietary) signed XPI extensions. While it is indeed quite complicated to do, it is possible. I remember having looked for documentation have finding it very sparsely a little over two years ago. I would have thought the Mozilla team would have made it better since then, but I think I'll try documenting it now.
Re:Have they fixed the startup time? (Score:4, Interesting)
The difference here is that you're going to java.com, whereas the GP is going to java.sun.com (which is the first two hits on Google if you search for "java" [google.com]). Incidentally, I never knew java.com existed until now: at some point I Googled for "java" when I needed a JRE, and once I somehow navigated the labyrinthine recesses of sun.java.com to download what I wanted - seriously, it's reminiscent of getting the free RealPlayer - I just bookmarked that page.
Re: (Score:3, Insightful)
As far as I can tell, Sun never did that for Java.
Re:Have they fixed the startup time? (Score:4, Informative)
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.
Re: (Score:3, Insightful)
Sure, that's why AOL wasn't successful in the dial-up era, unnamed monopolists prevented them from sending out install CDs or making deals with computer companies. Oh wait
Re:Have they fixed the startup time? (Score:4, Funny)
Re:Have they fixed the startup time? (Score:5, Funny)
sun-java6-plugin gets you everything you need to enjoy the 12 java applets that are on the web.
Re: (Score:3, Informative)
Re:Have they fixed the startup time? (Score:4, Insightful)
What useful content is going to be rendered while the applet loads? It's like saying Window's boot time isn't problem because you can watch the Windows logo while the OS is loading.
Re: (Score:3, Informative)
Re:Have they fixed the startup time? (Score:5, Funny)
Well, I'm off then. I'll surf away to the other Slashdot...
Oh, wait! I wanted to see the front of Slashdot again, so I actually waited for as long as it took.
Bummer!
Re: (Score:2, Insightful)
Actually, it's four seconds [bbc.co.uk], but what the hell, you're only off by 50%.
Re:Have they fixed the startup time? (Score:5, Interesting)
People may be annoyed by 2, 4 or even higher wait times, but they'll put up with them in the right circumstances without complaint.
Showing people a blank screen, not so much. Show them a progress bar, and they might wait for it; especially if it contains something they need.
The whole 'get it on the screen in 2 seconds or you've lost them' applies to online shopping, product reviews, forums, etc. But people are willing to wait 5-10 or even longer for their bank, their credit card, to file their taxes, to play a game, or to edit a spreadsheet. (As long as the 'start up time' is at START UP, and not after every click.)
If 'web2.0 apps' like gmail took 5-10 seconds to start up, but didn't exhibit the html/javascript flakeyness that would be worth it. And a lot of the load time could be addressed with caching, and having the VM preloaded, if that was the only stumbling block, hell they really are more *application* than *webpage* -- with some browser support they could be ready to go in the background, selected like wii channels or something, for commonly visited 'sites'.
AJAX is a mostly a train wreck on par with the spaghetti code that we inherited from the Basic/C/Cobol era. Html/javascript just wasn't designed for this sort of use. AJAX is like writing multithreaded real-time applications in Windows 3.0 or MacOS9 cooperative threading models... you can do it... and it can even mostly work most of the time if you don't bang on it too hard. But its never going to be great.
asp.net was a decent move forward, as at least it mostly shielded the developer from the ajax mess. Unless you needed to do something
But we *really* need to see a good standards based framework on the browser side, that applications can be written against.
Of course, we've always had Java and ActiveX. But Java was proprietary, and was hampered immensely by Microsofts attempts to discredit it, and embrace/extend/destroy it, including their own incompatible MSJVM, and "Visual J++" version of the language. Plus it was plagued by its own problems. Not to mention that the language itself I always found cumbersome. (I think Microsoft really did a good job with C# by comparison.) And ActiveX? Well, the less said about that plague on mankind the better.
JavaFX, at first blush, looks like it might fit the bill.
Re:Have they fixed the startup time? (Score:4, Interesting)
The limitation was never that the XMLHttpRequest object wasn't around. The limitation was that you had to deal with the realities of sending your pages over modems, creating this pressure for dynamic pages, but older computers were too slow at processing JavaScript to allow you relief by moving much display logic into the client. You'd end up locking the whole browser.
These problems are all dealt with now because of faster networks and faster computers. The tools in this area are just the same old shit with a shiny coat of paint for the most part.
Re: (Score:3, Informative)
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 neede
Proprietary solutions & vendor lock-in (Score:5, Insightful)
Re: (Score:3, Informative)
Re: (Score:2)
Re: (Score:2)
Sun Java is open source, probably they publishing the code this month. Your point?
Re:Freedom of a programming language (Score:4, Informative)
They are doing a lot and doing what they said, you can't deny that.
Re: (Score:3, Interesting)
I know of people having compiled the linux kernel under the Intel Compiler for quite a bit of a speed increase.
Re:Proprietary solutions & vendor lock-in (Score:4, Insightful)
Is the JVM really less "heavy or overkill" than Flash?
Hahaha (Score:2)
AJAX Going Away? Oh noes! (Score:5, Insightful)
Did it occur to you that you're sounding exactly like the hype you're decrying?
AJAX is a stupid name developed for the ole' hype machine (mostly to sell conferences and books, methinks) but the basic web technologies behind it are NOT THAT BAD. To use the example from the article, am I "tearing [my] hair out over as [I] attempt to get the JavaScript working in both Internet Explorer and Firefox?" Actually? No, I'm not. And I just implemented a Comet [wikipedia.org] library in both Javascript and Actionscript. About the most frustrating thing was the fact that Opera ignored the cache-disable commands when using XML.load in Flash. So I build a solution into the library. And if you think that's fun, wait until I detect Server Side Events in Opera and use XMLSockets in Actionscript!
*shrug*
Oh, and I had to dynamically patch Safari and Opera to add support for the toSource function. Easy as for(var i in object) pie.
The problem with most "AJAX coders" is that they still think of Javascript as that cutesy language they used to do scrolling statusbar text with. But it simply isn't that bad. In fact, Javacript is a full-up, Object Oriented (or at least, OOP capable) langauge that fits the lightweight needs of the web browser perfectly. Java is a 600 pound gorilla that's better for designing heavyweight applications that are secure, robust, fast, and feature complete. The two target very different markets.
As for JavaFX, there is (if you'll excuse the expression) "nothing to see here". It's just a Silverlight competitor. Which makes it just as questionable as the product against which it's competing. If you really want a replacement for XMLHttpRequest, use XMLSocket [devpro.it] instead,
Re: (Score:3, Insightful)
Java Script isn't so bad! Sure I had to patch browsers and write a different version for each one. I made my own library and blah blah blah.
Sounds bad to me. Javascript is very annoying, mostly due to the incompatibility between browsers, but for other factors as well. I welcome this. And how do you know JavaFX will be so bad when they have only announced it and haven't previewed it? Worst case scenario, it feels like using the Google Web Toolkit but doesn't produce large .js files that you have to includ
Re:AJAX Going Away? Oh noes! (Score:5, Insightful)
Also, OOP is not bolted on in Javascript. It's been there since nearly the beginning. It's just that 99% of web coders never actually learned how to code Javascript.
I've been a Java programmer for about 11 years. In that time, I've explored the VM and libraries inside-out, upside-down, and sideways. The conclusion I've come to is that Java in the browser is a bad idea. At least in the form of the J2SE. If it had been developed more like a J2ME plugin with access to the DOM, it might have been a decent replacement for Javascript. But it wasn't developed that way, and now I think it's not in a very good position to compete in that space.
You bring me requirements, and I'll show you the magic that modern web technology can perform. And it's only going to get better. My comments about Server Side Events and XMLSocket are meant to mention how much better it's going to get. SSE will effectively obsolete Comet-style requests, resulting in rich server "push" systems that can transmit nearly anything to the client on demand. No need to worry about different XMLHttpRequest implementations, it will all be automatic in the browser. Opera already supports this, and thanks to the magic of Javascript, it's easy to branch to code that makes use of it when available. Wrap it in your libraries, and you're ready. to. ROCK!
Which is its strength as a platform, and its weakness as a scripting language. Don't get me wrong, the computer scientist in me wants to go with static typing. I love static typing. It makes all the bad problems go away. But the web coder in me knows that distributed document technology needs something more flexible. Dynamic typing as in Javascript is that flexibility.
It's slightly out of date, but you might find this article I wrote [intelligentblogger.com] to be interesting. Web technologies are really accomplishing what Sun envisioned all those years ago.
Re: (Score:3, Insightful)
I suppose that maybe you were being facetious or sarcastic, or maybe you were simplifying, but static typing hardly "makes all the bad problems go away". Unfortunately, I don't remember who originally said it, so I can't properly attribute it, but, paraphrasing, "static typing is the compiler doing some cursory testing on your code". To raise your level of certainty that your programme is bug-free, you have to do a lot of testing. If you use a
Re: (Score:3, Informative)
Re: (Score:3, Interesting)
Re: (Score:3, Informative)
http://developer.mozilla.org/en/docs/Core_JavaScri pt_1.5_Guide [mozilla.org]
(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/sta ndards/Ecma-262.htm [ecma-international.org]
All the Web APIs you need to go with that can be found at the source:
http://www.w3.org/ [w3.org]
Re:AJAX Going Away? Oh noes! (Score:4, Insightful)
Javascript is a pretty awesome language once you strip out all the web browser DOM stuff. I've used it as an embedded scripting language in my own applications and was very surprised by its capabilities.
Re: (Score:2)
You don't have to program in Java to use JavaFX Script. Of course, if you want to code logic behind the UI in Java, you can, since it runs on the JVM, but I'd imagine that using it in an applet providing the front end to a web app often wouldn't involve anything other than JavaFX Script on the front end, and whatever you wanted to program your web app in on the backend, whether that's Java or a RESTful RoR webapp ser
Re: (Score:3, Funny)
Congratulations are due to you, sir. That is the stupidest comment I've read this month.
Re:AJAX Going Away? Oh noes! (Score:4, Interesting)
And the experienced engineer knows that cross-platform problems follow you everywhere. At some point you need to stop whining and get the work done. If we simply complained about the platform technologies all the time, there would be no POSIX programs, no Win32 programs, and a much smaller pool of good Java programs. Specs are specs, and they tend to get interpreted differently. As an experienced engineer you should have long ago learned how to normalize these differences rather than simply throw up your hands in frustration.
How does one answer this question? Of course you don't need Javascript for a "simple HTTP request". You need Javascript to dynamically modify the DOM, restyle the layout, respond to user input, and manage a less-than-simple HTTP request all at the same time. And like the "vealed calf" that I supposedly am, I've been finding that this design has many superior aspects when compared to a Java or Flash program. (Even though I'm actually supporting Flash with an AS2.0 version of the same APIs.)
Here's something for you to ponder. I am creating these APIs because the target environment does not support Java. It supports Flash and it supports advanced Javascripting. So like the "vealed calf", I am targeting the platform out of necessity. And you know what I've found? It's not actually as bad as everyone is making it out to be. The pitfalls are well documented and/or testable. Mostly minor cross-platform issues that will go away with each browser release. So it becomes quite easy to patch minor holes in the interim.
You know what we didn't have 10 years ago? An internet on which the vast majority of the world's population performed financial transactions. An internet that targeted your average consumer rather than business folk or hackers. An internet through which financial gain could be obtained by disrupting the normal flow of traffic.
You may be too young to remember when "Client/Server" was the latest hotness, but I remember it well. And I can tell you right now that we would have been no safer with those programs than we are with some of the moronic coders we have today. I just loved it when it was possible to telnet into a port and start executing commands before passing login credentials, because no one had ever tested the no-credential situation. All their code assumed that things happened in a certain order without ever verifying the case.
If you want to point a finger at the security problems of the web, then how about starting with yourself? Specifically, you and every programmer who writes software for the web. Computers Software is an engineering discipline just like any other. If you fail to apply proper engineering principles, you will fail. Those principles don't get learned overnight. They take years to cultivate and grow. Unfortunately, the industry wants fast answers and cheap programmers. They are rarely willing to pay for older programmers with strong skills to head up teams and ensure that the engineering is done right. Instead, they first try junior programmers, then outsourcing, then offshoring. All in an attempt to make a process cheaper by cutting corners.
You accuse me of trying to show off my "l33t"ness (whatever the hell that is). Well, how's this for "l33t"ness: A recent security advisory revealed that JSON objects were vulnerable to a cross-scripting exploit by the very nature of being serialized Javascript objects. It was mentioned that it was the first exploit that could target only AJAX-enabled applications. Well, I use JSON. And you know what I found when
Proprietary (Score:2, Insightful)
Or... not.
Using Java solutions over
End of Ajax.... (Score:5, Insightful)
And there is so much big corporate inter politics involved with each side rallying their alternatives that it looks like we are stuck with the lowest common denominator, that beeing for the moment javascript.
This begs the question... (Score:3, Interesting)
This begs the question, will anything built on Java achieve the security, cross-platform reliability, and programmatic friendliness that Web 2.0 "needs"? It is well-known that Java is a "write once, debug everywhere" solution. If it is running on the server side, It also begs the question, does it need all that? What does Java provide that other languages don't? It looks like it has a client-side component. FTFA, "One of the knocks on AJAX applications, aside from browser compatibility, is that it requires a large amount of JavaScript to be sent over the wire; that script could have something malicious embedded in it. JavaFX eliminates that need by using the locally installed Java SE files." Well well well, FUD FUD FUD. Yes, it could have something malicious embedded in it. And there could be something malicious in your Java code, too. Make a point, please?
Also, I'm interested in having this assertion backed up somehow. Javascript is an excellent language even if some implementations are somewhat lacking. In general the use of cross-platform toolkits seems to be accelerating Web 2.0 development for many people. Is it really true that you can't do the job with Javascript?
I'd just like to leave with this C&P and short commentary:
"This really is write once and run anywhere," he said, reiterating a 12-year-old slogan for Java. The long-range plan is to make it so applications can be written to run on all platforms." Yes, that was Java's long-range plan as well. Note that so far, it has not succeeded.
Re: (Score:2)
Re:This begs the question... (Score:5, Insightful)
Another Flavor of Java? (Score:5, Informative)
Also from the site:
Re: (Score:3, Funny)
I bet they walk the halls in the JavaFX Script dev area muttering about 'ECMAScript'.
Bitter bastards, I'm sure.
Re: (Score:3, Informative)
Uptake.. (Score:3, Interesting)
already been overcome. However it is over 10 years since java and applets where introduced and they
are still slow as mud, I highly doubt any success in market penetration.
New toolkit, not a "combination" (Score:5, Informative)
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.
Re: (Score:3, Informative)
Re: (Score:2)
You must be looking in the wrong place [apple.com].
Re: (Score:2)
OSX Java SDK is downloadable in a number of places from apple's website. Prerelease versions are in their developer site ADC (requires free registration). I think the final JRE's get pushed to users automatically over the automatic update system.
What is the relationship between Apple and Sun's java? I always assumed that apple just licensed and customized Sun'
Re: (Score:3, Informative)
That means you have to wait for Apple to incorporate the library into their JRE and push it out to users. And here's the key: Apple's Java always seems to lag behind the upstream version. They're still on Java 5. Java 6 has been out for, what,
Re: (Score:3, Informative)
I don't see why you say java on the web is dead. Yahoo games [yahoo.com], which I use daily, uses java, and is just one existing site that uses java.
Websites aren't going to replace their applets just because you think they should, and as long as the content is compelling, people will download the plugin.
What trolling (Score:2)
Use Dojo or a similar framework, or Rails has it built in to the back end programming, which is even better(again using a mature framework).
And security? "JavaFX will also trigger desktop integration of over-the-wire applications with Java" desktop apps from? Yeah, high security results have always been achieve
Startup times still slow, at least for the demos (Score:5, Interesting)
Flash and
Anyway, given the current state of Java technology in the browser, I don't see this as being any different from WebStart, which everyone loves to hate because it is so clunky.
I dislike the idea of Silverlight entirely, particularly anything that relies on
Re:Startup times still slow, at least for the demo (Score:2)
Re:Startup times still slow, at least for the demo (Score:2)
Speak for yourself. I personally love Webstart technology. It's a beautiful solution to installing/launching applications in a cross-platform way. You just click, and it loads. No guarantees about the quality of content the developers package on the side, though. :-/ (The SpaceInvaders demo you pointed to being an obvious example.)
Re:Startup times still slow, at least for the demo (Score:2)
> which everyone loves to hate because it is so clunky.
JWS is pretty sweet for internal apps, though. I wrote a Swing client for a J2EE app for an internal group and folks were quite happy with the easy updates. They'd suggest a change and half an hour later I'd come buy their office, ask them to restart the app, and the new version would get downloaded and Bob's your uncle. Pretty sweet.
The JavaFX code looks pretty nice [sun.com], and here's the origin [blogs.com]
Still screwing up on the mobile end I see (Score:2)
Despite having massive deployment of J2ME, it has always struck me that Sun's strategy to capitalize on that fact have been hampered by complexity -- for once not of the platform, but of the business model, which is tied up with phone manufacturers and mobile wireless providers. Basically, as a serious app developer, you probably have to partner with a wireless company.
So now we have this interesting "mobile" techn
IANAWD (Score:2)
"You know all that AJAX code you've been writing and tearing your hair out over as you attempt to get the JavaScript working in both Internet Explorer and Firefox?"
no, i don't. i really don't. not anymore.
"offers interactivity, animation and programming"
so its not AJAX, its Flash/Silverlight/etc. and as regards Gosling's comment (possibly taken out of context?),
"Most scripting languages are oriented at banging
Re: (Score:2)
Open source.
FUD Maybe? (Score:2)
Just because you don't understand xml and javascript doesn't mean that nobody does.
A temporary solution? (Score:5, Insightful)
I don't claim to be an AJAX expert, but it seems really good for the simple things you need to do. You can find 10 libraries now that give you collapsable boxes, drag-n-drop, etc. But it gets much more complicated if you want to do something not covered with these libraries.
The big problem being that put very simply: HTML was not designed for full-fledged interfaces. Compare against a beautiful library like Cocoa, and it falls very very short. Which is fine. It's great for what it does.
Java is many ways was supposed to fix this problem. A method to create interfaces that can be spread through web pages. But issues besides just speed have been a problem with Java. AWT was not great for making interfaces, and Swing isn't (IMHO) much better. I haven't tried SWT, but even Eclipse, its flagship, suffers from all types of interface issues (compare it against an IDE like XCode).
I'm trying very hard not to be an Apple fanboi. I've used PCs for most of my life, and Linux for a good enough time (> 10 years). But I've seen enough interface libraries now (GTK+, KDE, Windows API, Javascript hacks, various ones using SDL, etc.) that I've seen both highlights and major downfalls from the different design paradigms used.
One of the largest design issues I've seen comes from at the end of the day from the language itself. Part of A large part of Cocoa's beauty derives from Objective-C. It does things that c++ wouldn't dream of doing for speed reasons. Both Gtk+ and KDE try to replicate features already in Objective-C, but because they are non-native, they don't/can't do it as well. Which is not to say Objective-C is the end-all be-all language -- it's just great for interfaces.
It's also something that from my personal experience Java can't do. So it's hard for me to imagine how using Java to make an interface for web pages will be a great advancement (again, I'm leaving speed issues alone -- this is a purely design argument). And maybe it will be better than AJAX, but that's not a great advancement
Re:A temporary solution? (Score:4, Interesting)
The biggest issue is the underlying logic that controls the interface. For example, Cocoa allows for observers, which can be updated when state changes. Both Gtk+ and KDE do this as well (though they use the signal/slot terminology). Last time I remember looking at the Windows API, it instead used a callback method.
You can write listeners in Javascript. They are behind a good deal of the Firefox interface, iirc.
My main point is this: creating an interface in HTML is not an ideal medium. It doesn't provide many native elements, and creating large libraries to compensate this is hard. It is actually quite easy to imagine someone creating a platform that isn't done in an HTML page -- especially since Java already exists.
Take a look at:
http://www.phptr.com/bookstore/product.asp?isbn=0
It covers the whole XUL (which is *very* similar to HTML) + Javascript thing. It isn't that hard to set up most of what you describe. The real issue is that, like Motif or TK, the widgets available are still pretty unintelligent. Everything you need for a framework on a low level is there, however.
Thank you, Sun! (Score:3, Funny)
But now, I can be happy once again. Thank you Sun! And with a hip name to go along with it, as well! JavaFX! I wonder if it is compatible with WinFX? Or how about ActiveX?
dumb fuck marketter (Score:2)
So you acknowledge the presence of product solutions for ajax exist yet disqualify the possibility of using them because they are "dead ends"?
there are no issues with javascript. cross site security simply demands you be resilient and durable and know when to fail user operations when they're asking for "funky" stuff, but that security was mandated at some level by traffic sniffing and packet generating long ago.
as for cross platform reliability
I disagree so strongly, I finally made an account! (Score:5, Insightful)
Security - Javascript is NOT designed to secure a web app, security needs to happen on the server side, out of necessity!
Cross-platform - I would argue that Javascript / ECMAScript, having been standardized and distributed with all major browsers for years, is arguably the MOST supported cross-platform programming language in the world. If a computer has a browser made in the last 5 years, it supports standardized ECMAScript. And what PC doesn't have a browser?
The only incompatibilities I run into on a frequent basis are getting my scripts to create results that look the same across all browsers, and that's not Javascript's fault, it's CSS and browser support of CSS! If you have problems with the [i]functionality[/i] of Javascript, then you're probably not writing according to the well established standards, or worse yet, throwing together snippets of Javascript from all over the web like so many amatuers that give the language a bad rep.
So you would use Sun's solution, rather than the well established internationally standardized ECMAScript?
Programmatic friendlyness - Joel says it all here [joelonsoftware.com] Personally, I've programmed in dozens of languages, and few are as flexible and enjoyable as Javascript
Javascript used to have the same status that Java applets and Flash still do, used predominantly for play things, small self-contained segments of the browser where you want to do something different. Javascript has risen above that. The world is finally realizing Javascript can be an integral part of an entire website, and that the website as a whole can be enhanced by Javascript and it's tight integration with other web standards.
This article sounds like an attempt to rehype Java applets, which frankly, have not seen the advancement and acceptance that Javascript has over the years.
Yay open source and competition (Score:4, Interesting)
Now both Flash and Silverlight are totally proprietary. That's a huge problem. If one of them were to "win" and get a zillion developers
So what's neat about this announcement, is that it's a Flash workalike that's OPEN SOURCE. If it were to "win"
Another way this could work out is that it bluffs Adobe into opening up Flash, which I figure would be just as good an outcome. The key is to not be stuck developing your expensive web app, but with some vendor controlling the underlying technology.
Off Topic - Will somebody finally explain to me (Score:3, Interesting)
And sometimes page 3 and beyond behave the same way? At some point, I start getting new pages with new responses, but it's incredibly annoying to have to click on two or three pages to get PAST page one!
Are my settings fucked up, is it Firefox, what the hell is it? This happens on Windows, Linux, anything! Is this a known bug in Slash or what?
Re:Hmm (Score:5, Insightful)
Actually, ActiveX is a patented Microsoft Security Hole(TM) big enough to drive a Mack Truck through. Effectively, Microsoft looked at Java Applets and said, "The biggest problem with it is that it doesn't access Windows APIs and has all that security BS. We can do better." Next thing you know, Microsoft "partners" are showing how you can access DirectDraw and Direct3D to make ActiveX components that were WAY more impressive than the simplistic animations that Java was capable of. Of course, the security implications hit Microsoft less than a year later as Malware started exploiting the system for all kinds of nefarious purposes.
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?
Re: (Score:3, Interesting)
No, they looked at Java and said "holy mother of god, this crap is slow".
Oh, without question. The problem with ActiveX is that it forces the user to implicitly trust a non-sandboxed p
Re: (Score:3, Informative)
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 script
Re: (Score:2, Interesting)
Re: (Score:3, Insightful)
Re: (Score:2)
Re: (Score:2)