Gluon has taken on the responsibility for building an ecosystem and making releases available of the JavaFX Scene Builder tool, as we believe this is a critically important tool for the community. We don’t do this alone however – we work with the community to integrate their improvements. Today we interview Alexander Casall from Saxonia Systems AG about their work on Scene Builder.
Hi Alexander. Can you please introduce yourself to the readers?
Hi Joeri, thank you for this interview. I’m working with JavaFX since 2012 for the company Saxonia Systems AG (Germany). We started to use the technology in a product of ours. Meanwhile we have several customer-projects (enterprise applications) so my focus is around the software architecture of new projects and moving our internal JavaFX community forward. In addition I created / contribute to several open source projects (e.g. mvvmFX).
What does Saxonia Systems do?
Saxonia Systems AG does custom software development in Germany with 220 employees, mainly focused on Java development. Currently we have 3 stable JavaFX Teams available for hire that are creating JavaFX applications. In addition there are few consultants at our customer sites who are supporting complex JavaFX projects.
How critical is Scene Builder to your workflow and why did you start contributing fixes to the Scene Builder?
Pretty critical. We use FXML in most projects to declare the views. The concept to separate the concern of the UI declaration (FXML), UI design (CSS) and implementation (java) has a lot of benefits for professional UI-development. 90% of the FXML in our projects was created with Scene Builder, so we know the strengths and the weaknesses of Scene Builder pretty well. That’s why we started to contribute to it.
Scene Builder has two different modes of operation – it can be embedded into an IDE (using the Scene Builder Kit library), or as a standalone application. How are you using Scene Builder: in combination with an IDE or independently?
Mainly in standalone mode. The feedback of our Intellij users is that the integration in Intellij is not stable enough. On the other hand the integration in eclipse was not done yet.
It sounds like Scene Builder is being heavily used by your team. What are your favorite features of Scene Builder?
In general it’s very good to have a WYSIWYG-Tool for FXML. Here are some concrete features which are pretty useful:
- Drag and drop of elements into the hierarchy is productive
- Controller skeleton generation is useful
- Rendering of changes in the preview window is helpful
- Custom component visualisation is helpful (but not stable enough yet)
- CSS + i18n preview is also very helpful – If you change something in a CSS file, it applies to the preview
- CSS analyzer is very useful
One thing we at Gluon have been very amazed by is the vast number of downloads we’ve had of Scene Builder. Did it surprise you when Oracle decided to stop providing binary releases of Scene Builder, and have you found the transition to Gluon-supported releases satisfactory?
It was definitely a surprise and I think the transition is not done yet. It really depends on which quality the next releases of Scene Builder have. In general you do a good job providing the binary, but of course it’s more. It’s about testing new releases, ensuring a high quality is reached when a new version of Scene Builder is going to be released, and so on.
Absolutely agree! One thing we are talking about already is bringing in the changes from the OpenJFX 9 repository to ensure a good transition on to Scene Builder for JavaFX 9. Speaking of which, are there features missing or enhancements from Scene Builder Project that you really want to see?
The highest priority lays for us on important bugfixes / smaller enhancements, here are some examples:
- Import optimization in FXML’s (instead of *-Imports)
- Edit properties of included elements (fx:include) like AnchorConstraints and so on
- More stable custom control support (this is really ugly)
And of course we have a wish list of bigger features that can be discussed in the community.
Is your team working on these, or are there other areas that you hope that others in the community may focus on?
We work on parts of it. We’ve implemented, for example, the import optimization and we try to fix the mentioned fx:include thing. In total we fixed now 9 bugs / enhancements and we’ll fix some more.
The good thing is, there are some other developers that are contributing useful enhancements to the Scene Builder (for example this pull-request).
What has your experience been like so far working with the Gluon team on getting fixes back into Scene Builder?
Pretty good! Uncomplicated and fast, as long as you are not on vacation 😀
Is there anything you would like to say to the community of Scene Builder users?
Yes, contribute by filing bugs, enhancement requests and fixes and support Gluon to move important OS-projects forward.
Thanks so much for your time Alexander, and from all of us at Gluon, and I’m sure the wider community, thank you so much for your support of Scene Builder. Through open source efforts we all benefit, and we thank you for being an excellent community member. It is great that we can work together on common ground such as Scene Builder and open source generally, where everyone benefits. We look forward to working with you, and the whole community long into the future.