2015 Java One Conference - San Francisco
Netbeans Day and Keynote Speech: The launch!!!
#OraclePaintedSanFranciscoRed
Wow! That was my feeling when walking the streets of San Francisco on Sunday 25 October. Every corner, every billboard every second bus passing by was decorated with Oracle Java One or OpenWorld branding. The city was red. Every second person you pass by had an Oracle lanyard around their neck, indicating that they are delicates going to the conference. The mood was excellent; Java One took over the city. I love Java more and more.
#FirstSession-Java8:JVM, Language and Platform
The first session presented the Java 8 enhancements, which were summarised as follows:
- Lambdas - this is notably the biggest language enhancement; with lambdas we treat functionality as a method argument or code as data
- Functional interfaces - solves the same problem that anonymous inner classes addressed but less-verbose
- Default methods - similar to abstract classes; useful for API revolution
- Streams - for efficient collection operations
- New Date API - the existing classes (such as java.util.Date and SimpleDateFormatter) are not thread-safe, leading to potential concurrency issues for users—not something the average developer would expect to deal with when writing date-handling code. Some of the date and time classes also exhibit quite poor API design. For example, years in java.util.Date start at 1900, months start at 1, and days start at 0—not very intuitive. The new API is driven by three core ideas: Immutable-value classes: One of the serious weaknesses of the existing formatters in Java is that they aren’t thread-safe. This puts the burden on developers to use them in a thread-safe manner and to think about concurrency problems in their day-to-day development of date-handling code. The new API avoids this issue by ensuring that all its core classes are immutable and represent well-defined values.Domain-driven design. The new API models its domain very precisely with classes that represent different use cases for Date and Time closely. This differs from previous Java libraries that were quite poor in that regard. For example, java.util.Date represents an instant on the timeline—a wrapper around the number of milli-seconds since the UNIX epoch—but if you call toString(), the result suggests that it has a time zone, causing confusion among developers.Separation of chronologies. The new API allows people to work with different calendaring systems in order to support the needs of users in some areas of the world, such as Japan or Thailand, that don’t necessarily follow ISO-8601. It does so without imposing additional burden on the majority of developers, who need to work only with the standard chronology.

