Slides from JavaOne 2017 sessions

And yet another wonderful JavaOne conference has finished. Five days packed with incredible content and networking opportunities, for which yours truly along with my “partners in crime” Vicente Gonzalez and Julio Palma were a small part.

This post collects the links to the presentation materials for each of the three sessions that we delivered during JavaOne 2017, on an alternative site so they remain available in case the conference site stops allowing to download them. Hope you enjoyed them and find them valuable.

Advertisements

Build your own Application Performance Monitoring (APM) solution with ELK and JMX – part 2

This post is the second (and last) part in this short series about building an Application Performance Monitoring (APM) solution with open source tools.

In part 1, we were able to build a simple solution to collect log statements, business metrics and JVM performance metrics (Logstash, JMX), and to retrieve data out of the store where they are indexed (Elasticsearch).

In part 2, we will configure a rich dashboard to easily visualize the information stored in Elasticsearch.

We will start from what we completed in part 1: Pet Clinic application is ready and exposing logs through logging framework to a text file and publishing metrics out of the JVM through JMX. Logstash is parsing logs and filtering out interesting JVM metrics sending them to Elasticsearch, which is up and running and providing results to queries sent via browser using the REST API.

Continue reading “Build your own Application Performance Monitoring (APM) solution with ELK and JMX – part 2”

Build your own Application Performance Monitoring (APM) solution with ELK and JMX – part 1

Application Performance Monitoring is one key area to implement in projects to ensure proper and smooth operations from day 1. APM solutions provide development and operations team with near real-time insights on how the applications and services are performing in production, allowing for proactive tune of services, as well as for early detection of possible production issues.

There are many APM solutions in the market, with diverse range of capabilities, from the inner workings of the JVM (threads in use, memory pools, garbage collection and what not) to user experience in web and mobile applications.

APM solutions can also be expensive, which causes that many projects, small or short-termed, simply cannot afford one.

In this series of two blog posts we will show how to leverage FOSS tools to build an APM solution, which although more limited in capabilities, may be of use for small projects.

We will be leveraging ELK – Elasticsearch, Logstash, Kibana -, the Java Management Extension library (JMX) and the Spring Framework support for JMX to easily expose application data out of the JVM.

NOTE: The following guide is written on ELK stack 5.2.1. Other versions may need slight adjustments to commands and/or configuration.

Continue reading “Build your own Application Performance Monitoring (APM) solution with ELK and JMX – part 1”

Slides and video recording from Málaga JUG session on “Java and the Internet of Things”

