Featured image of post Was ich beim Advent of Code über ChatGPT gelernt habe

Was ich beim Advent of Code über ChatGPT gelernt habe

Wie gut eignet sich ChatGPT als Partner beim Lösen komplexer Programmieraufgaben? Im diesjährigen Advent of Code habe ich ChatGPT intensiv getestet und dabei spannende Erkenntnisse über seine Stärken, Schwächen und den richtigen Umgang mit generiertem Code gewonnen. Ein Erfahrungsbericht über Kooperation, Kommunikation und den Weg zu besseren Lösungen.

Featured image of post GenAI in der Softwareentwicklung: Praktische Tipps und Grenzen

GenAI in der Softwareentwicklung: Praktische Tipps und Grenzen

Generative KI verändert die Softwareentwicklung wie nie zuvor – von der Code-Generierung bis zur Anforderungsanalyse. Entdecke Best Practices, typische Anwendungsfälle und die Grenzen von Modellen wie Github Copilot. Lerne, wie du KI-Tools effizient und sicher einsetzt, um deine Produktivität zu steigern und smarter zu arbeiten.

Featured image of post Hugging Face Transfomers: Q&A Modell

Hugging Face Transfomers: Q&A Modell

Die Welt der künstlichen Intelligenz (KI) hat in den letzten Monaten erheblich an Bedeutung gewonnen, vor allem durch den beeindruckenden Erfolg von Large Language Models wie ChatGPT. Ein wesentlicher Akteur in diesem Bereich ist die Hugging Face Community, die eine Vielzahl an KI-Modellen als Open-Source-Lösungen anbietet. Ein herausragender Bestandteil ihres Portfolios ist die Transformers-Bibliothek, die den Einsatz dieser Modelle erheblich vereinfacht. In diesem Artikel demonstrieren wir am Beispiel eines deutschen Frage-Antwort-Modells, wie einfach die Entwicklung eines Python-Skripts für die natürliche Sprachverarbeitung zur Analyse von Webinhalten sein kann. Für Interessierte ist das Skript auf GitHub leicht zugänglich.

Featured image of post Consumer Driven Contracts - Erfahrungsbericht, Teil 2

Consumer Driven Contracts - Erfahrungsbericht, Teil 2

In diesem zweiten Teil meiner Artikelserie über Consumer Driven Contracts teile ich meine Erfahrungen mit der Implementierung von Pact, einem Open Source Tool für das Testen von Schnittstellen-Contracts. Ich erläutere, wie Pact als Implementierung von Consumer-Driven Contracts funktioniert, einschließlich der Verwendung des Pact Brokers zur zentralen Verwaltung und Kompatibilitätsprüfung von Schnittstellen-Versionen. Der Artikel deckt auch verschiedene Herausforderungen und Best Practices ab, die bei der Verwendung von Pact auftreten, insbesondere in Verbindung mit Java und JUnit. Zusätzlich werden die Integration von Pact in CI/CD-Pipelines und seine Stärken und Schwächen diskutiert. Abschließend empfehle ich Pact als leistungsstarkes Tool für die Verbesserung der Wartbarkeit von Service-Architekturen, trotz einiger Schwächen.

Featured image of post Consumer Driven Contracts - Erfahrungsbericht, Teil 1

Consumer Driven Contracts - Erfahrungsbericht, Teil 1

In diesem Blog-Artikel teile ich meine Erfahrungen mit der Einführung von Consumer Driven Contracts (CDC) in meinem aktuellen Projekt. Consumer Driven Contracts sind eine Testmethode für die Kommunikation zwischen Services in einer verteilten Architektur, die sich von den traditionellen, vom Provider vorgegebenen Contracts unterscheidet. Ich beleuchte die Theorie hinter CDC und teile sieben Erkenntnisse, die ich während der Anwendung dieser Methode gewonnen habe. Diese Erkenntnisse reichen von der Umkehrung unserer Arbeitsabläufe und der gesteigerten Bedeutung von Fachlichkeit an der Schnittstelle, bis hin zur zusätzlichen Komplexität, die CDC mit sich bringt. Der Artikel ist der erste Teil einer zweiteiligen Serie, in der ich meine Erfahrungen und Einblicke in Consumer Driven Contracts und ihre Implementierung darlege. Im zweiten Teil werde ich mich speziell auf den Einsatz von Pact konzentrieren und weiterführende Erkenntnisse teilen.

