May 7, 2007 9:01 PM PDT
Sun tries again with consumer-flavored Java
- Related Stories
-
Sun picks GPL license for Java code
November 12, 2006 -
Java inches closer to open source
May 16, 2006 -
'Write once, run anywhere' not working for phones
July 14, 2005 -
Sun faces open-source swarm
June 27, 2005 -
Is Java cooling off?
June 28, 2004
At the JavaOne conference in San Francisco, Sun's executive vice president of software Rich Green, is expected to unveil JavaFX Script, a simpler scripting language for writing applications on Java-equipped desktop PCs and handheld devices.
To address compatibility problems with mobile phones, Green is scheduled to detail JavaFX Mobile, a package aimed at mobile-handset makers designed to make Java applications more portable across mobile phones.
Sun executives also plan to release the last portions of Java it said it would open-source and outline the governance model for open-source projects around Java.
With JavaFX Script, Sun is trying to revive the use of Java on small devices, like set-top boxes, and in PC Web browsers, which the language was originally designed to do in the 1990s.
"This is Java for consumers, for individuals--not just enterprises, not just corporate. But experiences people at an individual level want to experience will be powered by Java," said Green. "The scripting language we are releasing will dramatically enhance the number of people who can create content for this platform."
JavaFX Script is a scripting language that's designed to be more productive and easier than Java, but also closely integrated with it. Developers can use JavaFX Script and write applications that run on Java-equipped PCs or mobile phones.