The past day 17th of november I had the great honour to present a session in Málaga JUG about “Java and the Internet of Things”. (If interested in knowing more about the activities organised by the Málaga JUG follow us on Twitter: https://twitter.com/MalagaJUG – stay tuned to new events on Meetup: https://www.meetup.com/es-ES/MalagaJUG – and if you are also a Scala enthusiast, don’t hesitate to follow the sibling group Málaga Scala Developers here: https://www.meetup.com/es-ES/Malaga-Scala/.)

Besides introducing basic concepts about the IoT and the role of Java and the JVM in the architecture of IoT solutions, we showed some demos with practical examples that hopefully will inspire on you fabulous new projects.

600_456148706

Slides (mostly in Spanish) are available on SlideShare: https://www.slideshare.net/deors/la-jvm-y-el-internet-de-las-cosas-mlagajug-20161117

A video recording of the session can be watched online here: https://twitter.com/MalagaJUG/status/799323631868203008

I hope that you enjoyed the session and wish to meet you all in future Málaga JUG events.

Slides and video recording for my session on “Lightweight Java Architectures” from OpenSlava 2016 conference

With the fond memories from our participation in OpenSlava 2016 conference (Bratislava, Slovak Republic) still fresh in my mind, I wanted to share with you the slides and video recording for my session on “Lightweight Java Architectures”.

Besides that session, I also conducted a hands-on workshop on ADOP, The DevOps Platform (https://accenture.github.io/adop-docker-compose/) along with José María Gutiérrez, one of my teammates. Memorable time with the workshop participants. I wish we helped to spread the interest in ADOP and hopefully a few more ‘hackers’ willing to use it, improve it and extend it.

Our time in Bratislava was unforgettable. I am deeply grateful for having participated in such a great event, extremely well organized and hosted by some of the most talented people I’ve met (and have the great luck of working with them). You all rock!

Furthermore, I can only say thank you very, very much to all the people that voted this session as the best one of the conference. I feel honoured by your recognition and hope to meet you again soon.

These are the links:

Session abstract: http://www.openslava.sk/2016/#/sessions/6

Slides: http://www.slideshare.net/deors/openslava-2016-lightweight-java-architectures

Video recording: https://www.youtube.com/watch?v=IfQyOchT8oQ

openslava-2016-lightweight-java-architecture

Finally, I would like to encourage you all to watch the video recordings for the whole conference which are available, organised by conference track, in the OpenSlava YouTube channel here: https://www.youtube.com/channel/UCiHa442MD4GjCnthMEPT2dg/feed

Amazing panel of speakers and unparalleled selection of topics. Enjoy!

Slides from JavaOne 2016 sessions

This post is a short summary with links where Accenture’s JavaOne 2016 session slides can be found online, in a more stable place as compared with conference web site:

Reflections on JavaOne 2016

One more year and another JavaOne conference, the 20th, has closed its doors. This time, more than ever, what I’ve seen is a truly community success. Yes, Oracle presence is big but not overwhelming, giving plenty of space to others to showcase their platforms and tools, even when they are competing with those from Oracle.

The exhibition hall, to me the central hub of the conference, vibrated this year with a perfect mix of vendor exhibitors, dynamic demos, competitions and the community hub with diverse activities. In a few meters you could pass from a demo on the latest and greatest of cloud PaaS offerings to an eye-opening prototype of an intelligent clean energy power plant. Red Hat, IBM, Pivotal, Couchbase, Tomitribe, Payara, Eclipse, JetBrains, Vaadin, ZeroTurnaround, New Relic, Riverbed… just to name a few. What surprised me the most, and very positively, was the strong message from Microsoft: their commitment to Linux and Docker development, their cross-platform mobile development framework Xamarin, and the rock solid support for Java technologies on their Visual Studio Team Services offering.

j1-1  j1-2

Left: intelligent clean energy power plant – Right: Java EE roadmap

The conference started the Sunday with the keynote and a mix of feelings. A bland introduction by Oracle and Intel executives, followed by a very interesting (but completely off topic) talk by Dr. Anita Sengupta about NASA missions to Mars, and finally closed by a disappointing talk on Oracle plans for Java EE 8 and 9.

Disappointment comes from the fact that the content looked a bit improvised, quickly put together. Yes, it was consolidating some of the views that groups like Java EE Guardians and Microprofile.io have been sharing during the last few months, but it sounded like too late and too ethereal. Let’s do hope for the better, however, and expect that a useful and widely supported EE specification is the result of the long time waiting for it.

On Monday, our very own Julio Palma and Kevin Hooke took the stage to speak about the foundations of Java ME developments with Raspberry Pis. Great attendance, questions from the audience, and a live demo of a Simon game fully functional.

j1-3  j1-4

Left: Kevin and Julio – Right: Julio and Jorge

On Tuesday, I paired with Julio Palma to speak about Java-powered middleware in the context of industrial robotics. No matter the complexity and diversity kind of machines used in industrial environments, may they be mechanical arms or any other kind of robots, Java enables architectures capable of integrating hundreds to millions of data streams with the combination of Java ME, Java SE, Docker, MQTT and cloud platforms. And again a great audience, interactive questions and a live demo showcasing how information produced by these industrial machines can be gathered, aggregated, processed and distributed to the cloud where it can be further analysed.

On Wednesday we did two sessions. First, Vicente Gonzalez and yours truly spoke about automated testing of web applications with Selenium. It was a very good session, with plenty of code examples and live demos. Standing-room only, with people awaiting outside for vacancies, and as expected lots of questions about real-world usage of Selenium.

j1-5  j1-6

Left: Vicente and Jorge – Right: Jorge and Mariano

For second session, I joined forces with Mariano Rodriguez, who presented his works on an open source face detection platform, based on Java, OpenCV and Raspberry Pi computers. This solution was awarded recently on the J-Prize 4 coding contest. I guess Mariano never imagined that this award would make him fly to San Francisco and present it in JavaOne!

The last day of the conference started with the Community Keynote. Opened by IBM’s Java CTO and followed by the community show, it was really fun, provoking loud laughs and tons of applauses.

j1-7  j1-8

Left: Java, Watson and Alexa – Right: Nao taking some rest

And between all of that, hundreds of sessions on a wide range of topics, some of them presented by the very best of the developer scene and from the key companies. We felt humbled, and honoured, to share the conference agenda with them.

j1-9

Accenture speaker badges

As final words, and also my personal takeaway: Java is more alive than ever. The ecosystem of platforms and tools is huge, and grows every day. Java is at the core, or is a first class citizen, of all the major trends in software: IoT, robotics, AI & cognitive, big data, mobile, highly interactive user interfaces, lightweight architectures, reactive and microservices design approaches, just to name the most colourful of them. Java continues to represent a full-stack technology platform, diverse, polyglot, that embraces the new but is mature, stable and rock solid for enterprise development.

If you ever thought that Java was a near-dead technology, rest assured that the only limit in what we can achieve with this technology is what we can imagine. Long live Java, may you live for 20 years more.

j1-20