JavaSi'17

*less architectures

It is 2017 and the Serverless compute revolution is a little over two years old. Serverless is a relatively new concept in software architecture, but is one that is very likely to have an impact as large as other cloud computing innovations. Through technology advances, tooling improvements and shared learning in Serverless application architecture, many engineering teams will have the building blocks they need to accelerate, and even transform, how they do product development.

Key benefits of attending this presentation is to give you ideas what Serverless is and what it isn't, why it is important and some already proven examples of using Serverless architectures.

Finally, companies that adopt Serverless, and adapt their culture to support it, are the ones that will lead us into the future.

A Quick and Dirty guide to Kubernetes

A hands-on presentation showing how a Java developer can quickly start using Kubernetes as a platform for their apps. During the presentation we’ll deploy a fully functional microservices Java application to Kubernetes from scratch and explain the main Kubernetes concepts as we go. We’ll also share some best practices and implementation details being used for Outfit7 apps.

Aleksandar is accomplished individual with a strong background in Java (12+ years in IT business). He believes in the power of the Internet, have a desire to learn more and to also be involved in its future development. He is also goal oriented, analytical and sharp individual with a lot of energy and also spread that inspiration among his co-workers. Comming from city of Novi Sad, one of the bigest IT centers in Serbia, Aleksandar has been working in various environments. His professional career starts as desktop application developer using Delphi IDE. In 2007 he joined international company Levi9 as Java Web developer. Last three years he was working on a position as a Software Architect. As from September 2017 Aleksandar started own consultancy company Nova IT. In private life husband, father of 2: boy and little girl, likes to play table tennis.

Alen Kosanović is a software developer at SV Group, and has been involved with Java and Java technologies for the last 4 years - mostly Spring, VertX, Apache Spark etc. Alen considers himself a clean code freak, very passionate about writing code that uses best practices, is easy to test, read, use and thus maintain.

Anticipating the fallacies of distributed computing with the Netflix OSS

In their eagerness to adopt the microservice architecture a lot of companies forgot that moving to this model of distributed computing comes with dangerous pitfalls. Networks become congested. Services are added, moved and scaled as traffic increases or failure occurs. Finally, we need to connect our front-ends to this ever moving group of services.The Netflix Open Source Software Center is a collection of Open-Source tools and libraries developed by Netflix to help them build the system they need to bring video stream to millions of users worldwide . In this presentation we will have a look at some of these libraries and discover how they solve problems that will occur when splitting your system into hundreds of microservices. Even if you do not adopt microservices, the OSS-tools discussed in this session can help you to make your software more resilient than it is today.

Building an IoT solution with EnMasse

Interested in messaging and IoT? Kubernetes and OpenShift? In this workshop, we will dive into EnMasse, an open source Messaging-as-a-Service platform, built on top of Kubernetes and OpenShift. You will deploy EnMasse, and build an end-2-end IoT solution with edge devices, messaging, analytics and control.

You will learn basic Kubernetes and OpenShift concepts as we go, and learn how you can use EnMasse to implement different messaging patterns in your application.

David Delabassée is a Software Evangelist working for Oracle; his primary focus is Java on the Server-Side, i.e. Java Enterprise Edition. Prior to Oracle, David spent a decade at Sun Microsystems focusing on Java end-to-end. In his various roles, David has been involved in numerous Java projects since the early days of this technology. David lives in Belgium. In his spare time, he tinkers with technologies such as Home Automation, electronics, pinballs, etc. But more importantly, he enjoys playing video games with his daughter

Drools in satellite industry

How do you allow the user to determine business logic rules if you don't know in advance what kind of an environment the system will be running in?

We at Amphinicy Technologies have developed Monica, a monitor and control system for instruments in satellite ground stations which provides, among other things, the possibility to setting rules
using BRMS (Business Rules Management System) Drools. For the demo, a LEGO antenna will be utilised as an example of an instrument managed by Monica.

In this lecture we will demonstrate the application and challenges of Drools that we need to overcome so we can use them in complex systems like Monica.

From Angular to Oracle JET

