TimmyDuese schrieb:
Ich würde gerne eure Meinungen zu diesem Thema hören. Glaubt ihr, es ist noch wichtig, Programmiersprachen zu lernen? Oder denkt ihr, dass KI uns bald das Programmieren abnehmen wird?
Wie machen das die "Profis" unter euch?
KI wird die Implementierung von Software in jedem Fall verändern - wir massiv kann man schwer abschätzen. Mit dem heutigen Stand kann einem KI schon sehr gut beim Schreiben des Codes helfen, aber nicht bei Design Entscheidungen.
Man muss heutige KI eher wie einen weiteren Abstraktionslevel betrachten: Anstatt Code in der Syntax der Programmiersprache zu verfassen, kann man den Code in natürlicher Sprache beschreiben. Dabei hängt es aber auch davon ab, dass man sich für die KI klar verständlich ausdrückt.
Beispiel:
Ich implementiere zur Zeit eine Lösung zum Management unsere Azure Kosten. Dabei ist eine Teilaufgabe Azure Kostendaten, die in einem Storage Account liegen, in eine Azure SQL Datenbank zu importieren. Die Implementierung aus Teil aus Microsoft T-SQL Prozeduren und Powershell Scripten zur Steuerung derselben.
Ich bin weder in Powershell noch in T-SQL sehr bewandert, und ich habe gezielt ChatGPT eingesetzt, um Coding zu schreiben. Mit meinen 30 Jahren Programmiererfahrung würde ich das natürlich auch ohne hinkriegen. Aber mit der KI geht es einfach schneller.
Ein Auszug aus meinem Frage Antwort Spiel:
"can you write a pattern for string that look like 20230401-20230430"
Antwort:
Code:
$pattern = "^\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])-\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])$"
Das ist jetzt ein sehr simples Beispiel. Aber ich schreibe relativ selten Regular Expressions, also muss ich mir meist irgendwo eine Cheat-Sheet suchen, und dann den Expression zusammenpuzzeln. Dauert dann vielleicht 5-15 Minuten. So dauert es 20 Sekunden...
Ich kann hier bei Interesse gerne anspruchsvollere Interkationen posten.
Gelegentlich hat ChatGPT auch völlig daneben gelegen, z.B. bei der Verwendung von Invoke-SQLCmd, und manchmal wurde meine Frage von der KI anders verstanden als ich sie gemeint habe.
Ich denke es wird in Zukunft einen geringeren Wert haben, tiefe Expertise in irgendeiner Programmiersprache zu erlangen, als in der Vergangenheit. Das hat auch damit zu tun, das eben Softwaresysteme heute mehr aus vorgefertigten "Bauteilen" zusammengesetzt werden und nicht von Grund auf neu entwickelt werden. Die C++ Windows Anwendungen, die ich vor 20 Jahren geschrieben habe, bestanden noch zu 90% aus eigenem Code (wenn man die Standard Runtime-Lib mal ignoriert).
Und auch der eigene Code hat eine hohen Boilerplate Anteil.
Und während ich vor 20 Jahren ein ganzes Jahr praktisch nur C++ programmiert habe, nutzte ich heute C, Python, Powershell, Javascript, Lua kreuz und quer. Dazu jede Menge Frameworks und Liberaries, plus alle möglichen Tools mit diversen Konfiguration Files (z.B. Azure ARM Templates)
Die Zeit und Muße sich intensiv in einer Programmiersprache einzuarbeiten habe ich gar nicht mehr.
Ich behaupte jetzt auch nicht, dass das nur gut ist, Halbwissen birgt auch Risiken. Aber auch da ist ein zukünftig gefragte Fähigkeit, diese Risiken richtig einzuschätzen.