JFXtras is a library project for JavaFX that provides a bunch of useful API – particularly new UI controls (which you can see by running the JFXtras Ensemble application). It was founded back in the early JavaFX 1.x days, but has recently begun rebooting itself for JavaFX 2.x. I’ve been working with the project to help it get kickstarted, and wanted to post the following interview to introduce you to a few of the original committers to the project. I should note that this interview was done in early March, but has been waiting for the release of JFXtras Labs 0.1 before publishing it. Now that this has happened, enjoy the interview 🙂
A (somewhat) close facsimile of the four interviewees: Tom, Dean, Steve, and, um, Gerrit
Welcome gentlemen, and thanks for taking the time to answer a few questions. Could you please briefly introduce yourselves.
tbee: My name is Tom Eugelink, 41 years old, 2 kids, and I live in the Netherlands. I’ve been writing computer software since I was 14, which seems like a century ago. First just for fun; basic on the VC20, C64, Amiga, and then I decided to go serious and did a formal 4 year study in software engineering. Back then Pascal and C were the leading languages and Unix (SUN) the operating system we worked with. After that I started a job as a software engineer, where I was part time send out to clients and part time working in house. And basically is what I’m still doing now, almost 20 years later, only self employed.
In the company I worked for back then, I had risen to the mysterious level of senior software engineer, when Java first hit the spot lights. And I expected it to be a game changer, compared to the cumbersome languages we were using at that time. So I convinced the company to jump on the Java 1.1 band wagon, and luckily my hunch turned out to be correct. A funny fact is that the first project we did using Java, still is continuing today and I’m still on a regular basis developing on that code base, which now has migrated to Java 1.7.
steve: I will keep it short… My name is Stephen Chin and I am a JavaFX hacker. (with the long version here)
gerrit: My name is Gerrit Grunwald, 42 years old, 2 kids and i live in Germany. I started playing around with computers in 1984 on a Texas Instruments Ti-994A followed by a Sharp MZ 731, Sharp MZ 821, Amiga, PC and finally a Mac. I studied applied physics and started working as an so called Application Scientist doing installations and training of hard- and software. After three years traveling around the world i decided that it was time to spend more time on coding and moved to the Software Development department. I started coding Java around 2003 because i needed a platform that supports Mac and Windows.
dean: I’ll follow Steve’s lead. My name is Dean Iverson, I’ve been a JavaFX fanboy and JFXtras contributor since before it was cool.
Scenic View 1.0 is now available for download! This release adds a heap of new features to the release I put out a few weeks ago. Some features include filtering, editing, and a bunch more! Here’s a screenshot:
Picking the version number for this release was a little difficult – Scenic View has existed for a very long time, but until now has not had a version number assigned to its releases (the last of which was the first public release). Therefore, Ander Ruiz and I decided to make this next release version 1.0, and to start numbering versions from there. We have a lot planned for future releases, so keep an eye out on the Scenic View page here at FX Experience, and follow FX Experience on Twitter if you want up to the minute news. Also, you may be interested in the interview I did with Ander last week.
Finally, on behalf of Ander and I, enjoy this application! Please provide feedback in the comments section and we may add the feature or bug fix in a future release.
It’s June already?! Where does time go! It’s a public holiday here today so I’ll get these links out quickly so I can get out of the office again. Enjoy! 🙂
- JavaFX 2.2 Developer Preview build 11, and Scene Builder 1.0 build 40 are now available for download.
- Richard Bair has blogged about JavaFX from a 10,000 foot (or 3,048 metres) view.
- Jasper Potts and I have set up a new Scenic View page to be the home for Scenic View. Soon it will have a help section, various screenshots, as well as news and downloads.
- In preparation for the new release, I have interviewed Ander Ruiz. He is responsible for much of the improvements in the upcoming release of Scenic View.
- Tom Schindl has been very busy in the past few days. Firstly, he announced the release of e(fx)clipse 0.0.14. Then he did two blog posts, one on JavaFX and xtend, and then one on getting started with e(fx)clipse and JavaFX.
- In yet another post, Tom Schindl posted about Eclipse JDT + JavaFX, essentially building a mini IDE with JavaFX as the UI layer.
- Gerrit Grunwald has been exploring some of the new features coming up in JavaFX 2.2. Firstly, he covers the ImagePaint API to create textures using images, and secondly he forks the patternizer project so that it generates JavaFX code.
- Also exploring the JavaFX Canvas API is Jim Clarke. Jim does a performance test and finds that JavaFX appears to run very, very fast compared to implementations of the performance test in other languages.
- Anton Epple has blogged about converting SVG to FXML using NetBeans.
Ok, that’s all for this week. Now I can go outside! 🙂 Catch you all next week.
Today I have an interview with Ander Ruiz, a developer I’ve been working with on an updated version of Scenic View that will be released next week. The one point I want to raise is that we want your feedback on new features to add to this application! Leave comments in the comments section below. For those of you unfamiliar with Scenic View, there is now a Scenic View page here at FX Experience which will be shortly updated with the new release, but the current release can also be downloaded.
Hi Ander. Could you please introduce yourself to everyone?
I’m a graduate of the Engineering School of Bilbao with a Bachelor degree in Telecomunications Engineering. I’ve been working as a software architect at Telvent on Java for embedded environments since 2002 with lots off hardware control, all kind of communications (serial ports, usb, network protocols …), and user interaction.
You’ve mentioned to me previously that you do a lot of work with JavaFX-based kiosks – can you provide mode detail about how you use JavaFX for kiosks?
Our old machines use HTML as their GUI, and an obsolete JNI Wrapper of Mozilla (1.7!!) called JRex for browsing the (there was no WebView at that time :-(). It was not bad, but definitively far from perfect. So in 2008 I started to search for a replacement, and after discounting Flex (which was being used for our server application) I chose JavaFX. Three years later we have an appealing framework to build our GUIs, that reduces our development costs and bugs. And with JavaFX 2.x you have provided me a way to migrate the old GUIs.
I’m going to do something today that I almost never do, and that is discuss briefly some of the bigger picture trends that I see widely in the industry, and discuss some of the things we’re doing but haven’t really talked a lot about yet.
At Sun, we would regularly talk about everything we were working on. Everything. Whether it was fully approved, funded, strategically relevant, or not. We’d just sort of throw it out there. Which was wonderful and liberating because we could just sort of say anything. And it was awful because nobody knew what they could trust. We’d announce something, work on it for a while, find out it didn’t really work out right, and then bail on it.
At Oracle, we don’t do that. We pretty much keep things quiet until we’ve lined up everybody — Management (which pays the bills), Product Management (which aligns the strategy), Engineering (who says what can or cannot be done technically or feasibly), Sustaining (who has to support whatever it is we do for the next 10 years or longer), SQE (who has to be able to test whatever it is we’re doing), and so forth. Once we’ve got each of those groups aligned with a strategy and roadmap that we are all confident we can execute on, and which we’re confident we can support for the foreseeable future, then we make an announcement. And of course we talk a lot with partners to find out what they think about the strategy and whether it makes sense to them. As often as not, we will make the announcement with some functioning code available that you can download and get started with.
You’ve seen this pattern for the last couple years in the Java and JavaFX groups after the Oracle acquisition. By the time we’ve made an announcement, we’re fully committed and usually we’ve got code to back it up. More often than not, we’ve got a Developer Preview or Early Access or Beta ready to go and we’ve actually been working on it for a while. This makes sense, because engineering can’t always ascertain feasibility without at least some kind of prototype. And we have now built up a track record of delivering either on time or ahead of time whatever it is that we commit to.
This has been a very conscious decision. Those from Sun, and those from Oracle, both knew that Oracle was going to have to prove itself as the steward of Java. We needed to execute continuously for several years to build trust with developers that when we say we’re going to do something, for goodness sake, we were going to do it.
And that is why we haven’t made any official announcement about Metro tablets or Android or iOS. And that is why I’m not going to make any official announcement in this blog post :-).
At various times people have written articles or blog posts or forum posts asking the question, what is JavaFX? Is it a competitor to Flash? (The answer would be No, though competing with Flex would be a Yes). Is it a competitor to Silverlight? (The answer would be Yes, for some use cases). Is it a replacement for Swing? (The answer would be an emphatic Yes).
I think at its heart, JavaFX is about application development. Good old fashioned native application development. The sorts of things you see in the iOS app store, or Android app stores, or that you install on your desktop. Think money management, banking, data visualization, entertainment, data entry, etc, etc. It isn’t competing with the web, unless you also think that native apps are competing with the web (in some sense, yes, but in a larger sense, no). The Web, to me, is two things. First, it is a medium for “browsing” or “surfing” data and information. And for that it is unparalleled. It works really, really well. Second, it is a distributed client/server architecture — REST. And that part of the web is used both by browser apps and by native apps. Pretty much every application worth anything these days has some web component, in that it is talking to the cloud using REST like principles and architecture for web services.