Featured image of post Komponenten in Angular unkompliziert mocken

Komponenten in Angular unkompliziert mocken

In unserem aktuellen Blog-Artikel widmen wir uns dem Mocken von Abhängigkeiten in Angular-Tests und betrachten dabei bewährte Methoden sowie eine vielversprechende Alternative: ng-mocks. Diese Einführung gibt Ihnen einen Vorgeschmack darauf, wie ng-mocks den Testprozess vereinfachen könnte, ohne dabei zu viel vorwegzunehmen.

Featured image of post Einfache Tools mit Node.js schreiben

Einfache Tools mit Node.js schreiben

In diesem Artikel wird die Vielseitigkeit von Node.js hervorgehoben, nicht nur für Webanwendungen, sondern auch für die Entwicklung kleinerer Tools, die den Projektalltag erleichtern. Besonders für Projekte, in denen Node.js bereits genutzt wird, bietet dieser Leitfaden praktische Schritte zur Einrichtung eines solchen Projekts. Von der Erstellung eines neuen Projekts mit npm init bis hin zur Nutzung von TypeScript für Typsicherheit werden die nötigen Schritte erläutert, einschließlich der Installation wichtiger Abhängigkeiten wie tslint und ts-node. Zusätzlich werden nützliche Tools wie commander für CLI-Implementierungen und typed-rest-client für typisierte REST-Anfragen vorgestellt.

Featured image of post Retry implementieren mit Spring Retry

Retry implementieren mit Spring Retry

In diesem Artikel erkunden wir Spring Retry, eine unverzichtbare Bibliothek für Spring-Projekte, die eine elegante Lösung für das Management von fehlgeschlagenen Anfragen bietet. Wir beleuchten, wie Spring Retry mit seinen konfigurierbaren Funktionen, wie begrenzten Versuchen und anpassbaren Verzögerungen, die Robustheit Ihrer Anwendungen verbessert. Zusätzlich verweisen wir auf nützliche Ressourcen wie Baeldung und die Spring-Dokumentation, die eine umfassende Einführung in die Bibliothek bieten.

Featured image of post Docker for Windows: Pakete in einem Bridge Netzwerk umleiten

Docker for Windows: Pakete in einem Bridge Netzwerk umleiten

In diesem Artikel befassen wir uns mit einer gängigen Herausforderung in der Docker-Containerisierung: einem Prozess, der Pakete an eine falsche IP-Adresse sendet. Dieses Problem, verstärkt durch einen Bug, der die Anpassung der IP-Adresse im Prozess verhindert, und die eingeschränkte Funktionalität des Host-Netzwerks unter Windows, führt uns zur Notwendigkeit, Netzwerkpakete gezielt umzuleiten. Die Lösung liegt in der geschickten Nutzung von iptables, einem leistungsstarken Tool zur Manipulation von Netzwerkverkehr, das es ermöglicht, die Pakete an die korrekte IP-Adresse weiterzuleiten. Wir werden untersuchen, wie diese Methode angewendet wird, um die Netzwerkkommunikation effektiv zu steuern und somit das Problem zu beheben.

Featured image of post CSV einfach nach JSON konvertieren

CSV einfach nach JSON konvertieren

In der dynamischen Welt der Softwareentwicklung ist NPM (Node Package Manager) ein zentrales Werkzeug, das Entwicklern eine umfangreiche Bibliothek an Ressourcen bietet. Einer der großen Vorteile von NPM ist die Möglichkeit, bestimmte Bibliotheken direkt über die Kommandozeile zu nutzen. Dieser Artikel beleuchtet die Anwendung des Tools npx, welches die Ausführung von NPM-Paketen vereinfacht und insbesondere die Konvertierung von CSV in JSON zu einem kinderleichten Prozess macht. Wir werden uns speziell auf die Verwendung der Bibliothek csvtojson konzentrieren und zeigen, wie man damit effizient CSV-Dateien in JSON umwandeln kann, ein Prozess, der in der modernen Datenverarbeitung immer wichtiger wird.