With it, Sun intends to broaden the audience of people writing Java-compatible applications and capitalize on growing interest in so-called rich Internet applications, or Web-connected programs with an interactive user interface.
In the process, Sun intends to "attack" the notion that it is being outpaced in the field of rich Internet applications, Green said. Microsoft, Adobe and a handful of smaller firms have been more prominent in discussions over these interactive, Net-connected applications than Java vendors, said RedMonk analyst Stephen O'Grady.
Sun intends to release the source code of JavaFX Script and to let other companies create Web authoring tools using it. Sun, too, intends to create scripting tools for content authoring, Green said.
Java's sweet spot?
As Web developers create more sophisticated online applications, from media distribution sites to desktop-style programs, the rich Internet application area has become one of the hottest in software development.
Ajax-style programming, a technique that often relies on the scripting language JavaScript, has become popular for creating the user interface for many Web sites, such as mapping services or Web 2.0 social-networking applications.
Adobe Systems is investing heavily in its Flash Player, which is widely used for media-rich user interface development, and in its associated Flex development tool.
Microsoft made a forceful entrance into the rich Internet application field last week with the beta release of its Silverlight browser plug-in and suite of development tools. In addition, a handful of smaller companies, including Laszlo Systems and Nexaweb, specialize in programs for creating these rich Internet applications.
Java has a rich "ecosystem" of products and vendors but its use for front-end design has been stymied by compatibility and performance problems, said Richard Monson-Haefel, an analyst at the Burton Group.
"It should be the sweet spot for Java. It's kind of tragic that Sun screwed up so badly with the applet performance and browser incompatibility in the late 1990s," he said. "JavaFX Script has an opportunity to redeem themselves."
Video:
Sun launches new scripting language
At the JavaOne conference in San Francisco, Sun's executive vice president of software Rich Green, demos JavaFX Script.
There are already 5 million programmers who work with Java Platform, Standard Edition (Java SE) for building Java programs on desktops, according to Sun. A shrinked-down version of Java, called Java Platform, Mobile Edition (Java ME), is already installed on 2 billion phones worldwide, said Green.
Yet despite its broad reach on consumer devices, Java has made an equally large mark on server software makers, where Java-based back-end software has generated billions of dollars for IBM, Oracle, BEA Systems, Sun and others.
With JavaFX Script and JavaFX Mobile, Sun and other Java licensees will have a much more attractive offering for rich Internet applications, Monson-Haefel said.
Scripting, or dynamic, languages have become more popular for mainstream application development, particularly on the Web in the past two years. Many Web site builders or corporate developers have chosen scripting languages as a lightweight alternative to Java or Microsoft's .Net.
The advantage Java-connected scripting language has over others, such as Ruby, PHP or Python, is that Java programmers can easily transfer their skills and knowledge. Moving from Java to another language like JavaScript, which is often used for Ajax applications, "is like moving to another foreign land," Monson-Haefel said.
Applications written with JavaFX Script can run on the Java Runtime Environment, software that's installed on millions of PCs and regularly updated. Like Adobe's Apollo, developers can use the same tools to write Web browser-based applications or cross-platform desktop applications, Green said.
The JavaFX Mobile is technology that Sun gained through the acquisition of the intellectual property assets of SavaJe, a start-up that created software for writing uniform applications on Java phones.
Although installed widely, differences in Java ME implementations cause compatibility problems. The JavaFX Mobile software, aimed at operators and phone handset makers, will smooth over those differences and provide a set of phone applications for common tasks, Green said.
"This is the realization of Java SE spanning all consumer devices and fulfilling the mantra of 'write once, run anywhere,'" Green said. "We really had to take a step back and take a fresh view of how to achieve this broad access to the platform for developers."
RedMonk's O'Grady said the introduction of a Java-linked scripting language won't necessarily cause people to switch from Ruby, Python or PHP. Rather, JavaFX Script will appeal mostly to people who already work with Java.
"It's going to be very, very difficult if you're going to try to lure people from technology that is already working for them," he said. "None (of these technologies) goes away. The question is how do they get along better and how do you bring strength of the respective platforms to others?"
See more CNET content tagged:
Java, Sun Microsystems Inc., scripting language, Java application, development tool
22 comments
Join the conversation! Add your comment
You know that Visual system Nigeria/Dila lama etc... would design given enough strong economics.
After years of suffering through performance and resource issues, specific JVM requirements leading to application incompatibilities, a continuing dearth of development tools that do little more that try to keep up with MS's IDE, I have given up hope.
Now, they want to add even more versions?! That will have their own specific requirements and overhead?!
I go back to, what ever happened to write once run anywhere?
Will we get browser support, will it be a plug-in?
PHP has the backing of IBM, Oracle, Zend and many others. Java is a terrible language that was never design for the web (JSP and Servlets anyone??). Everyone agrees that Java development takes longer but they keep using it. Talk about self punishment.
This is Java on the client, not the server. You can't run php apps on the client. This is about developing rich applications that are VERY difficult or impossible to do with javascript (ajax) and server-side code.
I would say that certifications should be required to program, especially network apps, but I have seen to many people with certifications who are very clueless, especially Sun certifications, not that I am implying anything about you of course.
I agree with you about Servlets and JSP, it is beyond awful, but PHP is not the answer. Ruby on Rails is a better solution.
Yes, you can develop good stuff using PHP but I have to read, correct and rewrite code written by nonprofessionals that say PHP is a lovely tool. Yes it is - if you are a professional. For a layman it is a horrible weapon that makes them think that they can create complex appliations.
After five years of real object oriented PHP and true Model-View-Controller architecture I am getting fed up with this toy language. Java is so much superior in every respect, including prototyping - provided you are a programmer and not a hobbyist.
Yes, there are PHP monsters like SugarCRM has such bad performance that it cannot be run in a normal web server. Tested, tuned and rejected, been there. On the other hand there are some very good object oriented PHP frameworks like Smarty which most PHP Talebans however know nothing about but keep on creating their horrible mixtures of bad code inside HTML and vice versa.
As for some other comments: How on earth can PHP or Python add something to the client side where the new concept by Sun has been directed. There are no browsers with PHP or Python / Ruby etc. support. We are mostly limited to Javascript (or ECMAScript actually), Flash and in most cases a Java virtual machine.
As for other uses of Java: Eclipse is getting more and more footprint at the development end. Zend, Borland and IBM are moving their deveopment platforms to Eclipse. What is Eclipse written in? Java.
I love how it handles integer overflows(not only a mathematical issue, but a security issue) by just giving you more memory, much like a resizable array. Java ignores the problem entirely, with no real mechanism to even be able to detect an integer overflow.
However, can python be embedded in a browser like Applets or JavaScript?
But "real" programmers -- people who create software that others actually use -- have moved on to other technologies that may not be as elegant but work a whole lot better.