Live Demo #slideless-Track | JAX & W-JAX https://jax.de/live-demo-slideless Java, Architecture & Software Innovation Wed, 09 Nov 2022 07:55:24 +0000 de-DE hourly 1 https://wordpress.org/?v=6.4.2 An introduction into WAGI and Web Assembly – the future of web development? https://jax.de/cloud-container-serverless/an-introduction-into-wagi-and-web-assabky-the-future-of-web-development/ Fri, 01 Jul 2022 16:43:19 +0000 https://jax.de/session/an-introduction-into-wagi-and-web-assabky-the-future-of-web-development/ Believe it or not, CGI is back. The good, old Common Gateway Interface standard revives based on WebAssembly technology. WAGI (WebAssembly Gateway Interface) enables you to write HTTP handlers as Wasm binaries. In this talk, Rainer Stropek introduces WAGI based on a series of demos. You will learn how to write WAGI modules, how to...

Read More

The post An introduction into WAGI and Web Assembly – the future of web development? appeared first on JAX.

]]>
Believe it or not, CGI is back. The good, old Common Gateway Interface standard revives based on WebAssembly technology. WAGI (WebAssembly Gateway Interface) enables you to write HTTP handlers as Wasm binaries. In this talk, Rainer Stropek introduces WAGI based on a series of demos. You will learn how to write WAGI modules, how to secure them, how to push and pull them to container registries, and finally how to run time in a cloud environment. Rainer will use Rust for authoring WAGI modules, but the session focuses on the underlying concepts and standards. Therefore, Rust experience is not required.

The post An introduction into WAGI and Web Assembly – the future of web development? appeared first on JAX.

]]>
Live Coding mit Quarkus, Kafka und OpenTelemetry https://jax.de/serverside-enterprise-java/live-coding-mit-quarkus-kafka-und-opentelemetry/ Thu, 19 May 2022 09:55:15 +0000 https://jax.de/session/live-coding-mit-quarkus-kafka-und-opentelemetry/ Quarkus erfreut sich wachsender Popularität und ist auf dem besten Weg, eine ernstzunehmende Alternative zu Spring Boot zu werden. Insbesondere Teams, die bislang auf Basis von Java EE bzw. Jakarta EE entwickelt haben, werden von Quarkus abgeholt. Das Framework ermöglicht diesen Teams, ihr vorhandenes Know-how zu großen Teilen weiter zu nutzen, aber gleichzeitig Anwendungen auf...

Read More

The post Live Coding mit Quarkus, Kafka und OpenTelemetry appeared first on JAX.

]]>
Quarkus erfreut sich wachsender Popularität und ist auf dem besten Weg, eine ernstzunehmende Alternative zu Spring Boot zu werden. Insbesondere Teams, die bislang auf Basis von Java EE bzw. Jakarta EE entwickelt haben, werden von Quarkus abgeholt. Das Framework ermöglicht diesen Teams, ihr vorhandenes Know-how zu großen Teilen weiter zu nutzen, aber gleichzeitig Anwendungen auf modernstem technischen Fundament zu entwickeln. JAX-RS, CDI und JPA werden ebenso unterstützt wie MicroProfile, Kafka, Docker, Kubernetes oder die Erstellung nativer Images mit der GraalVM. Während dieses Vortrags wird eine beispielhafte Quarkus-Anwendung live erstellt und dabei insbesondere demonstriert, wie die Integration mit Kafka gelingt und Tracing auf Basis von OpenTelemetry implementiert werden kann.

The post Live Coding mit Quarkus, Kafka und OpenTelemetry appeared first on JAX.

]]>
Preparing for 2023: the Upgrade to Jakarta EE! https://jax.de/serverside-enterprise-java/preparing-for-2023-the-upgrade-to-jakarta-ee/ Thu, 19 May 2022 09:55:13 +0000 https://jax.de/session/preparing-for-2023-the-upgrade-to-jakarta-ee/ In this #slideless presentation, I will demonstrate the migration of a classic Java EE web application to Cloud Native Enterprise Java. Simply say goodbye to the ageing Eclipse MicroProfile specifications and adopt the year 2023 with Jakarta EE!

The post Preparing for 2023: the Upgrade to Jakarta EE! appeared first on JAX.

]]>
In this #slideless presentation, I will demonstrate the migration of a classic Java EE web application to Cloud Native Enterprise Java. Simply say goodbye to the ageing Eclipse MicroProfile specifications and adopt the year 2023 with Jakarta EE!