Oracle JET (oraclejet.org) is a new toolkit of JavaScript solutions that has been open sourced by Oracle. It used throughout Oracle as the basis of applications that interact with the Cloud. From a single JavaScript codebase, web apps and mobile apps can be generated via Cordova. It is Oracle’s new strategic JavaScript platform and increasing numbers of Oracle developers are making use of it, as well as enterprises around the world, such as Tesco.At the same time, other JavaScript solutions exist. AngularJS is probably the most well known frontend framework in the JavaScript ecosystem. The basic AngularJS terminology is established and a lot of experience has been built up around it throughout the JavaScript world.In this session, the two approaches will be compared and you will walk away knowing which choice is best for you!

I this session we will discuss the similarities/differences between Angular and Oracle JET (oraclejet.org) via a real code example on GitHub.

From Zero to Open Source Hero: Contributing to Spring projects

With any kind of activity, starting out is often the hardest part, and contributing to open-source project is no exception to this. Join this talk by a regular contributor to Spring projects to find out how to kick-start your contributions!

This session is a compilation of experiences and practices gained during author's journey as a contributor to open-source community and Spring projects in particular, a journey the saw him become a committer to Spring Session less than 14 months after authoring his first pull request. The session will present a deep dive into workflow behind a typical pull request to Spring project, stressing the importance of topics such as managing forks, updating pull requests, writing tests, code consistency, and offer many tips & tricks that should help you make your contributions a successful experience.

Geertjan is an open source enthusiast, working for Oracle, and before that for Sun Microsystems. He promotes enterprise technologies, in particular in connection with Java and JavaScript. He is a technical product manager for Oracle JET and NetBeans IDE.

Getting test data for your Java solution: as hard-core and as fun as they come!

As years pass, Java maintains its status as the default technology ecosystem in the space industry. Every so often in between designing REST interfaces, JPA mappings and scalable multi-threaded architectures, Amphinicy engineers get a toy to play with a task that doubles as "serious work". This time the trigger was testing: what does one do for testing when one builds satellite communications solutions for ground stations? If you have a few hundred thousand Euro and a year or two to spare to launch your own satellite, go for it! If not, "eavesdropping" on existing satellites is the best runner-up choice. As of late 2016., Amphinicy operates its own little improvised ground station, right in the middle of down-town Zagreb! What kind of systems we build, what we've learned along the way and all the ways a ground station built with pocket change electronics returned lavish dividends on the time invested in its set-up is for us to know and for you to find out - at JavaSi'17! ;)

Heiko is a Principal Software Engineer for Red Hat with two decades years of experience in the industry. He did spend much of his career working on large scale open source software solutions, in particular Java middleware components (J2EE) and tools and frameworks for enterprise systems integration (Web Services, BPEL, SOA, BPM). He is currently focused on developing Wildfly Swarm, contributing to the Microprofile community and help to improve the experience running Java middleware on Openshift / Kubernetes.

James Mernin is Chief Technology Officer at Red Hat Mobile, the mobile division of the world's leading open source software company, Red Hat. With over 25 years industry experience and a background in software engineering and IT, as well as mobile, cloud and storage technologies, James is responsible for the technical direction of Red Hat's mobile product and community portfolio, both from an engineering and operations perspective.

JavaScript Confessions of a Java Developer

Traditionally, Java developers have a strong dislike for JavaScript. Justifiably so, of course. JavaScript lacks a range of features that we all know and love in Java. However, JavaScript has been gradually taking over the frontend landscape. Since JavaScript is the native language of the browser and the browser is available on all devices, the relevance of JavaScript is no longer in question. The only question is how to choose the right tools for the job, since the JavaScript ecosystem is filled with a wide range of technologies, libraries, and tools.

In this session, you will learn how the speaker, a Java developer, has bit by bit, over time, come to like JavaScript. Not so much the language, but the ecosystem and the range of possibilities available. By the end of the session, you will have a thorough perspective on everything the JavaScript ecosystem can do for you, as a Java developer, and how you can make sense of the instability/vibrancy of the JavaScript ecosystem, too.

JDK9 has arrived

After much delay and lots of conflicts around a new modular system – Jigsaw, Java 9 has finally officially arrived.

In this session, we'll skim the surface of the new module system, explore some of the additions to APIs, and JDK itself - some long-awaited ones. Maybe most interesting, we'll look at how to migrate current applications, and what issues we can expect to encounter while migrating our projects to Java 9.

