I started day two with brushing up my knowledge about NetBeans and how to work with it. I attended a tutorial session about a JPA modeling tool (jpamodeler.github.io) by Geertjan Wielenga and Gaurav Gupta.
This tool, written by Gaurav Gupta, allows seamless working with entities to create data models and the other way around. It’s a graphical tool to create complex entity relationship models and to generates code like REST API and Angular JS 1 from the model. Nicely done plugin.
Lets hope we see more plugins like this one, now that NetBeans is donated to the Apache Foundation.
Next session again on NetBeans and this time on ‘Ten Essential Building Blocks of JavaScript in the Enterprise’ by Geertjan Wielenga again. The session talked about building enterprise applications with modern JavaScript front end. This trend is still picking up momentum in the industries, the room was packed.
Building blocks
You may ask ‘JavaScript in the enterprise?’ and this was i thought first too, but Geertjan showed why this can be done and how. He showed how to translate concepts such as ‘modularity’ and ‘loose coupling’ to JavaScript applications.
The are however things to think about like that you don’t put everything into the browser! There are applications which don’t need to be in the browser as they are very specific to only a couple of people (like air traffic control software). You can supplement such apps with new browser based parts like notifications or reports.
New features should be based on HTML, CSS and JavaScript. Avoid external plugins or flash. CSS isn’t all about styling. CSS is modular today (about 50 modules). Some of the feature you use CSS for can be accomplished by using JavaScript in a better way. A sample is that CSS is used to show/hide elements from the DOM to get responsive designs (mediaqueries). Using JavaScript you load/unload libraries from the DOM reducing the size of the DOM. JavaScript allows to get better result then CSS mediaqueries.
JavaScript Librarires
One other thing to do is to differentiate between frameworks and libraries (see picture) and what they are doing. The question to answer is if to use frameworks or libraries to build your application. Using a Framework lock you in on the vendor, libraries allows you to switch them out if you find a better solution. On the other side you have to put it together yourself, or use e.g. OracleJET which puts some well known libraries together to a working framework but allow to switch the libraries against others.
A more debatable argument Geertjan made was about ‘Life in a volatile Ecosystem’:
which points out, that you just code the application once, so maintainability isn’t the biggest concern. You rewrite the app anyway in short time. a so
After a short break to change the venue I was back into the cloud again. Greg Stachnick talked about ‘A Cloud Platform for Developers: A Tour of Oracle Developer Cloud Service’, a more executive overview with a couple of demos. This is not new to me so I spare the details. The new info were the things to come in future versions like hte Cloud IDE which allows you to change code directly in the Developers Cloud.
Cloud IDE
Also new will be the support of Docker Pipeline for continuous integration in a DevOps way:
Docker Pipeline
The downside is that Greg clod not disclose exact date. We are in the range of hte ‘next year’ 😦
Next session, again a change of the locate included, was Shay Sheltzer on Application Builder Cloud Service:
Application Cloud Builder Service
In short the Application Builder Cloud Service allows hte citizen developer to create applications by abstracting most of hte complexity away. Applications can be build from templates, you can add your one templates to e.g. implement some corporate identity. The development is done by using ready to use components (in hte end OracleJET is used for the UI of hte application) from the component pallet. You only have to drag the components to their place on the canvas defined in hte template and you are done.
The data model is build from the entries you do while putting the application together. Once you deploy the application the entries to the field are stored in a DB. There is not administration of hte db required, it’s all done in hte background. The downside right now is that you only can import/export data to the app using csv files. Later version can use REST and the Integration Cloud Service to get to corporate data.
To close the day I went over to the Oracle Applications User Experience Cloud Exchange an event inside OOW16 showing then next generation UX. There were some very interesting approaches on how UX can and will (?) work in the future. Some ideas are already implemented in the next versions of some cloud applications.
Smart Office, IoT and other more experimental interacting methods are very interesting for future UX. I had a great time there!