<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>JavaFX News, Demos and Insight // FX Experience</title>
	
	<link>http://fxexperience.com</link>
	<description>Sharing the Experience of JavaFX</description>
	<lastBuildDate>Sun, 13 May 2012 23:07:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/fxexperience" /><feedburner:info uri="fxexperience" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>JavaFX links of the week, May 14</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/z-ISL_mpeIA/</link>
		<comments>http://fxexperience.com/2012/05/javafx-links-of-the-week-may-14/#comments</comments>
		<pubDate>Sun, 13 May 2012 23:05:19 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1966</guid>
		<description><![CDATA[Hi all. Sorry about the lack of a post last week &#8211; I just got back from JavaOne India and was overloaded with work which I had to catch up on. However, I was collecting links all last week as well, and there are now a heap of good links to read through this week! [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all. Sorry about the lack of a post last week &#8211; I just got back from JavaOne India and was overloaded with work which I had to catch up on. However, I was collecting links all last week as well, and there are now a heap of good links to read through this week! <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Enjoy!</p>
<ul>
<li>JavaFX 2.1 has barely been released and already we&#8217;ve got <a href="http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-1429449.html">builds of JavaFX 2.2 available</a>. In fact, we&#8217;re already up to build 08 of JavaFX 2.2, and build 37 of Scene Builder 1.0.</li>
<li>I released a tool (built initially by <strong>Amy Fowler</strong>) that we use inside Oracle called <a href="http://fxexperience.com/2012/05/introducing-scenic-view/">Scenic View</a>. I am now working with <strong>Ander Ruiz</strong> on an updated release which includes a number of new features. You can see a screenshot at the end of this post of the new version (which is still in active development (both the UI and the functionality)).</li>
<li><strong>Michael Heinrichs</strong>, a fellow team members in the JavaFX team at Oracle, was interviewed at JFokus, and the <a href="http://blog.globalcode.com.br/2012/05/conversando-com-especialista-javafx.html">video is now online</a>.</li>
<li>There was quite a bit of noise regarding people <a href="https://blogs.oracle.com/speakjava/entry/javafx_on_the_raspberry_pi">getting JavaFX up</a> and <a href="http://www.i-programmer.info/news/91-hardware/4167-javafx-runs-on-raspberry-pi.html">running on the Raspberry Pi device</a>.</li>
<li><strong>Weiqi Gao</strong> has got a very in-depth article up online about his <a href="http://sett.ociweb.com/sett/settMay2012.html">experiments with JavaFX 3D scenes</a>.</li>
<li><strong>Tom Schindl</strong> has noted that he is seeing <a href="http://tomsondev.bestsolution.at/2012/05/11/netbeans-nightly-catching-up-with-e-fx-clipse-with-improved-javafx-support/">improvements in Netbeans JavaFX support</a> that already exist in his e(fx)clipse project (but that it is great that his &#8216;competition&#8217; is improving functionality).</li>
<li><strong>Java_Buddy</strong> has blogged about <a href="http://java-buddy.blogspot.co.nz/2012/05/javadoc-not-found-in-netbeans-for.html">how to get javadoc documentation to appear in NetBeans</a> when working with JavaFX API.</li>
<li><strong>Thierry Wasyl</strong> has started work on building an application called TweetWallFX. He already has a blog post detailing <a href="http://thierrywasyl.wordpress.com/2012/05/02/tweetwallfx-part-1/">the construction of the UI</a>, as well as a <a href="http://thierrywasyl.wordpress.com/2012/05/13/tweetwallfx-screencast-1/">YouTube video of the application</a>.</li>
<li><strong>Narayan Maharjan</strong> has blogged about <a href="http://blog.ngopal.com.np/2012/05/06/javafx-drag-and-drop-cell-in-listview/">JavaFX Drag and Drop support in ListView</a>.</li>
<li><strong>Geertjan Wielenga</strong> has blogged about <a href="https://blogs.oracle.com/geertjan/entry/javafx_charts_for_kirk_s">using JavaFX charts in place of the usual charts in VisualVM</a>.</li>
<li><strong>Geertjan</strong> has also recently presented on <a href="http://vimeo.com/41131627">using JavaFX in pluggable corporate applications</a>.</li>
<li><strong>Stephen Chin</strong> was at JavaOne Hyderabad as well, where he presented on <a href="http://javafx.steveonjava.com/javafx-and-html5-at-javaone-india/">JavaFX and HTML 5</a>.</li>
<li><strong>Mohammed Sanaulla</strong> has blogged about how he uses <a href="http://www.javabeat.net/2012/05/using-javafx-chart-api-to-add-charts-to-swing-applications/">JavaFX charts in Swing applications</a>. In a separate post, he also posts part one about <a href="http://www.javabeat.net/2012/05/developing-a-simple-todo-application-using-javafx-java-and-mongodb-part-1/">developing a simple Todo application using JavaFX, Java and MongoDB</a>.</li>
<li><strong>Dustin Marx</strong> has written a <a href="http://marxsoftware.blogspot.co.nz/2012/05/javafx-based-simpledateformat.html">JavaFX-Based SimpleDateFormat demonstrator</a>.</li>
<li><strong>Nitin Gupta</strong> at <strong>e-zest</strong> has an article up on <a href="http://www.e-zest.net/blog/ahead-of-time-compilation-for-javafx-2-0-applications/">ahead of time compilation for JavaFX 2.0 applications</a>.</li>
<li><strong>Anton Epple</strong> has added <a href="http://88.198.17.44/blog/2012/05/13/javafx-motionblur/">motion blur to his physics-based pinball game</a>.</li>
</ul>
<h4>Scenic View Sneak-peak</h4>
<p>Finally, here is the current, in-development version of Scenic View that I am working on with <strong>Ander Ruiz</strong>. I will release an updated version of Scenic View as soon as all the features are in place.</p>
<p><img class="aligncenter size-full wp-image-1247" title="sv3" src="http://JonathanGiles.net/blog/wp-content/uploads/2012/05/sv3.png" alt="" width="685" height="745" /></p>
<p>That&#8217;s that for another week. Catch you all next week <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/z-ISL_mpeIA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/05/javafx-links-of-the-week-may-14/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/05/javafx-links-of-the-week-may-14/</feedburner:origLink></item>
		<item>
		<title>Introducing Scenic View</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/W-JTUIvB8cA/</link>
		<comments>http://fxexperience.com/2012/05/introducing-scenic-view/#comments</comments>
		<pubDate>Mon, 07 May 2012 00:11:50 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[UI Design]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1956</guid>
		<description><![CDATA[Developing user interfaces is tricky, regardless of whether you&#8217;re just trying to understand the high level scenegraph layout, or whether you&#8217;re pushing pixels for a finely tuned user interface. I understand and feel for people in this situation. UI developers come up with all kinds of tricks, for example, temporarily introducing a bold one pixel [...]]]></description>
			<content:encoded><![CDATA[<p>Developing user interfaces is tricky, regardless of whether you&#8217;re just trying to understand the high level scenegraph layout, or whether you&#8217;re pushing pixels for a finely tuned user interface. I understand and feel for people in this situation. UI developers come up with all kinds of tricks, for example, temporarily introducing a bold one pixel border of varying colours around components to better understand the user interface. I certainly know I have done that countless times in the past when building user interfaces, and frankly, it is painful and massively time consuming.</p>
<p>Inside the JavaFX team, since times of yore (that is, since at least JavaFX 1.3, but perhaps earlier &#8211; my memory fails me here), we&#8217;ve had this remarkable little tool that was called Scenic View. It somehow just burst into existence, through the brilliance of <a href="http://amyfowlersblog.wordpress.com/">Amy Fowler</a>, whom many should know as the layout guru for both Swing and JavaFX. Scenic View is a tool that can be called to browse a live view of the application scenegraph. Here&#8217;s a screenshot:</p>
<p><img class="aligncenter size-full wp-image-1958" title="sv1" src="http://fxexperience.com/wp-content/uploads/2012/05/sv11.png" alt="" width="668" height="593" /><span id="more-1956"></span></p>
<p>The nice thing about Scenic View is that it can also display overlays in your user interface to indicate three things: the baselineOffset, the boundsInParent, and the layoutBounds. These let you very easily see why your user interface is the way it is. I&#8217;ve attached another screenshot below, which shows this. The third rectangle in has been selected in ScenicView, and as such has a yellow filled rectangle to indicate its boundsInParent, and a green dashed (and unfilled) rectangle to indicate the layoutBounds. The interesting thing to note is that despite the rectangle having been rotated, the layoutBounds still reflect the unrotated rectangle, and that this is what the layout containers use to lay out nodes. In other words, the rectangles on either side of the rotated rectangle make no allowance for the rotation (although there are ways to force this to happen if that is what you want &#8211; listen to Amy&#8217;s talk (linked below) to learn more).</p>
<p><img class="aligncenter size-full wp-image-1960" title="sv2" src="http://fxexperience.com/wp-content/uploads/2012/05/sv2.png" alt="" width="545" height="451" /></p>
<p>Amy presented her <a href="http://www.parleys.com/#st=5&amp;id=2734&amp;sl=0">Introduction to JavaFX layout</a> talk at JavaOne San Francisco in October 2011, and I&#8217;ve gone on to re-present it at JavaOne conferences in Japan and India. What we covered in these talks was a whole bunch of layout fundamentals, and then we worked through how to use these fundamentals to build a JavaFX user interface. The worked example was on building aspects of the Scenic View application, and then we used the Scenic View application to demonstrate some of the layout concepts we had spoken about previously.</p>
<p>The Scenic View application shown above only differs visually from what Amy presented at JavaOne (which you can see in the link above). This is all I&#8217;ve done &#8211; the rest is all from Amy. What you can see in the image above is standard JavaFX, styled with a bit of custom CSS (borrowed heavily from Scene Builder). There are still a few visual quirks I&#8217;d like to improve, but I&#8217;ve been wanting to get this released for a very, very long time, so I&#8217;ll do that first, and then we can talk about improvements.</p>
<p>So, today, I am finally able to put up a <a href="http://dl.dropbox.com/u/6320469/ScenicView.jar">jar file of the ScenicView application</a>. Drop this into your project, and simply fire up Scenic View by calling ScenicView.show(scene) with the scene of your application. There is actually a secret shortcut that will automatically start up Scenic View from your running application, but that won&#8217;t stay around forever so I won&#8217;t publicise it (although it is in our open source code, so maybe you can find it)&#8230;.</p>
<p>Please, leave comments, requests for functionality, and offers to add said functionality in the comments section below. I look forward to your feedback.</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/W-JTUIvB8cA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/05/introducing-scenic-view/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/05/introducing-scenic-view/</feedburner:origLink></item>
		<item>
		<title>JavaFX links of the week, April 29</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/BIvp39poeXU/</link>
		<comments>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-29/#comments</comments>
		<pubDate>Sun, 29 Apr 2012 06:51:34 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1954</guid>
		<description><![CDATA[Hi all. The links for this week are up a day early because I have an early flight to catch tomorrow on my way to JavaOne Hyderabad. Conversely, next weeks links will be a day or three late as I will be traveling back home. Therefore, I think everything balances out Let&#8217;s get on with [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all. The links for this week are up a day early because I have an early flight to catch tomorrow on my way to <a href="http://www.oracle.com/javaone/in-en/index.html">JavaOne Hyderabad</a>. Conversely, next weeks links will be a day or three late as I will be traveling back home. Therefore, I think everything balances out <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Let&#8217;s get on with the links.</p>
<p>Oh &#8211; by the way &#8211; if you&#8217;re at JavaOne Hyderabad next week and you spot me, come up and say hello. I really love chatting to people, but I can&#8217;t pick the JavaFX fans from the Java EE people&#8230;.and I have nothing to say to Java EE people <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<ul>
<li>JavaFX 2.1 was <a href="http://fxexperience.com/2012/04/announcing-javafx-2-1/">released this week</a>. Along with the release, the JavaFX team included <a href="http://docs.oracle.com/javafx/2/release_notes_2-1/jfxpub-release_notes_2-1.htm">release notes</a>, and a huge number of new articles on the <a href="https://blogs.oracle.com/thejavatutorials/entry/new_docs_and_updates_with1">JavaFX documentation site</a>.</li>
<li>I interviewed <strong>Peter Zhelezniakov</strong> regarding his work in the JavaFX team on the <a href="http://fxexperience.com/2012/04/interview-with-peter-zhelezniakov">WebView component</a>.</li>
<li><strong>Angela <strong>Caicedo</strong></strong> has released <a href="http://www.youtube.com/watch?v=FTOGWvX44qU&amp;list=UUmRtPmgnQ04CMUpSUqPfhxQ&amp;index=1&amp;feature=plcp">part three of her video series</a> on building your first JavaFX application.</li>
<li><strong>Kai Wähner</strong> asked (and then attempted to answer) &#8216;<a href="http://www.dzone.com/links/r/when_to_use_javafx_2_instead_of_html5_for_a_rich.html">When to use JavaFX 2 instead of HTML5 for a Rich Internet Application (RIA)</a>?&#8217;</li>
<li><strong>Andy Moncsek</strong> has blogged about <a href="http://blog.ahcp.de/?p=41">how to use JavaFX 2.1 from a local maven repository</a> (on OS X).</li>
<li><strong>Jeff Friesen</strong> has got an article up on JavaWorld about &#8216;<a href="http://www.javaworld.com/community/node/8373">pixel graphics and JavaFX</a>&#8216;.</li>
<li><strong>Roberto Marquez</strong> has <a href="http://onebeartoe.org/programming-languages/java/javafx/animations/api/alien-abduction.jsp">explored the animation features in JavaFX</a>, and has a post up discussing the early stages of using these to create a game.</li>
</ul>
<p>Catch you all next week! <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/BIvp39poeXU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-29/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-29/</feedburner:origLink></item>
		<item>
		<title>Announcing JavaFX 2.1</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/N_fKR9ZPTUo/</link>
		<comments>http://fxexperience.com/2012/04/announcing-javafx-2-1/#comments</comments>
		<pubDate>Fri, 27 Apr 2012 20:01:48 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1950</guid>
		<description><![CDATA[JavaFX 2.1 was released yesterday right on schedule, along with the JavaFX 2.1 release notes, and a huge number of new articles on the JavaFX documentation site. From the Oracle press release, here are the key improvements in JavaFX 2.1 (aside from fixing a whole heap of bugs): Available for Windows and Mac OS X [...]]]></description>
			<content:encoded><![CDATA[<p>JavaFX 2.1 was <a href="http://www.oracle.com/technetwork/java/javafx/downloads/index.html">released yesterday</a> right on schedule, along with the <a href="http://docs.oracle.com/javafx/2/release_notes_2-1/jfxpub-release_notes_2-1.htm">JavaFX 2.1 release notes</a>, and a huge number of new articles on the <a href="https://blogs.oracle.com/thejavatutorials/entry/new_docs_and_updates_with1">JavaFX documentation site</a>. From the <a href="http://www.oracle.com/us/corporate/press/1603497">Oracle press release</a>, here are the key improvements in JavaFX 2.1 (aside from fixing a whole heap of bugs):</p>
<ul>
<li>Available for Windows and Mac OS X (with Linux support currently as preview release) (See also <a href="https://blogs.oracle.com/henrik/entry/oracle_jdk_and_javafx_sdk">Henrik Stahl&#8217;s blog on Mac OS</a>)</li>
<li>Includes playback of MPEG-4 multimedia containing H.264/AVC video and AAC audio</li>
<li>New WebView support for JavaScript to Java method calls, which enables JavaScript content to leverage Java for demanding operations</li>
<li>Support for enhanced font rendering on LCD displays, including sub-pixel rendering</li>
<li>Additional UI enhancements such as combo box, stacked chart, and application-wide menu bar</li>
<li>Bundled with the Java 7u4 release</li>
<li>Oracle has started the OpenJFX project in OpenJDK as part of the plan to open source JavaFX</li>
</ul>
<p>Now &#8211; <a href="http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-1429449.html">onward with JavaFX 2.2</a>!</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/N_fKR9ZPTUo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/announcing-javafx-2-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/announcing-javafx-2-1/</feedburner:origLink></item>
		<item>
		<title>Interview with Peter Zhelezniakov</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/GkDli9CIarA/</link>
		<comments>http://fxexperience.com/2012/04/interview-with-peter-zhelezniakov/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 07:11:30 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Interviews]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1943</guid>
		<description><![CDATA[It&#8217;s been a busy few weeks for me with JavaOne Japan in early April, a heap of development work on JavaFX 2.2, and JavaOne India coming up next week. I&#8217;ve slightly dropped the ball on interviews during all of this, but here is another interview from a member of the JavaFX team at Oracle. Peter [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a busy few weeks for me with JavaOne Japan in early April, a heap of development work on JavaFX 2.2, and JavaOne India coming up next week. I&#8217;ve slightly dropped the ball on interviews during all of this, but here is another interview from a member of the JavaFX team at Oracle. <strong>Peter Zhelezniakov</strong> is an engineer in the WebView team, where he works on WebView-related JavaFX APIs all the way down to working with the Webkit code that WebView uses under the covers. Enjoy &#8211; and feel free to ask WebView related questions here &#8211; I&#8217;m sure Peter will be happy to help. <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong><img class="alignright size-medium wp-image-1944" title="peterz400" src="http://fxexperience.com/wp-content/uploads/2012/04/peterz400-300x300.jpg" alt="" width="300" height="300" />Hi Peter &#8211; thanks for offering to be interviewed. Could you please introduce yourself?</strong><br />
I came to the JavaFX team from Swing, where I was working mostly on Look-and-Feels, but also on Swing&#8217;s own HTML package.</p>
<p><strong>So you work on the WebView feature of JavaFX. This is a major component of the new JavaFX 2 series of releases &#8211; could you please give an overview of what exactly WebView is?</strong><br />
WebView is a JavaFX node used to display Web pages, with the help of the underlying WebEngine object. It is basically a browser component with a richer programming interface: you can for example examine structure of a page, inject arbitrary scripts, or listen to HTML events. Internally it is a Java wrapper around the Webkit open browser engine used by many desktop and mobile browsers.</p>
<p><span id="more-1943"></span></p>
<p><strong>What does a regular day entail for you?</strong><br />
It varies wildly, from tracking down a bug to planning future work to speaking at conferences. Probably the only thing I do regularly is code reviews. Otherwise I try to break my time into large chunks spent on a single task, and switch tasks when they take too long to complete. After a day of debugging it&#8217;s good to spend a day talking to customers and discussing new features with teammates.</p>
<p><strong>What I find interesting is that WebView uses JavaFX to render web content &#8211; is this difficult to implement, or does the underlying webkit make this easy to implement?</strong><br />
Implementation is straightforward in most cases, but still a lot of work as Webkit has maybe 60 or 80 different types of rendering requests that we need to implement. Some of those requests cannot be mapped directly to a Prism call, in which case we have to write glue code. However feature-rich Prism is, Webkit with its support for CSS3 may have even fancier architecture when it comes to rendering.</p>
<p><strong>My understanding is that WebView is a continuation of the work that previously went on with the never-released JWebPane. Did this work make WebView development easier?</strong><br />
It surely did. JWebPane was wrapping Webkit as a Swing component, a Swing-based analog of WebView, using Java2D for rendering. The team gained precious knowledge about Webkit intrinsics while working on JWebPane. Once we switched to JavaFX, all we had to do was to rewrite rendering code using Prism. That was still lots of work, considering how architecturally different Java2D and Prism are, and Webkit&#8217;s own rendering interface resembles Java2D more than Prism. Also Prism was a moving target at that time, changing frequently, and poorly documented. But at least we knew WHAT our code should do, and had to figure out just HOW to write it.</p>
<p><strong>What is working with webkit like? Are you required to make many changes or is it good to work with as-is?</strong><br />
We try not to change Webkit code when possible, as this complicates merging changes to Webkit with our code. Fortunately Webkit has well defined cross-platform core that we almost don&#8217;t have to touch. Webkit is ported to many different platforms, from desktops to phones, and each new port helped to refine the boundary between the core and &#8220;client&#8221; interfaces that ports need to implement in platform-specific code. So while we have lots of code in the client part, our changes to the core are kept to a minimum.</p>
<p><strong>I often see changesets pushed by you or your team mates designed to fix a rendering bug exhibited on a certain website. Why does this happen, and more generally, how hard is it to have a job requirement that your product support rendering the entire internet?</strong><br />
This happens because there are lots of corner cases in the rendering system. We may show 99 sites perfectly, but the 100th site hits a corner case that was not implemented, or a bug in our code, or even in Webkit. Recently we were fixing a bug that was reproducible with one particular site. That site used one pixel wide gradient images to store colors, which were later scaled appropriately. It turned out our code didn&#8217;t handle those one pixel wide images correctly (two pixel wide ones were fine). This bug existed for about half a year, and went unnoticed until an external customer raised an issue. So the hardest part to me is testing, especially regression testing. We have an automated test suite, and try to expand it, but the scope of auto testing is really limited in our case. So we try to identify sites that test many things at once. Canvas games and SVG animations prove useful as they make extensive use of the rendering system. We&#8217;ve written a pretty functional browser demo, with tabs and bookmarks, and people are using it for everyday browsing instead of their favorite browsers. This way regressions are noticed soon after they are introduced.</p>
<p><strong>I believe that WebView already supports Java to JavaScript calls. However, an area that a team mate of yours, Per Bothner, is working on is JavaScript to Java communication. What would this kind of bidirectional communication allow?</strong><br />
Yes, the idea is that an application developer establishes an &#8220;interface object&#8221; in Java code and makes it known to the JavaScript engine. It is then possible to call methods of that interface object from JavaScript. This enables a new kind of mashups, when a Web application uses features of the Java platform. E.g. a click on a map could run a database query on the Java side, on the client, without calling back to server. Or a Web app could display local resources, such as images or music files, along with those stored on a server.</p>
<p><strong>What do you really, really want to see in future releases of JavaFX?</strong><br />
I&#8217;d like to see JavaFX proliferate across more platforms, including phones, tablets, kiosks, whatever devices people routinely use. May it become a truly ubiquitous programming platform &#8212; just like Ajax but more convenient to use.</p>
<p><strong>Thanks for taking the time to answer these questions Peter. Is there anything else you&#8217;d like to conclude with?</strong><br />
I&#8217;d like to thank all developers who have tried our bits, filed bugs and provided feedback. It&#8217;s very important that we hear from you.</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/GkDli9CIarA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/interview-with-peter-zhelezniakov/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/interview-with-peter-zhelezniakov/</feedburner:origLink></item>
		<item>
		<title>JavaFX links of the week, April 23</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/dh_A_v0AYsY/</link>
		<comments>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-23/#comments</comments>
		<pubDate>Sun, 22 Apr 2012 22:45:04 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1939</guid>
		<description><![CDATA[Welcome to this weeks links roundup. I hope you all find something useful or interesting There is a heap of discussion and review requests going on over at the openjfx-dev mailing list &#8211; if you are interested you should consider joining. Some topics of interest to readers include talk of adding a canvas node to [...]]]></description>
			<content:encoded><![CDATA[<p>Welcome to this weeks links roundup. I hope you all find something useful or interesting <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<ul>
<li>There is a heap of discussion and review requests going on over at the <a href="http://mail.openjdk.java.net/mailman/listinfo/openjfx-dev">openjfx-dev mailing list</a> &#8211; if you are interested you should consider joining. Some topics of interest to readers include talk of <a href="http://mail.openjdk.java.net/pipermail/openjfx-dev/2012-April/001210.html">adding a canvas node to JavaFX</a>, to allow for immediate mode painting (e.g. Java2D), <a href="http://mail.openjdk.java.net/pipermail/openjfx-dev/2012-April/001205.html">deployment ideas</a>, and requests for a <a href="http://mail.openjdk.java.net/pipermail/openjfx-dev/2012-April/001161.html">CSS object model</a>. Also, if you subscribe to this list, you get notification of all changesets to the public code, so you&#8217;ll get a heads-up on what is coming in JavaFX 2.1 and JavaFX 2.2.</li>
<li><strong>Jeff Friesen</strong> has got up on his soapbox and posted an article over at JavaWorld asking people to <a href="http://www.javaworld.com/javaworld/jw-04-2012/120416-jwsoapbox-stop-the-fud-about-javafx.html">please stop the Java desktop FUD</a>.</li>
<li><strong>Jim Weaver</strong> has posted about <a href="http://www.oracle.com/technetwork/articles/java/fxbest-1583679.html">best practices for JavaFX 2 enterprise applications</a>.</li>
<li><strong>Terrence Barr</strong> notes something odd: <a href="http://terrencebarr.wordpress.com/2012/04/19/javafx-2-making-client-apps-sexy-again/">client apps are becoming sexy again</a>! He has a heap of links for you to peruse.</li>
<li><strong>Stephen Chin</strong> and <strong>Luc Duponcheel</strong> recently presented about using JavaFX with Scala. You can <a href="http://www.slideshare.net/steveonjava/javafx-and-scala-like-milk-and-cookies">check out their slides</a> if you&#8217;re interested.</li>
<li><strong>Carl Dea</strong> has updated his <a href="http://carlfx.wordpress.com/2012/04/09/javafx-2-gametutorial-part-2/">JavaFX game tutorial</a> to include a link to his <a href="https://github.com/carldea/JFXGen">source code at Github</a>.</li>
<li><strong>Adam Bien</strong> has a code snippet to show how to <a href="http://www.adam-bien.com/roller/abien/entry/completely_transparent_windows_stage_in">set the main Stage of a JavaFX application to be transparent</a>.</li>
<li><strong>Geertjan Wielenga</strong> has two posts this week. Firstly, he asks whether <a href="https://blogs.oracle.com/geertjan/entry/javafx_for_corporate_desktop_apps?utm_source=twitterfeed&amp;utm_medium=twitter">JavaFX can be used for corporate desktop applications</a>. Secondly, he asks for someone to step up and <a href="https://blogs.oracle.com/geertjan/entry/wanted_a_music_sheet_component">provide a JavaFX-based music sheet component</a>.</li>
</ul>
<p>That&#8217;s all for this week. Feel free to <a href="mailto:jonathan@jonathangiles.net">send me a link</a> if you think you&#8217;ve done something that your peers may be interested in. Catch you all next week <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/dh_A_v0AYsY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-23/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-23/</feedburner:origLink></item>
		<item>
		<title>JavaFX links of the week, April 16</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/AyEOt9gugdE/</link>
		<comments>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-16/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 01:54:42 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1935</guid>
		<description><![CDATA[Hey everyone &#8211; I&#8217;m back in the chair this week having just returned from Japan where I presented at JavaOne and then took a vacation. Thanks to Carl Dea for stepping in for me the last two weeks to keep the links flowing, and for also finding a bunch of links for this weeks post. [...]]]></description>
			<content:encoded><![CDATA[<p>Hey everyone &#8211; I&#8217;m back in the chair this week having just returned from Japan where I presented at JavaOne and then took a vacation. Thanks to <strong>Carl Dea</strong> for stepping in for me the last two weeks to keep the links flowing, and for also finding a bunch of links for this weeks post. I apologise if your link has been missed (please let me know), and I also apologise if I repeat a link that has already been posted. With that, let&#8217;s get into the links! <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<ul>
<li><strong>Jasper Potts</strong> was interviewed by the Java Spotlight podcast whilst we were in Japan. He talks extensively about the <a href="https://blogs.oracle.com/javaspotlight/entry/java_spotlight_episode_78_jasper">recent developer preview release of Scene Builder</a>.</li>
<li><strong>Adam Bien</strong> has blogged about <a href="http://www.adam-bien.com/roller/abien/entry/daily_building_java_fx_2">building JavaFX 2 using Maven 3</a>.</li>
<li><strong>Tom Schindl</strong> has two blog posts up regarding JavaFX and Eclipse xtend being a <a href="http://tomsondev.bestsolution.at/2012/04/11/javafx-xtend-a-perfect-match/">perfect match</a>, and a <a href="http://tomsondev.bestsolution.at/2012/04/11/javafx-xtend-a-sensational-perfect-match/">sensationally perfect match</a> <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
<li><strong>Software4Java.com</strong> has got <a href="http://blog.software4java.com/?p=5">three</a> <a href="http://blog.software4java.com/?p=15">interesting</a> <a href="http://blog.software4java.com/?p=24">blog</a> posts about creating custom CSS styling for Mac OS and iOS. This is very cool and I would love to see more people working together in a project to create &#8216;native&#8217; looks for JavaFX.</li>
<li><strong>Jason Lee</strong> will show you how to get Java 7, NetBeans, and JavaFX 2 running on Mac OS X. Well written <a href="http://blogs.steeplesoft.com/2012/04/java-7-netbeans-mac-os-x-and-a-little-bit-of-javafx-2/">instructions</a> to get you on your way.</li>
<li><strong>Carl Dea</strong> has posted <a href="http://carlfx.wordpress.com/2012/04/09/javafx-2-gametutorial-part-2/">part two</a> of his JavaFX 2 game tutorial.</li>
<li><strong>Sai Dandem</strong> of e-Zest blogs about creating a <a href="http://www.e-zest.net/blog/calendar-control-in-javafx-2-0/">custom calendar control</a> and how to use JavaFX animations to transition regions. (<a href="http://www.e-zest.net/blog/sliding-in-javafx-its-all-about-clipping/">It’s all about clipping</a>). Another blog entry about creating a <a href="http://www.e-zest.net/blog/percent-width-for-tablecolumn-in-javafx-2-x-tableview/">custom JavaFX TableColumn</a> allowing you to adjust column widths using a percentage similar to a Html table tag element.</li>
<li><strong>Anton Epple </strong>has created an A <a href="http://88.198.17.44/blog/2012/04/09/hello-world-example-in-javafx-and-jbox2d/">Hello World example in JavaFX and JBox2D</a>. He then has a follow-up blog entry that goes on to demonstrate a way to apply a <a href="http://88.198.17.44/blog/2012/04/09/custom-renderer-in-javafx-and-jbox2d/">custom renderer</a> onto nodes called a NodeProvider interface.  Another post talks about adding <a href="http://88.198.17.44/blog/2012/04/12/add-custom-components-to-fxml-using-builderfactory/">custom components to FXML using BuilderFactory</a>. He then begins experimenting with <a href="http://88.198.17.44/blog/2012/04/11/make-fxexperience-tools-extensible/">adding extensibility to the FX Experience tools application</a>, which he then <a href="http://88.198.17.44/blog/2012/04/12/update-to-my-fxexperience-tools-plugin/">updated in a separate post</a>. Finally, he talks about <a href="http://88.198.17.44/blog/2012/04/14/using-scenebuilder-for-designing-javafx-pinball-bumpers/">using Scene Builder to create the desired node designs</a> that he can then use in his pinball application.</li>
<li><strong><a title="Posts by introjava" href="http://introjava.wordpress.com/author/introjava/">introjava</a></strong> posts a very nice example of how to create a <a href="http://introjava.wordpress.com/2012/04/08/java-fx-2-ribbon-menu/">ribbon component</a> similar to Microsoft Office applications using JavaFX.</li>
</ul>
<p>Catch you all next week! <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/AyEOt9gugdE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-16/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-16/</feedburner:origLink></item>
		<item>
		<title>JavaFX links of the week, April 9</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/dD05wAiSSBo/</link>
		<comments>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-9/#comments</comments>
		<pubDate>Sun, 08 Apr 2012 22:15:48 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1930</guid>
		<description><![CDATA[How’s it going everyone? This is Carl Dea (@carldea) filling in for Jonathan Giles who is/was presenting at JavaOne in Tokyo, Japan. Below are this week’s links of the week. The links aren’t in any particular order except for the first one which is about the amazingly cool Scene Builder tool. Richard Bair (chief architect [...]]]></description>
			<content:encoded><![CDATA[<p>How’s it going everyone? This is <a href="http://fxexperience.com/2012/03/interview-with-carl-dea/">Carl Dea</a> (<a href="http://twitter.com/carldea">@carldea</a>) filling in for <strong>Jonathan Giles</strong> who is/was presenting at <a href="http://www.oracle.com/javaone/jp-ja/english-1481916-ja.html">JavaOne</a> in Tokyo, Japan. Below are this week’s links of the week. The links aren’t in any particular order except for the first one which is about the amazingly cool Scene Builder tool.</p>
<ul>
<li><strong>Richard Bair</strong> (chief architect for the Client Java Platform at Oracle) happily shares the good news about the very cool <a href="http://fxexperience.com/2012/04/announcing-javafx-scene-builder-public-beta/">Scene Builder tool</a> announced during the keynote at JavaOne Tokyo Japan<em>. </em>Here is Oracle’s official site to <a href="http://www.oracle.com/technetwork/java/javafx/tools/index.html">download</a> the preview release.</li>
<li><strong>William Antonio</strong> discusses his <a href="http://fxapps.blogspot.com.br/2012/04/first-look-at-javafx-scene-builder-tool.html">first impressions</a> of the latest preview release of the Scene Builder Tool.</li>
<li>Halfway around the globe <a href="../">Jonathan Giles</a> managed to present at JavaOne and <a href="http://fxexperience.com/2012/04/interview-with-jim-weaver-and-stephen-chin/">interview</a> Java Champions <strong>Jim Weaver</strong> and <strong>Stephen Chin</strong>. (<strong>Jonathan’s</strong> from the future) <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li><strong>Manoj Debnath</strong> blogs about <a href="http://www.developer.com/java/web/animation-in-javafx-vs.-flash.html?utm_source=twitterfeed&amp;utm_medium=twitter">Animation in JavaFX vs. Flash</a>. <strong>Manoj</strong> only details JavaFX 2.x and mentions little of Adobe Flash to contrast the two technologies.</li>
<li>Java Champion <a href="https://twitter.com/#%21/joshmarinacci">Joshua Marinacci</a> asks kindly if you are a GUI designer or Developer to please take <a href="http://leonardosketch.org/">Leonardo Sketch</a> out for a spin (test). Leo Sketch is a <a href="http://leonardosketch.org/features/">full featured</a> vector drawing tool very much like a scene builder tool. I believe the new JavaFX 2 FXML export feature may be available (ask him). It is a great tool for mocking screens, presentations, and more.</li>
<li>A nice <a href="http://blogs.steeplesoft.com/2012/04/book-review-pro-javafx-2-a-definitive-guide-to-rich-clients-with-java-technology/">book review</a> by <strong>Jason Lee</strong> on the recently released book “<a href="http://www.apress.com/9781430268727">Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology</a>”</li>
<li><strong>Java-Buddy</strong> (mystery person) creates easy to follow tutorials. <strong>Java-Buddy</strong> begins to create an app to <a href="http://java-buddy.blogspot.com/2012/04/free-draw-by-mouseevent.html">free draw</a> using the mouse, and a set of tutorials to transform shapes using <a href="http://java-buddy.blogspot.com/2012/04/javafx-2-apply-transform-of-rotate.html">rotation</a>, <a href="http://java-buddy.blogspot.com/2012/04/javafx-2-transform-of-translate.html">translation</a>, <a href="http://java-buddy.blogspot.com/2012/04/javafx-2-transform-of-scale.html">scale</a>, and <a href="http://java-buddy.blogspot.com/2012/04/javafx-2-transform-of-shear.html">shear</a>.</li>
<li>The JavaFX teams released a recent developer preview build of <a href="http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-1429449.html">JavaFX 2.2 build b03</a>. It’s nice to see it available for all the major platforms (Windows, MacOS, and Linux). Be on the lookout for the release notes for all the hard work that has been done.</li>
<li><strong>Narayan</strong> has blogged about form<a href="http://blog.ngopal.com.np/2012/04/09/form-field-validation-styles-from-css/"> field validation using CSS styling</a>.</li>
<li><strong>introjava</strong> (aka <strong>Gregg Setzer</strong>) has posted a <a href="http://introjava.wordpress.com/2012/04/08/java-fx-2-ribbon-menu/">Ribbon control</a> to his blog. It would be nice to see this in JFXtras at some point soon!</li>
</ul>
<p>Well, that’s it for this week I hope you enjoyed the links (I sure did). Keep up the great work! I want to thank <strong>Jonathan</strong> for allowing me to share with you all about the possibilities on the Java platform especially on the desktop.</p>
<p>-Carl</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/dD05wAiSSBo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/javafx-links-of-the-week-april-9/</feedburner:origLink></item>
		<item>
		<title>Interview with Jim Weaver and Stephen Chin</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/yqpAxEJtjNo/</link>
		<comments>http://fxexperience.com/2012/04/interview-with-jim-weaver-and-stephen-chin/#comments</comments>
		<pubDate>Fri, 06 Apr 2012 00:02:36 +0000</pubDate>
		<dc:creator>Jonathan Giles</dc:creator>
				<category><![CDATA[Interviews]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1914</guid>
		<description><![CDATA[Hi all. I&#8217;m currently sitting in a hotel room in Tokyo, but I&#8217;ve been waiting to publish this interview until Jim and Steve made their announcements this week. Now that the news of their employment at Oracle is out, here is the interview. Enjoy! Hi Jim and Stephen, would you please introduce yourselves? Jim: Hi [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all. I&#8217;m currently sitting in a hotel room in Tokyo, but I&#8217;ve been waiting to publish this interview until Jim and Steve made their announcements this week. Now that the <a href="https://blogs.oracle.com/java/entry/two_javafx_community_rock_stars">news of their employment at Oracle</a> is out, here is the interview. Enjoy! <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong>Hi Jim and Stephen, would you please introduce yourselves?</strong><br />
<strong>Jim</strong>: Hi Jonathan, I’m Jim Weaver, long-time application developer with a particular interest in rich-client Java/JavaFX development.<br />
<strong>Steve</strong>: I am also a JavaFX client hacker and enjoy working on several different open-source projects related to this.</p>
<p><img class="alignright size-full wp-image-1916" title="Stephen Chin" src="http://fxexperience.com/wp-content/uploads/2012/04/stephen-chin.jpg" alt="" width="128" height="128" /><img class="alignright size-full wp-image-1917" title="Jim Weaver" src="http://fxexperience.com/wp-content/uploads/2012/04/jim-weaver.jpg" alt="" width="128" height="128" /></p>
<p><strong>You&#8217;ve both been involved with JavaFX for a long time. What drew you into JavaFX in the first place, and what keeps you going with it?</strong><br />
<strong>Jim</strong>: Rich-client development should be simple and elegant, but the post-1994 trend has been to force-fit the browser into being an application execution environment.  Consequently, many rich-client applications are comprised of Rube Goldberg machine-esque combinations of HTML, JavaScript, XML and other technologies.  JavaFX is an elegant and powerful technology for creating rich-client applications that run on the Java Virtual Machine (JVM).</p>
<p><span id="more-1914"></span></p>
<p><strong>Both of you have been involved in writing the recently released JavaFX 2 book. Would you mind telling the readers about it?</strong><br />
<strong>Jim</strong>: Weiqi Gao, Stephen Chin, Dean Iverson, Johan Vos and I wanted to create a definitive resource for JavaFX developers that would help them get up to speed quickly on JavaFX.  We believe that our 600-page tutorial-style <a href="http://learnjavafx.typepad.com/weblog/2012/03/pro-javafx-2.html">Pro JavaFX 2 book</a> does just that.<br />
<strong>Steve</strong>: That may seem like a lot of authors for one book, but it gives us a unique advantage.  We were able to not only cover a lot of topics, but also reach a variety of different skill levels.  Whether you are just getting started in JavaFX, or are a long-time JavaFX hacker and want to know expert details, we have all the bases covered.</p>
<p><strong>What do you think of JavaFX 2 now that it is Java-based?</strong><br />
<strong>Jim</strong>: Implementing JavaFX as a Java API removes the barriers to adoption associated with the JavaFX Script language.  Those barriers were: learning a new language, and using new development tools.  The JavaFX Script language is still alive, by the way, as the <a href="http://javafx.steveonjava.com/accouncing-visage/">Visage project</a> founded by Stephen Chin.<br />
<strong>Steve</strong>: I was skeptical of the move to pure Java APIs&#8230;  not because I thought it was a bad idea, but rather the timing of the change and what it would do to the platform.  However, after a year of development on the new APIs, Oracle released JavaFX 2.0 as promised and it is better than ever.</p>
<p><strong>Stephen, I presented with you about JavaFX on alternate languages a few years ago at JavaOne 2010 I believe, but since then you&#8217;ve taken that talk around the world a few times! What is the current state of JavaFX on alternative languages?</strong><br />
<strong>Steve</strong>: The new Java APIs unite the JavaFX development community, because it is now possible to write JavaFX code directly from Java or any other JVM language.  There is a very active Groovy API library for JavaFX called <a href="http://groovyfx.org/">GroovyFX</a> that is being developed by Jim Clarke, Dean Iverson, Dierk Konig, and others.  Also, there is a lot of momentum behind <a href="http://code.google.com/p/scalafx/">ScalaFX</a>, which is a Scala library for writing JavaFX applications.  As Jim mentioned, I am leading up the future JavaFX Script development with the <a href="http://code.google.com/p/visage/">Visage project</a>, which is yet another JVM language you can choose to develop your applications with.</p>
<p><strong>Prior to developing with JavaFX, did you use Swing? What are your thoughts on JavaFX compared to Swing in terms of performance, functionality/features, and ease of development?</strong><br />
<strong>Jim</strong>: I used Swing prior to JavaFX, and it (coupled with Java 2D) was the best way to create rich-client applications before JavaFX became available.  The scenegraph-based and hardware-accelerated capabilities of JavaFX enable developers to easily create performant rich-client application that have UI characteristics that today’s users have come to expect.<br />
<strong>Steve</strong>: Yeah, Swing&#8230;  and before that AWT&#8230;  and some custom toolkit work in the middle.  Towards the end of my Swing dev days I was impressed by zooming user interface toolkits, such as <a href="http://www.piccolo2d.org/">Piccolo2D</a>, because they let you manipulate a scene graph of UI objects to create interactive user interfaces.  Fast forward to JavaFX, and one of the primary advantages it has over prior graphics toolkits is the scenegraph-based development paradigm that Jim mentioned.  In fact, the early prototypes of JavaFX were built on top of Piccolo (and later replaced with a highly-performance scene graph the JavaFX team built from the ground up).  As the JavaFX platform has matured, having business focused controls, rich capabilities for audio and video, and a wide set of authoring capabilities from direct code APIs to declarative markup to UI builder tools, such as the newly released <a href="http://www.oracle.com/technetwork/java/javafx/tools/index.html">JavaFX Scene Builder</a> set it apart.</p>
<p><strong>You&#8217;re both members of various open source projects. What have you been doing in the community for JavaFX?</strong><br />
<strong>Jim</strong>: I have been involved in various JavaFX open source projects, including the <a href="http://jfxtras.org/">JFXtras project</a>.  I’ve written many articles on JavaFX for Oracle Technology Network and Java Magazine to help developers learn to use JavaFX.  It has also been my pleasure to highlight the work of other JavaFX developers in my blog and on Twitter.<br />
<strong>Steve</strong>: I have also been helping out with various open-source projects including <a href="http://code.google.com/p/jfxtras/">JFXtras</a>, <a href="http://code.google.com/p/scalafx/">ScalaX</a>, and <a href="http://code.google.com/p/visage/">Visage</a>.  In addition, Keith Combs and I run the <a href="http://www.svjugfx.org/">Silicon Valley JavaFX User Group</a>, which is one of the only user groups in the world that streams all of their events live.  As a result, you can join and participate in our sessions even if you are halfway around the world!</p>
<p><strong>You&#8217;ve both probably got favourite areas of JavaFX? What are they?</strong><br />
<strong>Jim</strong>: My favorite areas of JavaFX are its powerful scenegraph, the ability to dynamically bind properties, and the ease of expressing the UI via builder classes.<br />
<strong>Steve</strong>: I would have to say I am a big fan of the new controls (and not just because you are in the controls team, Jonathan!)  For any real business applications, the breadth and quality of the controls makes a big difference in the functionalty that you are able to provide.  In particular, one of the big improvements over Swing is the ability to style controls directly via CSS, which provides a tremendous amount of customization!</p>
<p><strong>What would you like to see improved in future releases of JavaFX?</strong><br />
<strong>Jim</strong>: I’d like to see classes in the API for communicating with RESTful services and parsing JSON/XML.  I’d like to see 3D primitives, which will make 3D UI application development easier.  I’d also like to see JavaFX running on the mobile devices that I carry around.<br />
<strong>Steve</strong>: Mobile, mobile, and mobile.  :)</p>
<p><strong>Jim and Stephen &#8211; I&#8217;ve been ignoring the elephant in the room &#8211; congratulations on your recent announcement about joining Oracle. What exactly will you be doing?</strong><br />
<strong>Jim</strong>: Thanks!  Joining Oracle as a Java Evangelist is a natural progression of my passion for helping rich-client Java and JavaFX become preferred technologies for new application development.  It will enable me to devote full attention to moving Java/JavaFX forward, teaming up with Engineers and Evangelists at Oracle.  As a Java Evangelist, my interaction with the Java/JavaFX community through speaking and writing will greatly increase.<br />
<strong>Steve</strong>: I will be continuing the community involvement, open-source hacking, and JavaFX evangelism activities that I am known for, and looking for ways to innovate on the platform and make it useful and accessible to all Java developers.</p>
<p><strong>Thanks for taking the time to chat with me. Do you have anything else you’d like to say to the readers?</strong><br />
<strong>Jim</strong>: Thanks Jonathan.  I’d like to express to the readers that you, Jonathan Giles, have been a champion and disruptive force in moving JavaFX forward.  I’m very pleased and proud that I’ll be in a position to work directly with JavaFX engineers like you, Richard Bair, and Jasper Potts, who share my passion for restoring sanity to rich-client application development.<br />
<strong>Steve</strong>: I would just like to mention to the readers that I am *not the least bit* jealous that our interviewer, Jonathan Giles, and his peers Rich and Jasper are <del>having a vacation in Japan</del> doing some amazing outreach in Japan right now.  I heard that Rich’s JavaFX technical keynote was amazing, as was the huge announcement of the <a href="http://www.oracle.com/technetwork/java/javafx/tools/index.html">JavaFX Scene Builder</a> developer preview that Jasper showed off!</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/yqpAxEJtjNo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/interview-with-jim-weaver-and-stephen-chin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/interview-with-jim-weaver-and-stephen-chin/</feedburner:origLink></item>
		<item>
		<title>Announcing JavaFX Scene Builder Public Beta</title>
		<link>http://feedproxy.google.com/~r/fxexperience/~3/dRJx0R7n2ME/</link>
		<comments>http://fxexperience.com/2012/04/announcing-javafx-scene-builder-public-beta/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 00:19:59 +0000</pubDate>
		<dc:creator>Richard Bair</dc:creator>
				<category><![CDATA[FXML]]></category>
		<category><![CDATA[JavaOne]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://fxexperience.com/?p=1906</guid>
		<description><![CDATA[Hello from JavaOne Japan, where Jasper, Jonathan and I find ourselves seated in the opening keynote of the morning. One of the big announcements is the public beta of the JavaFX Scene Builder, our new tool for laying out and creating JavaFX content. The Scene Builder is the start of a more comprehensive RAD (rapid [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://fxexperience.com/wp-content/uploads/2012/04/SceneBuilder.gif"><img class="aligncenter size-full wp-image-1907" title="SceneBuilder" src="http://fxexperience.com/wp-content/uploads/2012/04/SceneBuilder.gif" alt="" width="590" height="393" /></a>Hello from JavaOne Japan, where Jasper, Jonathan and I find ourselves seated in the opening keynote of the morning. One of the big announcements is the public beta of the JavaFX Scene Builder, our new tool for laying out and creating JavaFX content. The Scene Builder is the start of a more comprehensive RAD (rapid application development) tool for JavaFX, with drag-and-drop GUI building and eventually data binding.<br />
<span id="more-1906"></span><br />
At its heart, the Scene Builder is really a layout tool. One of the most difficult aspects of building apps (and something we see very frequently in the <a href="https://forums.oracle.com/forums/forum.jspa?forumID=1385">JavaFX OTN Forums</a>) is doing layout and constructing the UI, and this is what Scene Builder needs to be really, really good at.</p>
<p>Our experience of the last six months has been that the scene builder in general is very stable and the team has done a lot of work on usability. We&#8217;re really hoping for feedback on the user experience, especially as you attempt to use it anger. We&#8217;ve done a lot of work trying to figure out what you might naturally want to do when building a form, but really it is your feedback and experience that will either validate that design or give us the input we need to make the tool even better.</p>
<p>The SceneBuilder is basically an editor for FXML files. We&#8217;ve been working with the NetBeans team as well so that when you double click an FXML file in NB it should open up the scene builder and allow you to edit it. The FXML file is essentially our documented serialization format for the UI. Your event handlers and so forth will be in the Java Controller associated with the FXML file.</p>
<p>From a technical perspective, SceneBuilder is built entirely in JavaFX. A new stylesheet for Scene Builder was developed that we think looks quite nice <img src='http://fxexperience.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . It really shows what you can do with JavaFX!</p>
<p>You can download the Scene Builder <a href="http://www.oracle.com/technetwork/java/javafx/overview/index.html">on OTN</a>, and read more about it on the <a href="http://docs.oracle.com/javafx/">JavaFX Docs</a> page. To give us feedback on JavaFX Scene Builder, go ahead and leave comments here on this blog and we&#8217;ll let you know when we&#8217;ve got an official channel setup!</p>
<img src="http://feeds.feedburner.com/~r/fxexperience/~4/dRJx0R7n2ME" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://fxexperience.com/2012/04/announcing-javafx-scene-builder-public-beta/feed/</wfw:commentRss>
		<slash:comments>52</slash:comments>
		<feedburner:origLink>http://fxexperience.com/2012/04/announcing-javafx-scene-builder-public-beta/</feedburner:origLink></item>
	</channel>
</rss>