The post Preparing for 2023: the Upgrade to Jakarta EE! appeared first on JAX.

]]>
Architekturen für die Umsetzung von DDD: Hexagonal, Onion oder Clean? #slideless https://jax.de/software-architecture/architekturen-fuer-die-umsetzung-von-ddd-hexagonal-onion-oder-clean-slideless/ Thu, 19 May 2022 09:55:12 +0000 https://jax.de/session/architekturen-fuer-die-umsetzung-von-ddd-hexagonal-onion-oder-clean-slideless/ Domain-driven Design ist ein gutes Mittel, um die Fachlichkeit auf Systeme zu verteilen. Für die Umsetzung eines Bounded Context in einem System gibt es einige Optionen, die alle ihre Vorteile haben, aber auch den Code extrem aufblähen können, ohne einen Mehrwert zu bringen. Wann stellt der dogmatischen Einsatz von Pattern ein Problem dar und wann...

Read More

The post Architekturen für die Umsetzung von DDD: Hexagonal, Onion oder Clean? #slideless appeared first on JAX.

]]>
Domain-driven Design ist ein gutes Mittel, um die Fachlichkeit auf Systeme zu verteilen. Für die Umsetzung eines Bounded Context in einem System gibt es einige Optionen, die alle ihre Vorteile haben, aber auch den Code extrem aufblähen können, ohne einen Mehrwert zu bringen. Wann stellt der dogmatischen Einsatz von Pattern ein Problem dar und wann sind sie eine Option, um in Zukunft Anforderungen besser umsetzten zu können? In dieser Session werden ein paar Beispiele ausgearbeitet, an denen sich Entscheidungen für oder gegen die jeweiligen Muster ableiten lassen.

The post Architekturen für die Umsetzung von DDD: Hexagonal, Onion oder Clean? #slideless appeared first on JAX.

]]>
Ein GraphQL API in 60 Minuten https://jax.de/serverside-enterprise-java/ein-graphql-api-in-60-minuten/ Thu, 19 May 2022 09:55:02 +0000 https://jax.de/session/ein-graphql-api-in-60-minuten/ GraphQL APIs bieten Clients ein hohes Maß an Flexibilität, denn mit der zugehörigen Abfragesprache können sie gezielt genau die Daten abfragen, die sie für einen Use Case benötigen und haben dank des Typsystems von GraphQL auch noch Typsicherheit während der Entwicklung. Doch des einen Freud ist des anderen Leid: Für das Backend bedeutet diese Flexibilität...

Read More

The post Ein GraphQL API in 60 Minuten appeared first on JAX.

]]>
GraphQL APIs bieten Clients ein hohes Maß an Flexibilität, denn mit der zugehörigen Abfragesprache können sie gezielt genau die Daten abfragen, die sie für einen Use Case benötigen und haben dank des Typsystems von GraphQL auch noch Typsicherheit während der Entwicklung. Doch des einen Freud ist des anderen Leid: Für das Backend bedeutet diese Flexibilität nämlich einige Herausforderungen, um dem Client ein API zur Verfügung stellen zu können, das auch performant und sicher ist. In dieser Session zeige ich euch, was GraphQL ist, was ein GraphQL API ausmacht und wie ihr GraphQL APIs für eure eigenen Java-Anwendungen bauen könnt. Damit sich das Ganze nicht im Theoretischen verliert, werde ich ein GraphQL API Schritt für Schritt mit Spring Boot bauen. Dabei kommt anstelle von Slides natürlich nur die IDE zum Einsatz. Nach dem Vortrag habt ihr eine Idee, was GraphQL ausmacht und welche Herausforderungen es bei der Implementierung eines solchen API in der Praxis gibt. Die gezeigten Konzepte werdet ihr auch ohne Spring-Boot-Kenntnisse verstehen und könnt sie auch auf andere GraphQL-Frameworks für Java übertragen.

The post Ein GraphQL API in 60 Minuten appeared first on JAX.

]]>
Test-driven Development, Chicago vs. London Style #slideless https://jax.de/digital-transformation-innovation/chicago-vs-london-style-test-driven-development-slideless/ Thu, 25 Nov 2021 17:06:53 +0000 https://jax.de/session/chicago-vs-london-style-test-driven-development-slideless/ Es gibt mehrere unterschiedliche Schulen des Test-driven Development, die sich im Vorgehen (Inside-out vs. Outside-in, Mock-Verwendung …) unterscheiden und damit auch unterschiedliche Ergebnisse erzielen. In dieser Session werden an einem Beispielprojekt die Vorgehensweisen vorgestellt und die Ergebnisse verglichen. Dabei werden die Auswirkungen auf die Testabdeckung, den Einsatz von Mocks und die Evolvierbarkeit (Wartbarkeit) des Test-...

