I am glad the two session proposals I submitted for JavaOne are both accepted. I will be talking about DataFX and about JavaFX on Android. In this blog post, I try to explain why I focus on exactly these two topics.
There are a number of tendencies in the IT industry that we can't ignore.
Mobile is overtaking the desktop
As shown in the article at http://money.cnn.com/2014/02/28/technology/mobile/mobile-apps-internet, people today spend more time using devices than using a desktop. Desktops and laptops still hold a strong part of the market, but the mobile devices (mainly smartphones and laptops) are simply more relevant today.
Apps haven overtaken browsers
The same article shows that in the case of mobile, the use of applications outnumbers the use of web browsers.
If we combine both trends, we can conclude that the market of mobile applications is a very interesting one. That doesn't mean web browsers and traditional web sites are vanishing very soon, but it clearly shows the hot spot is shifting from web pages to mobile applications.
The two major platforms for mobile devices, Apple's iOS and Google's Android, dwarf the other platforms. While you can write applications using Objective C for iOS, or the Android SDK for Android devices, I believe there are a number of advantages in writing your application in Java, using JavaFX as the User Interface platform.
In Session CON1804, Running JavaFX Applications on Android, we will discuss the current state of JavaFX on Android, provide an overview, show how to create a JavaFX Android application, and talk about future plans.
Another trend is the growing interest in (REST-based) "microservices" at the back-end. This is important for client applications as well. A typical business application makes a number of requests to a back-end, and expects responses as well. Mobile devices are getting more and more powerful, but still they cannot be compared with servers, clusters of servers, or a cloud environment. Many of the techniques used in server-side software simply won't work on (mobile) devices. It is extremely important, though, that client applications can easily interact with back-end applications. This is where the DataFX framework helps. The JavaFX Platform provides a great client platform, with a strong focus on the user interface and interactions. DataFX extends the JavaFX Platform by providing components that can be used to communicate with back-end systems, and by providing a simple API that allows developers to define the flow between different parts and views of the application. We will discuss DataFX in Session CON 3640, DataFX: From External Data to a UI Flow and Back .
I preferred to focus on 2 presentations in a single area, but that does not mean I have no interest in other areas. I am still watching the evolutions for Java EE 8 from as close as I can, since I realize this is a very important piece of the whole end-to-end puzzle. Looking at the presentations in the Java server-side track, I'm convinced this is going the right way.
I hope to see many developers at JavaOne. Those are interesting times, let's make the difference.
written on 04 Sep 2014 17:42.
"Apps have overtaken browsers". This makes a lot of sense to me. I think until recently, people wanted web browsers to be like an OS within an OS. So you could run anything from within your web browser, and the program you are running would have network access (because it is running within a web browser). Well the parent OS (Android, Windows etc.) is also network connected, so we don't have to have the program running in the web browser. So, I think ideally, the main OS itself should take on the functionality of a web browser (as well as keeping the other things it already does). So your main OS would be capable of letting you browse web pages as well as letting you run apps that require a network.