You are viewing content from a past/completed QCon

Presentation: Otherworldly Java: Gateway to the Moon and Beyond

Track: Evolving Java & the JVM

Location: St James, 4th flr.

Duration: 10:35am - 11:25am

Day of week: Monday

Share this on:

This presentation is now available to view on

Watch video with transcript

What You’ll Learn

  • Hear about astrodynamics and the complexity of trajectory computation.
  • Find out about a JavaFX visualization tool that can help with establishing the right trajectory in space.
  • Learn how the tool was developed.


The international space community is entering a new age of space exploration beyond Earth orbit. Human spaceflight plans a return to the Moon while robotic flights explore the outer planets and their moons in a search for signs of life. Complicated mission scenarios involve significant computational challenges and require innovative software solutions to limit a nearly infinite design space.

We’ll discuss the unique approaches we’ve used to tackle this complex problem:

  • JavaFX and custom 3D visualizations integrated into the design process tapping into the user’s intuition: visualizations are an integral part of the design rather than an afterthought
  • Rapid parallel data search and filtration capabilities: by visually selecting datasets, a trajectory designer finds the needle in the haystack of potential spacecraft orbits
  • Partnership between an expert Java developer and a trajectory designer: when a developer understands the user and her domain, a tool emerges that is larger than the sum of its parts

We’ll feature the Duke’s Choice Award-winning Deep Space Trajectory Explorer, a JavaFX-based trajectory design and visualization software package that features a mix of custom 2D and 3D visualizations. The goal of this session is to demonstrate the art of the possible when using modern Java toolkits to build high quality, high performance applications for Science and Aerospace industries.


What does astrodynamics  have to do with Java?


When we’re trying to design spacecraft orbits under the influence of both a planet and a moon at the same time, we find ourselves with an enormous design space. We don't have analytical solutions anymore; we have a few equilibrium points, there are families of orbits around those equilibrium points, but beyond there’s a vast design space that you can't just boil down to an equation. How to manage this design space is a hard problem, and lots of folks in my community have solved this using grid searches and other numerical methods. We're geeks, and lots of folks focus on the numbers, with visualization maybe as an afterthought, as an extra at the end. But that's not my preference. There are a few of us who see the power of visualization itself as a design tool. We want to incorporate the visualization into the design process so that I can use my intuition and my knowledge and my understanding to find families of solutions and understand why the trajectories are behaving the way they are rather than just looking at numerical output, point solutions without context.


What are the main goals for your talk?


There are two points of focus that I'd like to share that are really exciting to me. One is that it’s possible to use JavaFX and Java for a desktop application. We've built an amazing beautiful tool that is incredibly interactive that we're using for spaceflight design. Granted that's a little bit of a niche market. There aren’t a whole lot of us in this field, but as a broader visualization and data management tool, JavaFX has so much potential, so I want to show some of the amazing things that we've managed to put together. And on the other side, it's been a really special project in that we've had a very effective collaboration between an absolute expert Java developer and an expert in astrodynamics.  Neither of us alone could have visualized this tool. It’s based on my PhD research, and Sean Phillips saw it at a presentation I did and knew he could take it to another level. Together we turned it into this piece of software that makes the process effortless.


Is that collaboration part of this talk or is it about JavaFX?


I'd like to focus on both, because the collaboration is most interesting in the context of what we've built.


What do you want them to walk away with?


I'd like to communicate some of the complexity of trajectory design, why it's hard and how Java has helped to solve this problem. Orbits are just circles, some might imagine. But in my field, orbits are a lot more interesting than circles; they can be really complex and quite beautiful. And I'd like to communicate some of that, and then some of the challenges that we've overcome using Java and how it's taken my problem and turned it into something beautiful.

Speaker: Diane Davis

Astrodynamicist and Principal Systems Engineer @NASA and USAF aerospace industry leader a.i. solutions

Dr. Diane Davis is an astrodynamicist and principal systems engineer with NASA and USAF aerospace industry leader a.i. solutions. She designs spacecraft orbits with the Gateway trajectory team at Johnson Space Center in Houston, TX, and previously navigated spacecraft to Mars and comets at the Jet Propulsion Laboratory. She is the lead researcher for the Deep Space Trajectory Explorer, a JavaFX-based design and visualization software for interplanetary orbit analysis.

Find Diane Davis at

Last Year's Tracks