FX Experience Has Gone Read-Only
I've been maintaining FX Experience for a really long time now, and I love hearing from people who enjoy my weekly links roundup. One thing I've noticed recently is that maintaining two sites (FX Experience and JonathanGiles.net) takes more time than ideal, and splits the audience up. Therefore, FX Experience will become read-only for new blog posts, but weekly posts will continue to be published on JonathanGiles.net. If you follow @FXExperience on Twitter, I suggest you also follow @JonathanGiles. This is not the end - just a consolidation of my online presence to make my life a little easier!
tl;dr: Follow me on Twitter and check for the latest news on JonathanGiles.net.
by Jonathan Giles | Sep 13, 2014 | Controls, General
Hendrik Ebbers was generous enough to arrange for a hard copy of his new book, Mastering JavaFX 8 Controls, to be sent to my place, so the least I can do is post a mini review of the book. I have now read the book cover to cover and I think that it is a very good book for people wanting to learn more about the controls that ship in JavaFX 8, and also for people wanting to learn more about how to build custom controls specific to their use cases.
Reviewing a book like this is difficult for me as I have lived and breathed JavaFX UI controls for over five years now, so it is hard for me to gauge whether the book is detailed enough for people newer to the subject. My gut feeling is that the book could do with more text to describe concepts, but in general I think most readers should be able to follow along without a problem. In reading the book I made a few notes that I have also passed on to Hendrik, to help improve future editions of the book (which I hope there are as JavaFX API evolves quite rapidly).
The early chapters of the book give a good introduction to the basics of JavaFX. The middle section gives a good overview of the existing JavaFX UI controls, as well as interesting topics such as Swing and SWT integration, and styling UI controls. Unfortunately, whilst the first two sections feel like they go at a good pace, the final section of the book seems to be over too quickly – there is only one chapter on creating custom controls, which is unfortunate given the subtitle of the book is “Create Custom JavaFX Controls for Cross-Platform Applications”. It would be nice to see the final section of the book expanded to fill multiple chapters in future editions – this way it could feel less cramped and the book could easily become the go-to reference for how to create custom controls.
One nice aspect of the book is the interviews with members of the community (including myself). I enjoyed reading the interviews, but I wished for more and for them to be longer! 🙂 There are a lot of interesting members of the community who can provide a bunch of detailed insight and explanations, so I hope future editions expand on the interviews.
Overall I think that this is a great book for people interested in working with JavaFX UI controls, and shows great promise for future editions if some of the kinks above are worked out. Despite my negative points, I recommend this book to people who are serious about wanting to get to know JavaFX UI controls in greater depth.
by Jonathan Giles | Sep 9, 2014 | Interviews
Today I have an interview with Johan Vos. For those new to this series, here are the people who have been interviewed so far:
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
I am Johan Vos, a Java Champion working with Java on the server (Java EE) and Java on the client (JavaFX). I am the lead author of Pro JavaFX 8, co-founder of DataFX, and maintainer of the JavaFX Android port.
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
Between 1999 and now, I only missed one JavaOne edition that overlapped with the birth of my daughter.
What are you going to talk about at JavaOne?
I have 2 sessions this year: CON1804 about JavaFX Android and CON3640 about DataFX. In CON1804, we will show how to run your JavaFX Applications on Android devices. The target area of JavaFX developers becomes much, much larger now that you can also deploy JavaFX Applications on Android devices. The porting effort is a work in progress, we will show the current status and our roadmap plans.
In CON3640, we will talk about how to get real-world enterprise Data in your applications and back to the original source, and how to handle the flow in a complex application. JavaFX provides a powerful UI for developing Java Client applications, and DataFX extends this by adding features required for developing Enterprise Applications that can be used on Desktop, mobile and embedded.
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints?
I realize people come from all over the world, and spend time and money on the JavaOne conference. They deserve more than just a tutorial. For those interested in Java on mobile devices, I’m doing my best to make it an exciting conference.
Is there anything else you’d like to discuss?
Make sure you go to JavaOne. It is the biggest Java Community conference. There is a reason why I try to attend every single year. There is so much information, so much discussions, and your head will be filled with ideas by the end of the week. If you’re a Java developer, JavaOne is the place to be. Oh, and we should go back to the Moscone conference center one day. The more people attending JavaOne, the higher the chances we will take the Moscone back.
by Jonathan Giles | Sep 7, 2014 | Links
Not long now until JavaOne, so I hope everyone that is presenting is getting things sorted out! 🙂 Here’s the weeks links – enjoy! 🙂
That’s all for this week. Catch you again next week!
by Jonathan Giles | Sep 7, 2014 | Interviews
Today I have an interview with Carl Dea. For those new to this series, here are the people who have been interviewed so far:
Let’s get into the interview! Enjoy
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
Hi, I am Carl Dea. I want to first thank you and the other JavaFX teams at Oracle for not only building a great graphics toolkit but helping grow the JavaFX community. I work for Objective Solutions Inc. as a software engineer & UI developer by day and an avid JavaFX enthusiast by night. I and others (Gerrit Grunwald, Mark Heckler, Jose Pereda and Sean Philips) have recently finished authoring the book titled ‘JavaFX 8 Introduction by Example‘ by Apress publishing.
What was your goal in writing the book?
The book is the second edition of the JavaFX 2.0 Intro by Example book. JavaFX 8 Introduction by Example aims at providing easy to follow examples while introducing new features in JavaFX 8 and learning the new Java 8 language features. Of course given the huge feature set of JavaFX 8 and Java 8 language features the book couldn’t cover everything. But hopefully, this will allow readers to quickly get up to speed and begin to build rich client-side applications in JavaFX.
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
Yes, this is my first time speaking at JavaOne. So, hopefully everything goes as planned. Not to jump the subject but I am reminded of a a funny comic strip depicting what could go wrong during a presentation:
What are you going to talk about at JavaOne?
I’ve been working on a talk for JavaOne regarding a live editor tool for developers to quickly prototype JavaFX UIs and visualizations. The session is titled JavaFX Coding Playground (JavaFX-Based Live Editor Tool). The tool will allow developers to execute code without the need of compiling Java code by using the new JavaScript engine Nashorn in JDK 8. In the session attendees will learn how to code UIs with JavaScript, FXML, JavaFX CSS styling. Also, they will learn how to use external libraries such as JFXtras, Enzo and your open source project that you started called ControlsFX.
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints?
The JavaFX Coding Playground (Live editor) tool to be demonstrated in the talk FX Playground will soon be open sourced and should be available before the talk (end of Sept.). The public will get a chance to perform a git clone to download the source code to be built and executed. Binary distributions will come later.
Is there anything else you’d like to discuss?
Yes,
I wanted to also point out that FX Playground’s features that I mentioned earlier doesn’t stop there! It has new support for many other languages (not just JavaScript (Nashorn)).
What are all languages that you currently support?
JavaScript (Nashorn), Groovy, GroovyFX, Python (Jython), Ruby (JRuby), Clojure, and Scala.
Why are you supporting so many languages?
I realized something about the software programming world is that it is made up of people with different backgrounds (programming languages). Having these different backgrounds I often sense programmers tend to be more comfortable with certain languages than others (dogma). So, given that these popular languages sit on top of the JVM (based on JSR 223) the developer can access and reap all the benefits of the JavaFX APIs. Therefore, anyone proficient in any of the languages mentioned above will be able to quickly prototype user interfaces, animations or any other type of visualization using JavaFX.
Thanks for taking time out of your day to answer these questions! All the best for your JavaOne talks!
Thank you Jonathan. It was my pleasure. I wish you the best on your talks also!
by Jonathan Giles | Sep 4, 2014 | Interviews
Today I have an interview with David Grieve. For those new to this series, here are the people who have been interviewed so far:
Let’s get into the interview! Enjoy 🙂
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
Sure. I’m a member of the JavaFX team at Oracle. I’m primarily responsible for the CSS implementation, but I’ll take credit for almost anything that makes you say, “Wow. Cool!” As far as street cred, I’ve been coding in Java since the 1.0 days.
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
The first time I presented at JavaOne, I gave a part of a talk on JavaFX script. I’ve given several talks since then.
What are you going to talk about at JavaOne?
I have three presentations, two of which are centered around CSS. One is a tutorial on the JavaFX CSS API and another is on ‘hacking’ unsupported CSS features like transitions. The third presentation is a BOF where I hope to share some of what I’ve learned about debugging JavaFX.
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints? 😉
I’m not Larry Ellison, so I’m not allowed to say anything. But then again, anything I would say is public knowledge.
Thanks for taking time out of your day to answer these questions! All the best for your JavaOne talks!
by Jonathan Giles | Aug 31, 2014 | Links
It’s September folks! That’s the same month that JavaOne starts! We’re well and truly getting into the final countdown for JavaOne now – I hope people are starting to get prepared. I wish I could say I was more prepared than I am, but I’m sure I’ll get there in time. Anyway, a good set of links this week, so enjoy!
- Given we’re only a few weeks out from JavaOne, I’ve started publishing short interviews with some people who will be presenting. So far I have interviews with Eugene Ryzhikov, Mikael Grev, and Stephen Chin. I’ll be publishing more in the lead-up to JavaOne.
- Speaking of JavaOne, people are starting to post summaries of what they will be presenting at JavaOne. I’ll post links to these whenever I find them. This week Adam Bien, Hendrik Ebbers and I have posted our JavaOne talks.
- I’m arranging the 5th annual Java desktop lunch. If you’re going to be at JavaOne and want to come along, please register your interest now so that I can be in touch with the details.
- Adam Bien recently presented to the Virtual JUG on the topic of ‘Opinionated JavaFX‘, where he spoke about how he recommends building JavaFX applications, behind the scenes of afterburner.fx and finally he gave a walk through of floyd.
- Jens Deters has announced that MQTT.fx 0.0.7 has been released. This release includes ‘scripting support, setup/re-configuration tool, a reviewed connection profile editor, and a reviewed UI and style’. It’s looking very nice.
- Jens Deters has also announced the release of FontAwesomeFX 8.0.9, which includes support for 40 additional icons from FontAwesome 4.2.0.
- Hendrik Ebbers has posted more screenshots of the AeroFX project that is being undertaken by Matthias Meidinger. It’s looking good!
- I’ve got no involvement (or really even any interest) in Bitcoin at present, but I thought it was cool to come across Bitsquare this week, which has a nice looking client written in JavaFX (scroll down to watch the video). The code appears to be open source too. Good stuff!
That’s all folks. Catch you again next week! 🙂
by Jonathan Giles | Aug 31, 2014 | Interviews
Today I have an interview with Stephen Chin. For those new to this series, here are the people who have been interviewed so far:
Let’s get into the interview! Enjoy 🙂
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
Hi, I am Stephen Chin (aka. steveonjava), Hacker, Author, Java Ambassador and also the JavaOne Content Chair. If you like the conference, then it must be because Java is a great technology with an even greater community! If not, then it is probably my fault. 🙁
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
Longtime attendee, pretty longtime speaker (and occasional Rock Star Speaker).
What are you going to talk about at JavaOne?
That is a great question that I am trying to avoid thinking about myself as I continue to lie to myself that preparation won’t be as horrendous as last year, and procrastinate away! If I were to actually think about it, I might remember that I am going to do a UI mashup to show off the new Date and Time API, hack on some wearable embedded devices in a cool lab, and even perform a magic show. Heck, I would even throw in an Agile talk for the brand new track we are kicking off, and do NightHacking interviews all afternoon in the Java Hub with notorious Java geeks.
However, I don’t actually know about any of this, because that amount of preparation would be too much for a normal person to handle…
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints? 😉
Well, yes. But you will have to wait for the welcome keynote to hear about that. Oops, another thing I don’t have time to do [and have now forgotten about]. Back to playing with printing Dukes on my 3D printer! 🙂
Is there anything else you’d like to discuss?
I definitely don’t want to talk about other stuff I am helping out with like the new Embedded Device Showcase, Keynote Demos, or OTN Lab [where the 3D printer will live for the week], because that would further reinforce how badly behind I am on prep. It is a good thing that I will forget about this interview right afterwards.
Thanks for taking time out of your day to answer these questions! All the best for your JavaOne talks!
by Jonathan Giles | Aug 27, 2014 | Interviews
Today I have an interview with Mikael Grev. For those new to this series, here are the people who have been interviewed so far:
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
Hello Jonathan!
I have been in the Java ecosystem since Swing was a newborn. I work with many different things, some of which include creating Android apps (one Google Now competitor soon to be released), conceptual design for fighter aircraft systems, client application development/architecture and creating components/widgets in Swing and now JavaFX. Much API, UI/UX design and performance work, less web crap.
I’m a geek from very young age, I started programming my C-64 when I was ten (according to mom). Then I had a slight detour into piloting fighter jets for 17 years until I two years ago went back to being a full time computer geek and API snob. I collect pixels and have many of them in use and I set an alarm to go to bed in the evening.
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
It’s my fifth time being at JavaOne. I also presented in 2008 where I got a Rock Star award, of which I am very proud. And to this day, to my knowledge, I am the only fighter pilot in the known universe who also have been awarded JavaOne Rock Star! 😉
What are you going to talk about at JavaOne?
The session name “Create JavaFX Layouts Like a Boss” pretty much gives it away. I will focus on MigLayout as the tool, which I and Tom Eugelink has now readied for JavaFX 8. There will be a lot of general advice on how to make scalable and beautiful layouts. The intention is to raise the general – not-so-interested-about-visuals- developer well above ugly layouts without additional work. It will be fast-paced so don’t come there without ++coffee in your veins.
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints?
I hope I will. Given the move towards simpler – and in that somewhat harder to figure out – GUI:s, it is recommended that one use subtle animations to convey intent. Animation is a great way to help the end user on the path to understanding the flow of your app. Unfortunately it’s not that easy to do UX-centric animations manually, even when the animation itself – the moving/fading part – is managed by the framework, like in JavaFX. My goal is to enable good looking animated transitions between layout changes just by adding the keyword “animate” to MigLayout. In >= 60fps. If I can’t make it ready in time I will pretend to faint 42 minutes into the presentation.
Is there anything else you’d like to discuss?
My session might be funny. So come by if you like that kind of thing. If you don’t like funny, come by anyway and not laugh.
Thanks for taking time out of your day to answer these questions! All the best for your JavaOne talks!
Thank you Jonathan!
by Jonathan Giles | Aug 24, 2014 | Interviews
A while back I sent out an email to a few members of the JavaFX community, asking them if they would mind answering a few questions regarding their upcoming JavaOne talks. My goal was to have the interviews be short and to the point – just enough to whet your appetite to attend the sessions at JavaOne. It is my intention to publish these interviews over the next few weeks as we build up to JavaOne. Today is the first interview, with Eugene Ryzhikov. Enjoy! 🙂
For those new to this series, here are the people who have been interviewed so far:
Hi there. Thanks for taking the time to do this quick interview. Can you please introduce yourself?
My name is Eugene Ryzhikov. I’m a software architect at NextEra Energy in sunny Florida.
I’ve been involved with software development for at least 25 years now and still enjoying it! I work with a lot of programming languages but most of my time is spent doing Java and Scala. In the last 1.5 years I’ve been involved in ControlsFX project with Jonathan Giles.
Is this your first time presenting at JavaOne, or are you a JavaOne veteran?
I’ve attended JavaOne may times, but never presented. Java One 2014 will be special – I will see the conference from the (unusual for me) speaker point of view.
What are you going to talk about at JavaOne?
Together with Jonathan we are going to talk about the ControlsFX library. We’ll examine many features, both old and new, show how to use it in your applications and provide some insights into the future plans.
Do you have any big announcements or releases planned leading up to (or at) JavaOne? Can you give any hints? 😉
May be.. I’d rather save those for our talk 🙂
Is there anything else you’d like to discuss?
I’ve been involved in open source projects for many years now, but I’m still amazed at what happens when many people come together to achieve some kind of goal. This is what is happening in ControlsFX now. We have approximately 55 committers, people who are passionate about JavaFX controls, and want to make a difference. They are an unstoppable driving force behind the library now, to the point that sometimes it is difficult to keep up with all the progress 🙂 This is amazing to watch and be part of.
Thanks Eugene – see you at JavaOne!
by Jonathan Giles | Aug 24, 2014 | Links
Another week of links. Enjoy! 🙂
- I rolled out yet another Scenic View 8.0.0 developer preview build to get more feedback. This build included subscene support, hugely improved linux support, and some support for running Scenic View as an agent again (although I’m told it isn’t perfect yet). There will probably be another Scenic View developer preview build again this week as I work towards a final release (most probably this side of JavaOne).
- Matthias Meidinger has put up a website for AeroFX, his JavaFX stylesheet that attempts to bring the Windows 7 style to JavaFX. It’s looking excellent so far – you can see screenshots on the github page.
- Dirk Lemmermann put up two more tips this week. Tip #13 is to study the Modena CSS file, and tip #14 is about StackPane children, or as he puts it, ‘hidden but not gone’. I should note that in this case, Gilberto has some excellent advice – use the managed property on the children node that you do not want to include in the layout. This is by far the most optimal approach, rather than adding / removing children from the scenegraph.
- Nick Sabey has posted about ‘NASA Conjunction Assessment with JavaFX and the NetBeans Platform‘.
- Jens Deters has posted a ‘poor mans input constraints‘ implementation. I’m also very happy to note that his main complaint – a lack of a ‘JFormattedText’ control in JavaFX will be resolved in JavaFX 8u40, as already the TextField control has been improved to support formatted text input (see RT-14000).
- The IDR Solutions blog has a post on how to mix TreeView nodes in JavaFX.
- Niels Gundermann has posted update 10 of his JavaFX 3D editor.
- William Antônio has posted part four of his series on JavaEE, JavaFX and RFID.
Catch you all next week!