Read More

The post Test-driven Development, Chicago vs. London Style #slideless appeared first on JAX.

]]>
Es gibt mehrere unterschiedliche Schulen des Test-driven Development, die sich im Vorgehen (Inside-out vs. Outside-in, Mock-Verwendung …) unterscheiden und damit auch unterschiedliche Ergebnisse erzielen. In dieser Session werden an einem Beispielprojekt die Vorgehensweisen vorgestellt und die Ergebnisse verglichen. Dabei werden die Auswirkungen auf die Testabdeckung, den Einsatz von Mocks und die Evolvierbarkeit (Wartbarkeit) des Test- und Produktivcodes herausgearbeitet.

The post Test-driven Development, Chicago vs. London Style #slideless appeared first on JAX.

]]>
Keycloak an die eigenen (Unternehmens-)Anforderungen anpassen #slideless https://jax.de/performance-security/keycloak-an-die-eigenen-unternehmens-anforderungen-anpassen-slideless/ Wed, 24 Nov 2021 12:24:29 +0000 https://jax.de/session/keycloak-an-die-eigenen-unternehmens-anforderungen-anpassen-slideless/ Keycloak hat sich mittlerweile als eines der meistgenutzten Authentifzierungs-, Identity- und Access-Management-(IAM-)Systeme in Unternehmen etabliert. Ganz gleich ob für klassische Enterprise-Anwendungen, moderne Single Page Apps oder Microservices-Architekturen, Keycloak unterstützt die beiden gängigen Protokolle SAML und OIDC (OpenID-Connect) und bietet viel Funktionalität out of the Box. Viele Unternehmen haben aber spezielle Anforderungen an das eigene Identity...

Read More

The post Keycloak an die eigenen (Unternehmens-)Anforderungen anpassen #slideless appeared first on JAX.

]]>
Keycloak hat sich mittlerweile als eines der meistgenutzten Authentifzierungs-, Identity- und Access-Management-(IAM-)Systeme in Unternehmen etabliert. Ganz gleich ob für klassische Enterprise-Anwendungen, moderne Single Page Apps oder Microservices-Architekturen, Keycloak unterstützt die beiden gängigen Protokolle SAML und OIDC (OpenID-Connect) und bietet viel Funktionalität out of the Box. Viele Unternehmen haben aber spezielle Anforderungen an das eigene Identity Management und den Authentifizierungsvorgang. Hier bietet Keycloak mit seiner SPI-Architektur (Service Provider Interfaces) den perfekten Ansatz, eigene unternehmensspezifische Erweiterungen zu entwickeln, ohne den eigentlichen Anwendungskern verändern oder selbst kompilieren zu müssen und somit jederzeit upgrade-fähig zu bleiben. In dieser Session schauen wir uns in bewährter Hands-on-Mentalität die gängigsten Keycloak SPIs an und welche Funktionalitäten wir damit in Keycloak implementieren können; Codebeispiele für Event Listener und 2-Faktor-Authentifizierung inklusive. Auch zum Testen von Keycloak Extensions zeige ich eine interessante Alternative.

The post Keycloak an die eigenen (Unternehmens-)Anforderungen anpassen #slideless appeared first on JAX.

]]>
TypeScript: fortgeschrittene Typen und Konzepte https://jax.de/web-development-javascript/typescript-fortgeschrittene-typen-und-konzepte/ Wed, 24 Nov 2021 11:21:01 +0000 https://jax.de/session/typescript-fortgeschrittene-typen-und-konzepte/ TypeScript erweitert JavaScript um ein statisches Typsystem. Dadurch fühlt sich das Arbeiten mit JavaScript- bzw. TypeScript in einigen Fällen fast so an wie das Arbeiten mit Java-Code, beispielsweise durch Fehlermeldungen bei inkorrekter Verwendung von Typen. Während wir aber in Java immer mit Typen arbeiten, ist das in JavaScript nicht notwendig, da es dort häufig anonyme...

Read More

