- Andrew Kos
- Bill Burlein
- Bryan Williams
- Christian Vozar
- Jeff Brown
- John Kraus
- Joseph Mak
- Mark Daugherty
- Matt Van Bergen
- Melissa Geoffrion
- Michael Kang
- Michael Chan
- Michael Hodgdon
- Mike Motherway
- Molly McDaniel
- Nadia Maciulis
- Pat McLoughlin
- Paul Michelotti
- Puru Hemnani
- Rohit Srinath
- Ryan Lunka
- Tom Kelly
JavaFX Project Postmortem: In Which I’m Interviewed by a Five Year Old
Sunday, June 14, 2009
Developer magazines sometimes are able to interview key developers of high profile projects after they’ve been shipped (with questions such as “what went right?”, what went wrong?”, etc.). Since I officially kicked my first non-trivial JavaFX application, Music Explorer FX, out of the door last week, I figured that I would grant an interview of my own. Since my five year old daughter, Meredith, had refusal rights from her last interview (and also since she was the only one interested in talking to me), I happily granted her the honor.
Meredith: Thank you for taking the time to talk to me, daddy.
Me: Thank you for staying up past your bedtime to do this interview.
Meredith: Let’s get started, shall we? Tell me about the application you just finished.
Me: Music Explorer FX is a tool for music discovery, written in JavaFX. You can get more information at www.musicexplorerfx.com
Meredith: Yes, yes. Let’s keep the sale pitch to a minimum, please. So why did you choose JavaFX for this project?
Me: Well, I was looking to do a project in JavaFX, so in some ways it’s a backwards answer to the question–
Meredith: Well, you wrote the questions, I don’t even know what half of these words are…
Me: Yes, well, so the reason I was looking to do a project in JavaFX is because I’m primarily a Java developer, and while JavaFX syntax has no similarity to Java’s, JavaFX compiles down to regular Java class files that run on the JVM, maximizing interoperability with Java code. This means that I was able to use familiar core Java API classes, such as Map, and List, and even dip down into Java code as needed, for example, if I needed to work with threading. It also meant that I could freely use any existing 3rd party Java libraries, such as Twitter4j for the Tweet support.
Meredith: (laughs) Tweet! Like a bird! Tweet, tweet, tweet! Look at me! I’m a bird!
Me: Yes, yes, try to stay focused, sweetie.
Meredith: So you didn’t find the learning the language syntax much of a problem?
Me: No, not at all, while there are some oddities to the language, for example, capital “Void”, instead of regular “void”, overall its declarative syntax was very straightforward. JavaFX has been described as a DSL for User Interfaces and Animation, and I think that’s a good description for it. It actually shares a lot in common with Groovy Builders — the subject of our last interview.
Meredith: I don’t remember that.
Me: You were four at the time — your memories won’t start fully forming for a while yet.
Meredith: If you say so. So, JavaFX is a Rich Internet Application technology. So is it in my Dora the Explorer game on the computer?
Me: That’s probably Flash based — a JavaFX competitor.
Meredith: Oh, ok. So what are some JavaFX games I would have played? Sesame Street? Elmo’s World? The Backyardigans? Polly Pockets?
Me: Well, I mean, JavaFX is still very new. So “competitor” might be a little generous — and besides, I don’t know that JavaFX is targeting the casual game space per se.
Meredith: Uh huh. Let’s move on. Earlier today you gave Holly more ice cream in her cone than you gave me. You said that you’d make it up to me next time. When will that be exactly?
Me: Hey! I told you, I didn’t want to take any questions on Family Dessert Policy!
Meredith: Daddy! It’s not fair! You always give her more than me!
Me: Ugh. Fine. Do you want some ice cream now?
Meredith: Now? It’s two hours past my bedtime. You’re keeping me up pretty late as it is. If mommy finds out–
Me: Fine, fine. How about for breakfast tomorrow then?
Meredith: Deal. Well, I think that’s all the time we have.
Me: Wait, we’re not even halfway through the questions. Ask me how it felt to see my application on stage at the JavaOne keynote–
Meredith: Mommy!! Daddy’s keeping me up!
Me: Ok! Ok! Alright. Geez. We’re done. Ok?
- Invisible requirements within Business requirements
- Building a better Options Predicate
- Extensionless URLs with Adobe Experience Manager
- The Life of a Tester in Adobe CQ World!
- Limitations of the CQ Parsys Model and the Implementation of a Nested Paragraph System
- Using Apache FOP to generate a PDF document based on a form submission data
- Configuring SAML in AEM 5.6
- Why You Should Get the WCM Experts Involved Early