Posts

Posts mit dem Label "Linux" werden angezeigt.

Software-Entwicklung mit KI-Hilfe von ChatGPT

Bild
Wie hilft uns KI beim Programmieren? Als erfahrener Software Entwickler zeige ich euch, in welchen Situationen mir ChatGPT beim Entwickeln besonders hilft. Die Trainingsdaten der KI enthalten viele Programmiersprachen und Technologien. Außerdem kennt sie viele Algorithmen, Tutorials, Opensource Codes, Probleme und deren Lösungen. Dein Arbeits-Kontext, der komplette Sourcecode dazu und euer Problem bzw. dessen echte Root-Cause sind der KI allerdings unbekannt. Die KI bzw. ChatGPT hilft euch also nur so gut, wie ihr euer Problem bzw. die Anforderung mit passendem Kontext klar beschreibt. Mein generelles Vorgehen dazu ist Teile und Herrsche . Ich zerlege meine User Story bzw. meine Aufgabe in kleinere Teile. Kleinere Teilprobleme oder Teilanforderungen lassen sich leichter und genauer beschreiben, so dass die KI bzw. ChatGPT mich besser unterstützen kann.  Um euch das zu verdeutlichen, zeige ich im Folgenden Beispiele aus meinem Entwickler-Alltag. In diesen Beispielen habe ich Teil-Proble

SSH-Tunnel zur Vergrößerung der Entwicklungsumgebung

Bild
In diesem Artikel zeige ich euch, wie ihr SSH benutzt, um Server zu erreichen und mit eurer Entwicklungsumgebung zu verbinden. Auf diese Weise kann ich die in meiner IDE gestartete Anwendung durch einen SSH-Tunnel z.B. mit der Datenbank in unserer Testumgebung verbinden, um die dort vorhandenen Testdaten zu nutzen. Setup Auf meinen Windows Notebook verwende ich meist putty oder eine emulierte Linux Bash, wie zum Beispiel die Git BASH: Putty:  https://putty.org/ Git BASH: https://gitforwindows.org/ In diesem Artikel werde ich mich auf die Linux basierte Variante konzentrieren. SSH in der Linux Shell Vermutlich kennt ihr SSH schon, daher verlinke ich hier auch nur zu Wikipedia . Im folgenden zeige ich, wie man sich mittels private-public-Key mit einem SSH-Service verbindet. Dazu muss auf der Server-Seite der öffentliche Schlüssel (public Key), passend zum privaten Schlüssel (private Key) hinterlegt sein. SSH Agent starten und private Key laden Zuerst benötigen wir einen laufenden SSH Age

Clean Code mit dem Linux sed-Befehl

Bild
Clean Code ist ein wichtiges Thema, das manchmal aufwändig und langweilig sein kann. So musste ich vor kurzem in circa 100 Klassen überflüssige Annotationen löschen 😒 Statt Eclipse nutzte ich die Linux-Shell und sed, um alle Dateien mit einem Befehl aufzuräumen. Wie das genau geht, zeige ich euch hier. Das Problem bzw. der dreckige Code Die Modell-Klassen unserer Anwendung wurden früher zum Parsen von JSON in Java-Objekte und zum Schreiben per JPA in eine relationale Datenbank verwendet. Nach einem Redesign werden die Modell-Klassen nur noch zum Parsen von JSON Texten verwendet, so wie ich es z.B. hier zeige  rest-json-apis-in-java-leicht-gemacht.html . Im Zuge des Redesigns wurde leider vergessen die nun ungenutzten JPA Annotationen in den Modell-Klassen zu entfernen. Konkret sehen alle Klassen ungefähr so aus: import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.EnumType; import javax.persistence.Enumerated;