As we'll see not all code will run out-of-the-box, so expect heavy use of runtime and compiler parameters to provide backwards compatibility, and to have to upgrade your project's dependency libraries. Some code may need heavy modifications or differences may require us to maintain separate branches.

Java 9 brings a lot to the table - it's up to us to use it wisely to get the most out of it.

KEYNOTE: Mobilising Your Enterprise: A strategy for modern app dev in the enterprise, with a mobile twist

Based on real-world experiences from the Engineering team behind the Red Hat Mobile Application Platform (RHMAP), this talk will offer a unique insight into the factors to be considered when devising, developing and delivering a mobile strategy for your organisation.

Paolo is a Senior Software Engineer working for Red Hat on the messaging and IoT team. In Red Hat, he is focusing on integration between AMQP based projects and something different like Apache Kafka and Apache Spark. He has also been working on the EnMasse messaging-as-a-service project regarding the integration with MQTT. In the IoT space he takes part to the definition of the API for the Eclipse Hono project being one of the leads for it as well and he is Eclipse committer for Paho which provides MQTT client implementations in different languages. He is also owner and maintainer for the main IoT related components in the Eclipse Vert.x stack, another project having Paolo as committer. Finally, he is Microsoft MVP on Azure & IoT. Blogger and speaker, messaging and embedded devices make his world.

Geek in all facets of the word, including but not limited to boardgames, comic books and programming. Developer without borders, both geographically and technically. Active as a consultant, usually for some of the biggest financial institutions in both Belgium and The Netherlands. Next to that I am trainer/teacher who loves to share not only knowledge but also passion for our craft.

Tomaž is software engineer at Red Hat on JBoss EAP team and open source enthusiast.He spends most of his time on WildFly core management infrastructure as well as various integration subsystems. Lately he was leading team that was working close with Oracle's OpenJDK development team to make sure WildFly works great on JDK9.

Tomislav Nakić-Alfirević received his BSc degree in 2003 and his MSc degree in 2011 in applied computer science at FER, University of Zagreb. He has been developing custom information systems and systematically improving the software production process since 2003, first in Netgen and the last 9 years at Amphinicy Technologies, where he works on ground solutions for satellite communication systems.

Using Microprofile APIs to build cloud native applications

The Microprofile community develops API’s and specifications that help to build cloud native applications. In this session we take the perspective of a developer engaged with building application for a larger, service oriented architecture running in the cloud. We explore common questions that will come up and examine related concepts in such a problem domain. The Microprofile API’s that will be part of the next 1.2 release will be used to illustrate how these challenges can be overcome and what the impact on application development will be. Examples from the area of security, configuration, resilience and monitoring are used to give this session a practical stance.

Software development engineer at Kapsch CarrierCom where he has been building enterprise solutions in the telecom industry since 2011. Has been involved with Java and software development for nearly 10 years. Open-source software enthusiast and an active contributor in the open-source community with a strong focus on Spring projects. Spring Session committer since 2016.

Who’s afraid of design patterns? Not JDK!

Design patterns, as we know them today, have been in play over more than 20 years. Since then, we’ve been learning design patterns through class diagrams of objects like Shape, Circle, Rectangle and other objects that fail to link the gap between an illustration and practical use. In this session, I’ll try to illustrate common design patterns through examples that should be familiar to everyone - the Java JDK.

WORKSHOP: Building microservice applications on Openshift using Java technologies

Do you like Java EE, Spring or Vert.x? No matter what your preferred choice of Java technology, we take you on a ride to the cloud. In this workshop you put your hands on Openshift/Kubernetes to deploy and run applications build with your preferred framework. We will develop restful endpoints, database access, secure services and much more. Openshift/Kubernetes make this a breeze. You’ll learn the basic cloud platform concepts along the way and will explore the relevant features of your preferred stack to behave well in cloud environments.

Bring your own laptop, a curious mind and some coffee and we will have a good time.

Java developer with more than 3 years of professional experience. Worked on multiple projects for clients in the satellite industry. Currently working as an developer on Monica - monitor and control system, developed by Amphinicy Technologies. Always interested in learning new technologies and methodologies and for IT world in general. Big (e-)sports fan.