#SecondSession-WebSocket Perspectives: Clouds, Streaming, Microservices, and the Web of Things
WebSocket is effectively a persistent and fat pipe that is compatible with a standard web infrastructure—a "TCP for the web". If you think of WebSocket in this light, there are other more hugely interesting applications of WebSocket than simply having Java EE send data to a browser. The session was presented by Franco Drego of Kaazing Corporation; Franco presented a different perspective for WebSocket application and stressed that we should look beyond the HTTP because not all problems can be solved by HTTP. One can have solution where the WebSocket is backed by other protocols or APIs such as JMS, FTP, MQTT, XMPP, AMQP, etc
He showcased some demos where WebSocket was used. The key message to take home: "The world is not synchronous, HTTP isn't for everything".
He showcased some demos where WebSocket was used. The key message to take home: "The world is not synchronous, HTTP isn't for everything".
One of the highlight of the day was meeting James Gosling and some Netbeans commmunity members. The session was lead by Netbeans product manager Geertjan Wielenga, a South African raised, his parents still lives in Pietermaritzburg. Geertjan introduced new features that the latest Netbeans has on offer: Integrated Javascript Tools and Integrated node.js Tools.
The session showcased some Netbeans community usergroups from around the world including one from Burkina Faso and some the coolest work they do using Netbeans as an IDE. University of Belgrade uses Netbeans to develop an open source project, a neural network framework, deep learning and computer vision; the project is called Neuroph. Geertjan appealed to the attendees to host Netbeans community user groups in their respective countries; he also has an ambitious aim of hosting the community user group in Antarctica so that it can be recorded that the user groups has been hosted in all continents of the world. From this Phillip Kruger and I has committed to forming a Netbeans community user group for South Africa.
The most notable user of Netbeans, the father of Java, non other than James Gosling. James and his company Liquid Robotics uses Netbeans to develop some robotics applications. James showcased swimming robots and he tracked them at real-time in the conferences; the robots were scattered all over the worlds oceans: Pacific, Atlantic, we even spotted CSIR robots near Cape Town. Some of the robots are used to follow the great white sharks, amongst other things. James is adored by many developers world-wide, at the end of the session he was crowded, everyone needed a picture with him or an autograph. I glad to announce that I too managed to get an autograph from him; over 600 developers attended this session.
The session showcased some Netbeans community usergroups from around the world including one from Burkina Faso and some the coolest work they do using Netbeans as an IDE. University of Belgrade uses Netbeans to develop an open source project, a neural network framework, deep learning and computer vision; the project is called Neuroph. Geertjan appealed to the attendees to host Netbeans community user groups in their respective countries; he also has an ambitious aim of hosting the community user group in Antarctica so that it can be recorded that the user groups has been hosted in all continents of the world. From this Phillip Kruger and I has committed to forming a Netbeans community user group for South Africa.
The most notable user of Netbeans, the father of Java, non other than James Gosling. James and his company Liquid Robotics uses Netbeans to develop some robotics applications. James showcased swimming robots and he tracked them at real-time in the conferences; the robots were scattered all over the worlds oceans: Pacific, Atlantic, we even spotted CSIR robots near Cape Town. Some of the robots are used to follow the great white sharks, amongst other things. James is adored by many developers world-wide, at the end of the session he was crowded, everyone needed a picture with him or an autograph. I glad to announce that I too managed to get an autograph from him; over 600 developers attended this session.
Finally the time had come were we got to meet Adam Bien. The mission from colleagues was to secure a picture with Adam Bien. You may wonder why. We watch Adam Bien's Java EE videos on weekly basis and therefore we appreciate what he does and the skills he transfers to us a team. Mission accomplished, Phillip and I got to take snap each with him after I have approached him and explained our mission.
The session was based on the use of Netbeans and some cloud facilities, put simply, Developer Platform As A Service (DPaaS). One of the Netbeans community member showcased how a developer's environment (IDE, App server, database, code repo, etc) can be hosted on the cloud. He used Oracle's cloud solution, however, the same can be done with Jelastic and presumably with IBM Bluemix. Another Netbeans community member showed some Netbeans Maven features: graph and the effective pom functionalities. With graph a developer can have a visual representation of the pom dependencies, and effective pom is useful when dealing application with several modules. Adam Bien wrapped the session by showcasing some code coverage and documentation tools. Code coverage is a measure used to describe the degree to which the source code of a program is tested by a particular test suite. The code coverage tool by Adam is jacoco, it can be added to the Maven project as a dependency; jacoco generates reports. Adam briefly showed visualee, used to visualise java projects and their dependencies. It addresses questions like:
The session was based on the use of Netbeans and some cloud facilities, put simply, Developer Platform As A Service (DPaaS). One of the Netbeans community member showcased how a developer's environment (IDE, App server, database, code repo, etc) can be hosted on the cloud. He used Oracle's cloud solution, however, the same can be done with Jelastic and presumably with IBM Bluemix. Another Netbeans community member showed some Netbeans Maven features: graph and the effective pom functionalities. With graph a developer can have a visual representation of the pom dependencies, and effective pom is useful when dealing application with several modules. Adam Bien wrapped the session by showcasing some code coverage and documentation tools. Code coverage is a measure used to describe the degree to which the source code of a program is tested by a particular test suite. The code coverage tool by Adam is jacoco, it can be added to the Maven project as a dependency; jacoco generates reports. Adam briefly showed visualee, used to visualise java projects and their dependencies. It addresses questions like:
- How could I get an overview of a Java EE project?
- Who fires events and who is observing it?
- How could I visualize JPA-Relations?
- Who is producing classes and where are they injected?
- Which resources are injected?
Here is Adam Bien's YouTube video on visualee, click here.
Finally after lunch everyone gathered at Mascone North, Hall D; the massive hall jam-packed. Georges Saab, vice president of the development and Mark Reinhold, chief architect of the Java Platform Group highlighted the most memorable Java events of the last 20 years. Michael Greene, vice president and general manager of Systems Technology and Optimization in the Software and Services Group, did the Intel's keynote presenting "Accelerating Java for a Connected World". The Java Language Architect, Brian Goetz, shared to us the future of Java by highlighting the 2 projects they are busy: Project Valhalla (Specialized Generics and Value Types) and Project Panama (Foreign Function Interface, & Arrays 2.0). Some success on the Java EE 7 vendor implementation were share with us, heads from IBM Websphere, Oracle Weblogic and Redhat Jboss, shared their stories. Scott McNealy, the co-founder of Sun Microsystems presented us the "Top 12 Java Developer Nightmares of 2015", hilarious! One of the nightmares: "Entry-level developers are now in the top income bracket", "Your peer programming part starts at 7am with bad breath". The speeches concluded with the Java 20 years celebration, the cake was broad on the stage.
No comments:
Post a Comment