JavaLand 2019 Retrospective
source link: https://www.tuicool.com/articles/YRjme23
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
In this article, I talk about my impressions from the JavaLand 2019 conference. This was my second time at the international conference, which, this year, took place in the theme park "Phantasialand" in Bruehl, near Cologne, Germany, from March 18th-20th.
Additionally, you can download the presentations here , as well as lecture recordings here .
In the following post, you can see the presentations I attended, as well as links to videos and talks. Let's get into it.
Day 1
The Joy of Multiple Models: Structuring DDD Monoliths — Henning Schwentner
- Domain-driven design as an example of a leasing task
- New term: Doman story
- The same model in different bounded contexts in Java is presented as packages.
- Book: Domain-Driven Design by Eric Evans.
Keynote: Programming Platform Growth: Table Stakes or Deal Makes? — Ed Burns
- Based on his 25 years of experience in IT, Ed Burns presented on what a new platform can make to be one of the most successful platforms and accepted by IT communities worldwide.
Lost in Transaction? Data Consistency in Distributed Systems — Bernd Rücker
- Book: Domain-Driven Design by Eric Evans
- ACID
- ACID 2.0
- Choreography and orchestration
- BPMN
The Secret Sauce of Successful Teams — Sven Peters
Presentation: https://www.javaland.eu/formes/pubfiles/11160551/2019-nn-sven_peters-das_geheimnis_erfolgreicher_teams-praesentation.pdf
The four parts of psychological safety make a team stronger:
- Completing direction
- Supportive context
- Strong structure
- Shared mindset
Into the Jungle and Back! About Leadership in IT... — Cosima Laube
- Everyday situations of development teams explained like a jungle story.
- Difficulties are a part of software development. Laube talks about how they have an impact on teams.
- Also, solutions to those problems were listed, like:
- Be you
- Be here
- Be open
- Belong
Data Science Meets Software Data — Markus Harrer
Presentation: https://www.javaland.eu/formes/pubfiles/11122404/2019-nn-markus_harrer-data_science_meets_software_data-praesentation.pdf
- Data analysis framework with Jypiter, Python3, pandas, and matplotlib.
- Alternative technologies for data analysis are Cypher, Neo4j, jQAssistant, beakerx, and Tablesaw.
- Example: analyzing the latest changes of Linux core.
- Live presentation with Jypiter.
- Further analysis with EVA/OZAPFDIS, pandas and AUSI, jdeps, and D3.
Angular for Java Developers — Bert Jan Schrijver
- Introduction to Angular
- Comparison table of Angular with Java for Java developers
- Live demonstration with sources that can found on GitHub.
The Architect, Does It Really Exist? — Jochen Mader
- Mentioning old technologies and practices that were in the past, like:
- SOA (service-oriented architecture)
- NoSQL
- Discussion about a case where the speaker worked as a consultant on a software project where high throughput of the data was necessary.
- Guidelines and the definition of REST usage are created from many global companies including Zalando, Amazon, etc.
Revisiting Effective Java in 2019 — Edson Yanaga
Presentation: https://www.javaland.eu/formes/pubfiles/11160964/2019-nn-edson_yanaga-revisiting_effective_java_in_2019-praesentation.pdf
- Book: Domain-Driven Design by Eric Evans
- Examples from the book Effective Java: Third Edition by Joshua Bloch were presented.
Day 2
Using APIs Is Not Difficult, But Building Them, However, Is Very Difficult — Thorsten Maier
- Good explanation and knowledge of context is needed.
- Defining data structures and operations.
- REST
- The server is the "Chef" of the communication
- The client follows the server via the links
- Swagger
- Many questions not related to the data structure need to be answered before the interface implementation begins:
- Versioning
- Security
- Logging
- etc.
- Solutions other than REST — GraphQL.
Web-API-Design in Java — Stephan Müller
- Differences between communication types include:
- REST
- GraphQL
- Server-Sent Events
- WebSockets
- Event-Feed
GraalVM: Run Programs Faster, Anywhere — Oleg Selajev
Videp: https://www.youtube.com/watch?v=MN6jNIwl2FQ
- Introduction to GraalVM.
Back to the CompletableFuture: Concurrency in Action — Dmitry Vinnik
Video: https://www.youtube.com/watch?v=husm8xMJ2So
- Introduction to concurrency programming
- Introduction and example of CompletableFuture
Testing Java Microservices — Andy Gumbrecht
Presentation: https://www.javaland.eu/formes/pubfiles/11143495/2019-nn-andy_gumbrecht-testing_java_microservices-praesentation.pdf
- What is a microservice and how can it be tested?
- Testing Java microservices using many frameworks and tools:
- REST Assured
- Hoverfly — Service Virtualization
- PACT foundation — Contract testing
- E2E testing
- docker-compose — Orchestration of Docker containers
- Testing framework — arquillian
- Gitlab — The Build Pipeline
The Dark Side of Java 8 — Grzegorz Piwowarek
Presentation: https://www.javaland.eu/formes/pubfiles/11143479/2019-nn-grzegorz_piwowarek-the_dark_side_of_java_8-praesentation.pdf
- Low usage of Java version above 8.
- New Java release cycle, also LTS releases.
- Several examples where Java doesn't work properly from Java 9 and Java 11 — mostly stream and lambda expressions.
Takeaways
These presentations gave us a lot of information about topics that we did not know, or only partially knew, about. I would like to mention two, in particular, that I knew little about but were heavily discussed at this year's conference:
- The book Domain-Driven Design by Eric Evans, which was mentioned on the first day in four different tracks. It is interesting that the first edition was published back in 2003, but obviously, it is still very popular amongst developers.
- Apache Kafka was also mentioned in many of the presentations as a newly used framework for high data throughput. Some warnings were also mentioned during the presentations with a message that Apache Kafka is unable to solve their problems.
Overall, JavaLand was a great Java conference, with over 2000 visitors this year. You can learn new things from speakers all over the world. It is also a great opportunity to meet Java developers from other firms and exchange knowledge. On the first day of the conference, many of the exhibitions were open to conference visitors. There was also an event one evening with live music and good beer. Next year, some of my colleagues will be attending and I hope they can experience the magic of JavaLand and have many stories and takeaways to share.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK