channel image




Jeder redet von Digitaler Transformation, Agilität und natürlich auch DevOps. Leider klappt die Integration moderner Paradigmen in Unternehmen nur sehr schwer. Ein Punkt der eine wichtige Rolle bei Transformationen spielt sind Prozesse. Oft fehlt ein richtiges Verständnis wie man von der abstrakten Beschreibung zu einer leichtgewichtigen Umsetzung im Unternehmen kommt. Nicht die Werkzeuge stehen in diesem Vortag im Vordergrund, sondern der Weg von der Planung zu einer konkreten Umsetzung, die offen für künftige Anpassungen ist.

Slides: https://elmar-dott.com/event/devops-cloud-tage-2023/

Even if it used to be called configuration management, it does not mean that the old problems have been eliminated with the beautiful new name DevOps. Due to the increasing complexity of projects and ignorance of the tools, today's strategies and workflows that are expected of the development teams only achieve a new quality.

Many DevOps teams take the approach of automating all possible work steps. This even goes so far as to try to automate the automation itself. In principle, there would be nothing wrong with this, if the solution would then also help the development teams to work through their daily tasks efficiently. Unfortunately, many of the solutions I have come across in my professional life in recent years are far from that. Rather, they create development environments that hinder the daily work instead of simplifying it. So let's take a closer look together and discuss what serious effects carelessly made decisions have on the future success of a project. Of course, we will also find one or the other highlight from development that causes more than just a little headache for the company.

Slides: https://elmar-dott.com/event/jcon-world-2023/

In the software industry it is a common agreement that the code base have a sufficient test automation. Because this is necessary for a stable DevOps process and secure Refactoring. But the reality is completely different. Almost every project I joined during my carrier, didn’t had any line of test code. If we think about that since more than 40 years still 80% of all commercial software projects fail, we should not be surprised. But this don’t have to be like this. In this talk we demonstrate how easy it is to introduce even in huge projects a test driven approach. The technical setup is a standard Java project with Apache Maven and JUnit 5.

Slides: https://elmar-dott.com/event/jpoint-2023/

Für mein kleines Open Source-Projekt TP-CORE, das Sie auf GitHub finden können, hatte ich die großartige Idee, die iText-Bibliothek für OpenPDF zu ersetzen. Nachdem ich einen Plan gemacht hatte, wie ich mein Ziel erreichen könnte, startete ich alle notwendigen Aktivitäten. Aber im wirklichen Leben sind die Dinge nie so einfach, wie wir es uns ursprünglich vorgestellt haben. In diesem Vortrag erfahren Sie was genau passiert ist. Ich spreche über meine Motivation, warum ich die Änderung wollte und wie mein Plan war, alle Aktivitäten zum Erfolg zu führen. Sie werden erfahren wie es war, als ich den Punkt erreichte bei dem mir klar wurde, dass ich so nicht zum Ziel gelange. Ich erkläre kurz, was ich getan habe, dass dieses kurze Abenteuer den Rest des Projekts nicht beeinflusst hat.

Slides: https://elmar-dott.com/event/it-tage-2022/

Everyone does it, some even several times a day. But few are aware of the complex interlocking mechanisms that make up a complete software release. This is why it sometimes happens that a package gets in the way of the automated processing chain.
With a bit of theory and a typical example from the Java universe, I show how you can take a little pressure out of the software development process in order to achieve lean, slightly automated processes.

To deal with standards in your own projects is not something bad. A well define release process based on common standards increase your productivity. Learn in this talk how you are able to simplify your daily work.

Slides: https://elmar-dott.com/event/jconf-peru-2022/

El manejo de excepciones debe ser un conocimiento básico para los desarrolladores de Java. Pero un uso seguro no es tan fácil como parece en un primer momento. También varios libros recomiendan no usar excepciones para evitar problemas de rendimiento. En el medio, nuestro propio código está luchando por las excepciones y tenemos que encontrar el punto exacto de donde proviene el problema. No siempre es una tarea fácil. Porque la posición en la que se detectó la excepción a menudo debe mejorarse para recopilar información relevante. En esta charla comparto mi experiencia sobre cómo tratar en general las excepciones. Explico con ejemplos cómo tratar las excepciones y cuándo es mejor evitar el uso de excepciones. Después de esta presentación, la cantidad de información en sus mensajes de error no aumenta, porque obtendremos la información importante para solucionar el problema donde ocurra.

El flujo del programa no solo se define mediante sentencias if-else. Las excepciones le permiten manejar los problemas antes de que ocurran, si lo hace bien. Aprenda cómo recopilar información sobre las excepciones lanzadas y vea la práctica que debe evitar.

Slides: https://elmar-dott.com/event/jvm-columbia-2022/

Exception handling gehört zu den Grundkenntnissen eines Java Entwicklers. Die sichere Verwendung ist nicht so einfach, wie es auf den ersten Blick scheint. Erschwert wird alles noch dadurch, dass viele Bücher die Java Programmierung zum Thema haben, gern auch von der Verwendung von Ausnahmebehandlung wegen schwacher Performanz abraten. Dennoch lassen sich Exceptions im eigenen Code nicht vermeiden. Auch die testgetrieben Entwicklung benötigt Strategien Exceptions effizient zu verarbeiten, um so das Problem auf den Punkt zu bringen. Wie aber setzt man Excetions sinnvoll ein, um auch im Fehlerfall alle wichtigen Informationen beisammen zu haben? Diese Frage behandle ich ausführlich in meinem Vortrag.

Slides: https://elmar-dott.com/event/jcon-2022-2/

Als mir im Studium die Vorzüge der OOP mit Java schmackhaft gemacht wurden, war ein sehr beliebtes Argument die Wiederverwendung. Das der Grundsatz write once use everywhere - in der Praxis dann doch nicht so leicht umzusetzen ist, wie es die Theorie suggeriert, haben die meisten Entwickler am eigene Leib erfahren. Woran liegt es also, das die Idee der Wiederverwendung in realen Projekten so schwer umzusetzen ist? Machen wir also einen gemeinsamen Streifzug durch die Welt der Informatik und betracten verschiedene Vorhaben aus einer sicheren Distanz.

Slides: https://elmar-dott.com/event/jcon-2022/

For my small Open Source project TP-CORE, you can find it on GitHub, I had the gorgeous Idea to replace the iText library for OpenPDF. After I made a plan how I could reach my goal I started all necessary activities. But in real life the things never that easy like we have originally in mind. I failed with my idea and in this talk I will let you know what happened exactly. I talk about my motivation why I wanted the replacements and how was my plan to success all activities. You will get to know how it was when I reached the point, I realized I will not make it. I give a brief explanation what I did that this short adventure did not affect the rest of the project.

Slides: https://elmar-dott.com/event/jdd-krakow-2021/

Many developers have ideas they work on it in their spare time. The most of us are convinced about open source and share their own projects on platforms like GitHub. But what happen after a publication of the source code? If you really want to gain people to use your project you’re not done yet. It’s also a good idea to publish your artifacts for a simple usage.

The most famous storage for binary Java Artifacts is Maven Central. Doesn‘t matter if you use in your projects Ivy, Gradle or Maven as dependency management, all those technologies access to Maven Central. In this talk you will learn how to publish your artifacts with Maven to Sonatype Nexuss OSS. We pass through all steps from creating accounts until the the binaries are available. In between I give some general hints about the usage of repository managers and helpful tricks for a lightweight Release Management.

Slides: https://elmar-dott.com/event/jconf-peru-2-2021/

Since more than a decade Apache Maven is one of the most convenient Build and Reporting tools for Java projects. The success of this tool is quit more than just being a build tool. It solves problems in a simple manner. As developer you need run your Maven Build several times, but often the knowledge is missing how to manipulate the build without change the build logic called POM. I will show some tricks how to solve problems when your Maven got stucked. In this presentation I cover regular developer issues and how to overcome them. Because a well working build is more than just a bit of DevOps techniques.

Slides: https://elmar-dott.com/event/jconf-peru-2021/

Jeder macht es, manche sogar mehrmals täglich. Aber nur wenige kennen die komplexen ineinander greifenden Mechanismen, die ein vollständiges Software Release ausmachen. Deshalb kommt es hin und wieder vor, das sich ein Paket in der automatisierten Verarbeitungskette querstellt.
Mit ein wenig Theorie und einem typischen Beispiele aus dem Java Universum zeige ich, wie man ein wenig Druck aus dem Softwareentwicklungsprozess nehmen kann, um zu schlanken leicht automatisierten Prozessen gelangt.

Slides: https://elmar-dott.com/event/jcon-2021/

Leider ist von Minute 1:00 bis 2:10 kein Tonmitschnitt vorhanden :-( - einfach überspringen

Es gibt viele Projekte die sich für eine Raspberry PI eignen. Aus eigener Anwendung zeige ich wie man im Heimnetzwerk das Tool AdGuard in einem Docker Container zum laufen bringt, um damit die Werbung für alle im Netwerk verbundenen Geräte abstellt.

In diesem kleinen Workshop geht es darum auf einem Raspberry PI 4 mit einem Ubuntu Server Docker zum Laufen zu bekommen. Das ist aber der einfachste Schritt, denn dann geht es ans Eingemachte und wir fühlen den Netzwerkmöglichkeiten von Docker ein wenig auf den Zahn. Ein bischen SSH und Shell, ganiert mit Routerkonfiguration und vielen kleine praktischen Tipps runden den Talk ab.

Slides: https://elmar-dott.com/event/grazer-linux-tage-2022/

Wer seine Anwendung nicht als zentralisierte Client/Server-Architektur, sondern in einem dezentralisierten P2P-Netzwerk betreiben möchte, hat einige Herausforderungen zu bewältigen. Nach der Hochzeit von Napster und BitTorrent erleben neuen Medienplattformen wie Odysee und PeerTube mit P2P- Technologie eine neue Renaissance. Ohne auf direkte Implementierungsdetails einzugehen, bespreche ich in diesem Vortrag wichtige Grundlagen, die für den Einstig in die P2P-Welt notwendig sind. Im besonderen Fokus stehen dabei die Vor- und Nachteile der verschiedenen Algorithmen, wie sich die einzelnen Peer finden und welche Probleme dabei auftreten können.

Slides: https://elmar-dott.com/event/chemnitzer-linux-tage-2022/

API Changes always are very risky activities and need a good planning to not crash a project. Because this could cost a lot of adjustments and work for API consumers. In this talk I will share my experience how to prevent common problems designing APIs.

By experience, enterprise applications have a long lifetime period. This is one oft the reasons why we need to pay a lot of attention for maintenance. But how we are able to avoid chaos in the project? With some Code Examples in Java I will demonstrate how a stable API get developed. Some questions I will answer in this talk:
• Quality and Maintenance
• Architecture & Design Pattern for APIs
• API Documentation & Versioning

Slides: https://elmar-dott.com/event/barcamp-rd-2021/

This is the edition of the DLive Stream 2021-11-25 of our live coding tutorial. To stay always informed about upcoming events / streams checkout https://elmar-dott.com or better subscribe to our newsletter. Feel free to mention topics you are interested in future we should touch. If you like to support our work and maybe you plan to buy yourself your own Raspberry PI feel free to use our Amazon affiliate links below.

Homepage : https://elmar-dott.com

Apache Maven ist seit mehr als einem Jahrzehnt als Build- und Reporting-Tool für Java-Projekte etabliert. Der Erfolg dieses Tools wurde, weil es als eines der ersten Build-Tools eine einfache Lösung für das Abhängigkeitsmanagement ansprach. Entwickler lassen mehrmals am Tag einen Maven-Build laufen, wissen aber oft nicht, wie sie Probleme beheben können, wenn ein Build kaputt ist.

In diesem praxisorientierten Vortrag beginnen wir mit den Grundlagen und gehen schnell zu fortgeschrittenen Themen über und lernen, wie man den Lebenszyklus eines Builds modifiziert:

• Token-Ersatz für die Datenbankkonfiguration
• Ausführbare jar-Dateien
• Paket-Fat-Jar einschließlich Abhängigkeiten & MANIFEST-Manipulation
• Arbeiten mit Webanwendungen & Multi-Modul-Projekten
• Erzwingen von Java-Kompilierungsversionen & Release-Zusammenhängen
• Konfigurieren der Reporting-Engine

Agilität / Projektorganisation Architektur DevOps Entwicklung Requirements Engineering Test & Quality

Slides: https://elmar-dott.com/event/it-tage-2020/

Heavy motivation to automate everything, even the automation itself, is the common understanding of the most DevOps teams. A strong dominance of administrators in those teams (Operations), transform ideas of increasing the development process to a personal playground. Far away from the necessities of the DEV team, which have to create the application. Often Developers have to fight heavily with the provided infrastructure, because this break productivity massively down. In this talk we resume the lessons learned after more than one decade as configuration manager in different enterprise projects, to discuss nonsense DevOps workflows.

Slides: https://elmar-dott.com/event/jconfmex-2020/

This short tutorial covers the most fundamental steps to use docker in your development tool chain. After we introduced the basic theory, we will learn how to install docker on a Linux OS (Ubuntu Mate). When this is done we have a short walk through to download an image and instantiate the container. The example use the official PHP 7.3 image with an Apache 2 HTTP Server.

Homepage : https://elmar-dott.com

Enterprise Software hat erfahrungsgemäß eine lange Lebenszeit, weswegen die Wartbarkeit ein wichtiger Aspekt während der Entwicklung ist. Wie aber vermeidet man das Chaos in Projekten, welches lang läufig als historisch gewachsen bezeichnet wird? Mit leicht nachvollziehbaren Beispielen, zeige ich wie man mit einer Schichtenarchitektur eine stabile API entwickeln kann. Dabei werden Fragen geklärt wie:
• Qualität und Wartbarkeit
• Architektur und Design Pattern für APIs
• API Dokumentation und Versionierung
• automatisierte Architekturtests

(Tools/Techniques: Maven, Docker, Rest, apiguardian, Swagger, ArchUnit, JUnit)

Slides: https://elmar-dott.com/event/jcon-2020/

Den eigenen Source-Code auf GitHub zu veröffentlichen ist ein erster Schritt zum eigene Open-Source-Projekt. Aber bei weitem nicht der Einzige. Am Beispiel von TP-CORE geht die Reise durch die verschiedenen Stationen eines Open-Source-Projektes.

• Das kleine Lizenz 1×1
• Promotion auf GitHub
• Veröffentlichungen auf Maven Central
• Continuous Integration in der Cloud – Travis CI
• Public Code Coverage mit Coveralls

Neben diesen Themen werden viele kleine Aspekte, die sich im Rahmen eines Projektes ergeben, angeschnitten.

Slides: https://elmar-dott.com/event/grazer-linux-tage-2019/

Das Software getestet werden muss ist allen Beteiligten klar. Oft stellt sich nicht die Frage welche Test Frameworks eingesetzt werden sollten. Sondern viel mehr das Wie bereitet die meisten Unklarheiten. Am Beispiel eines realen Open Source Projektes werden zentrale Aspekte des Softwaretesting anschaulich besprochen. Dazu gehören die Punkte:

• Wie erzeuge ich testbaren Code
• Wie kann mit einem Testfall die Qualität verbessert werden
• Was ist Testabdeckung und wo liegen die Grenzen
• Wer ist für welche Tests zuständig
• Wie entwickelt man testgetrieben ohne Mehraufwand
• Wie kann das Management die Testqualität beurteilen

Slides: https://elmar-dott.com/event/jcon-2019/


Created 3 years, 4 months ago.

22 videos

Category Science & Technology

The Code Craft:: technology talks about Build Management, Configuration Management, Release Management, Software Architecture & more

Studied at HS Merseburg, Germany, computer science and holds an engineers degree in software engineering. He tweets as @ElmarDott regularly about several technical topics. The main topics in his field of work are Build and Configuration Management, Software Architecture and Release Management. About more than 15 years he is working in different large Web Application projects all over the world. He is an independent consultant / trainer. To share his knowledge he gives talks on conferences, if he is not writing on a new article about software engineering.
Homepage : https://elmar-dott.com
AnchorFM : https://anchor.fm/elmar-dott
GitHub: https://github.com/ElmarDott
Twitter : https://twitter.com/ElmarDott
Blog : https://elmardott.tumblr.com