The post TypeScript: fortgeschrittene Typen und Konzepte appeared first on JAX.

]]>
TypeScript erweitert JavaScript um ein statisches Typsystem. Dadurch fühlt sich das Arbeiten mit JavaScript- bzw. TypeScript in einigen Fällen fast so an wie das Arbeiten mit Java-Code, beispielsweise durch Fehlermeldungen bei inkorrekter Verwendung von Typen. Während wir aber in Java immer mit Typen arbeiten, ist das in JavaScript nicht notwendig, da es dort häufig anonyme Objekte gibt, die keine Instanz einer Klasse oder eines Interfaces wie in Java sein müssen. Das bietet einige Möglichkeiten, ergibt aber auch einige Herausforderungen für Mensch und Typsystem. Um auch hier typsicher zu sein, bietet TypeScript neben den Basistypen (string, number, etc.) auch einige seltsam anmutende Typen wie never oder unknown an und kennt Konzepte wie Mapped Types, Type Guards und Type Predicates. In diesem Vortrag zeige ich euch mit Live-Coding einige dieser erweiterten TypeScript-Features und wofür ihr sie verwenden könnt. Dabei werden wir Features sehen, die vielleicht der eine oder die andere von Euch auch in Java gerne zur Verfügung hätte … Für den Vortrag sind grundlegende TypeScript-Kenntnisse hilfreich, aber die gezeigten Konzepte werdet ihr auch ohne Vorkenntnisse verstehen, solange ihr eine andere statisch typisierte Sprache wie Java beherrscht.

The post TypeScript: fortgeschrittene Typen und Konzepte appeared first on JAX.

]]>
Mutiny: hacking the imperative boat https://jax.de/software-architecture/mutiny-hacking-the-imperative-boat/ Tue, 25 May 2021 12:24:19 +0000 https://jax.de/session/mutiny-hacking-the-imperative-boat/ Are you fed up with the complications of imperative message handling? Then it’s time for Mutiny, to seize control of your message pipeline and reclaim HMS Bounty! To help you get started, I will give a #slideless live demo how to convert an imperative message process to a reactive pipeline. Built on the foundations of...

Read More

The post Mutiny: hacking the imperative boat appeared first on JAX.

]]>
Are you fed up with the complications of imperative message handling? Then it’s time for Mutiny, to seize control of your message pipeline and reclaim HMS Bounty! To help you get started, I will give a #slideless live demo how to convert an imperative message process to a reactive pipeline.

Built on the foundations of the Eclipse MicroProfile reactive messaging specification, Mutiny places events at the core of its design. It is the engine behind all reactive features offered by Quarkus and helps you to create elegant and readable processing pipelines. Let’s open this treasure chest and take the gems home with us!

The post Mutiny: hacking the imperative boat appeared first on JAX.

]]>
MLOps mit TensorFlow https://jax.de/big-data-machine-learning/mlops-mit-tensorflow/ Tue, 25 May 2021 12:24:11 +0000 https://jax.de/session/mlops-mit-tensorflow/ DevOps ist im Bereich der klassischen Softwareentwicklung längst zum Standard geworden. Man denkt bei der Entwicklung der Software gleich die Produktion mit und sieht die Entwicklung eher als einen Zyklus als eine Einbahnstraße. Im Bereich von Machine Learning ist das auch wünschenswert, und die Bestrebungen werden unter dem Term MLOps zusammengefasst. Allerdings gibt es hier...

Read More

The post MLOps mit TensorFlow appeared first on JAX.

]]>
DevOps ist im Bereich der klassischen Softwareentwicklung längst zum Standard geworden. Man denkt bei der Entwicklung der Software gleich die Produktion mit und sieht die Entwicklung eher als einen Zyklus als eine Einbahnstraße. Im Bereich von Machine Learning ist das auch wünschenswert, und die Bestrebungen werden unter dem Term MLOps zusammengefasst. Allerdings gibt es hier ganz andere Herausforderungen, die auch andere Lösungsansätze erfordern. In diesem eher technischen als methodischen Talk entwickeln wir live und ohne Folien zusammen ein TensorFlow-Modell anhand bestimmter Anforderungen. Dieses bringen wir dann in Produktion, nutzen es zur Vorhersage und monitoren es. Dabei sehen wir, was bei einem Machine-Learning-Modell alles schiefgehen kann. Von da an geht es in weitere Iteration.

The post MLOps mit TensorFlow appeared first on JAX.

]]>