Künstliche Intelligenz und wie nutzt Ihr diese zur Programmierung?

  • Allgemein

Es gibt 52 Antworten in diesem Thema. Der letzte Beitrag () ist von DTF.

    Ich glaube nicht, dass der gesamte Schaden durch Systemadministratoren entstanden ist. Ich glaube sogar, dass es für jede Firma aktuell unmöglich ist, ein sicheres System aufzusetzen.(abgesehen von Speziallfällen(KKW,usw) ) Und die Leute, die Systemadministratoren einstellen, nicht den notwendigen Blick für die korrekte Strategie haben.
    Nein, durch schlechte Systemadministratoren natürlich nicht allein. Gibt natürlich viele Faktoren, habe nur wenige genannt, aber ein wichtiger Faktor sind nunmal die Chefs, solange die sich nicht ein wenig mit IT-Sicherheit auseinandersetzen, auch kein Geld dafür ausgeben um zu modernisieren oder Mitarbeiter zu schulen, wird sich daran auch nichts ändern. Gibt Firmen die haben nicht mal eine Notfall-Strategie für den Ernstfall.

    Aber du hast recht, es ist unmöglich ein "sicheres" System aufzubauen. Der gefährlichste Faktor ist und bleibt nun mal der Mensch der diese Systeme benutzt, da hilft auch die beste technische Schutzeinrichtung u.U. nicht.
    Zitat von mir 2023:
    Was interessiert mich Rechtschreibung? Der Compiler wird meckern wenn nötig :D

    DTF schrieb:

    Systemadministrator ... (Ist ja nicht mal ein Ausbildungsberuf) ...

    Fachinformatiker für Systemintegration: Am i a joke for you?

    Das ist kein Problem, das man einer einzelnen Person/Gruppe zuordnen kann, das ist bei verbundenen Systemen so, da gibt es viele Stellen an denen etwas schief laufen kann und jetzt kommt halt noch der Müll mit "KI" oben drauf.
    Leute kopieren einfach die Antwort, ohne zu verstehen was dort passiert und haben dann Sicherheitslücken die vermeidbar wären.

    Aber hey, wir brauchen dafür ja nicht mal mehr Sicherheitslücken, heute veröffentlichen die Unternehmen die Daten Terabyte-weise bei AWS (*hust* VW/Cariad *hust*), also geschenkt.

    slice schrieb:

    Am i a joke for you?


    Na, so war das nicht gemeint. Aber Systemadministrator darf sich wirklich jeder nennen, einige in dem Bereich haben irgendwas IT-Mäßigiges Studiert oder eine Ausbildung im IT-Bereich gemacht oder sonst wo Ihr Wissen aufgeschnappt. FISI ist dagegen ein anerkannter Ausbildungsberuf, auch wenn das Tätigkeitsfeld nahezu gleich ist.
    Zitat von mir 2023:
    Was interessiert mich Rechtschreibung? Der Compiler wird meckern wenn nötig :D

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „DTF“ ()

    Ich habe mir ein Callback-Management-System gemacht um so eine einfache Kommunikation zwischen ViewModels(Komponenten die sich nicht kennen allgemein) zu ermöglichen, hatte da vorher direkte Kopplungen die alles erschwerten. Habe also einen Manager wo ich Callbacks Registrieren usw. kann, alles sehr generisch.

    Habe danach mal eine überflüssige Klasse(nicht leer, aber unsinn) reingemacht und dem Copiloten den Code als einen langen ganzen Text gegeben um mir verbesserungen zu nennen. Das Ergbeniss war nicht schlecht aber auch nicht perfekt. Die überflüssige Klasse hatte der Copilot nicht erkannt, aber hat mir auch Ratschläge gegeben:

    Quellcode

    1. 1. Singleton-Implementierung
    2. Deine Singleton-Implementierung des CallbackManager könnte verbessert werden. Momentan nutzt du lock und überprüfst Instance mehrmals. Eine bessere Implementierung wäre der Einsatz des "Lazy Initialization"-Patterns:
    3. 2. Code-Konsistenz und Cleanliness
    4. Stelle sicher, dass dein Code konsistent ist. Beispielsweise verwendest du manchmal this. und manchmal nicht. Wähle einen Stil und bleibe dabei.
    5. 3. Event System
    6. Betrachte die Möglichkeit, ein Event-System anstelle von Callbacks zu verwenden. Events in C# sind speziell für solche Szenarien entwickelt und bieten eine höhere Flexibilität und besser lesbaren Code.
    7. 4. Typensicherheit
    8. Stelle sicher, dass du Typensicherheit nutzt. Beispielsweise könntest du generische Constraints verwenden, um sicherzustellen, dass T immer ein bestimmter Typ ist.


    Zu 1: Ja das ist wirklich schöner
    Zu 2: Mein Stil ist halt this nur zu verwenden wenn ich muss. Also wenn ein Argument genauso heist wie eine Variable innerhalb der Klasse, das ist fast nur in Konstruktoren bei mir der Fall.
    Zu 3: Wie flexibel mein System in wirklickkeit ist, hat der Copilot nicht bemerkt. Mit Events ist das vllt. verständlicher, aber um keine Kopplung zu haben müsste ich auch einige Delegates haben und auch einen Manager der redirected. Da bleib ich lieber bei CallBacks mit Action<T>. Das würde ich als Geschmackssache abtun.
    Zu 4: Ja das ist auch schöner

    Ich denke ich werde hin und wieder mal meine Codes vom Copiloten inspizieren lassen. Viel kann man bei dieser Generation von KI noch nicht erwarten. Aber in meinen Fall nun 2 von 4 Punkten wo ich finde das macht Sinn, das finde ich gut. Ja die Fun-Klasse wurde nicht erkannt, mal schauen was künftige Generationen so bringen werden, bin jedenfalls gespannt.

    Wenn ich als scharfer Kritiker von KI, küftig ein wenig mehr KI nutzen werde, muss ich jedem anderen KI-Kritiker auch mal empfehlen dieses Werkzeug mal genauer kennenzulernen, wenn man die richtigen Fragen stellt, also keine "Codebetteleien" macht, dann kann man die durchaus für kleinere Codeoptimieren nutzen. Nutzt man Werkzeuge richtig, sind diese auch effektiv.
    Zitat von mir 2023:
    Was interessiert mich Rechtschreibung? Der Compiler wird meckern wenn nötig :D
    Da ich KI ausgesprochen selten verwende, eine Verständnisfrage: Kann KI eigentlich bestehend Code korrekt analysieren ? Also jemand will eine Zusatzfunktion einbauen, aber diese wechselwirkt mit bestehenden Funktionen. Wenn das die KI nicht erkennt, dann ist Ki in diesem Kontext sinnlos. Oder anders formuliert :
    Behauptung: KI kann nur neuen Code erzeugen, aber in keinen bestehenden Code Funktionalitäten ändern.
    Meine Frage: Ist das wahr ? Und alle die KI feiern sind solche, die nie bestehenden Code nochmal anfassen ? Anwendungen, wie z.B. der Chrome-Browser/Windows werden immer größer und größer, weil immer nur hinzugefügt wird ? Also besteht eine Codebasis je nach Alter aus bis zu 10 Schichten verschiedenster Codeparadigmen?
    @Coldfire Was programmieren angeht und auch noch darüber hinaus ist das neueste Modell von GPT mittlerweile als AGI eingestuft (naja nicht offiziell aber aufgrund mancher Tests).
    Bei der KI geht es mittlerweile nicht mehr darum ob sie etwas kann, sondern wie viel Ressourcen es kostet, damit sie das kann.
    Diese Betriebskosten sind genauso gestiegen wie die Leistungsfähigkeit

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Haudruferzappeltnoch“ ()

    Hier was AGI bedeutet:
    Artificial General Intelligence (AGI), deutsch Künstliche allgemeine Intelligenz, ist die Intelligenz eines hypothetischen Computerprogramms, welches die Fähigkeit besitzt, jede intellektuelle Aufgabe zu verstehen oder zu lernen, die ein Mensch ausführen kann. Eine alternative Definition bezeichnet AGI als hochautonomes KI-System, welches bei der Lösung der meisten wirtschaftlich bedeutenden intellektuellen Aufgaben menschliche Fähigkeiten übertrifft

    Das heißt mehr oder weniger, dass ein Mensch keine AGI ist. Im deutschen übersetzt man artificial general intelligence auch häufig mit künstlicher Superintelligenz, was den Unterschied auch aufzeigt.
    Das general heißt nicht das die Intelligenz gewöhnlich ist, sondern dass die Intelligenz nicht spezialisiert auf einzelne Aspekte ist. Also explizt dem hier widerspricht:

    Coldfire schrieb:

    KI kann nur neuen Code erzeugen, aber in keinen bestehenden Code Funktionalitäten ändern

    Dennoch beschränkt es sich halt auf den Bereich "Programmieren", das heißt im Schnitt sollte ein Programmierer dieses Level halten können. Denn innerhalb eines spezifischen Berufsfeld übertreffen die Menschen den allgemeinen Durchschnitt oft beträchtlich.

    Coldfire schrieb:

    Also ich kann eine x-beliebige Person von der Straße holen, und die an meine aktuelles Computerproblem setzten, und das klappt dann auch ?
    Wenn du dir eine x-beliebige Person von der Straße holst, ist nichtmal gewiss, ob sie dir das Wohnzimmer ordentlich saugen könnte. Davon gibt es aber genug Roboter die das können.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Haudruferzappeltnoch“ ()

    Ich hab mich wieder mal wieder schlecht benommen und getrollt. Sorry Dafür. Ich würde einfach gerne wissen, ob jemand konkrete Erfahrungen zu meiner Behauptung hat. die diese bestätigen oder widerlegen. (Behauptung war: KI kann nur neuen Code erzeugen, aber in keinen bestehenden Code Funktionalitäten ändern)
    ​KI kann nur neuen Code erzeugen, aber in keinen bestehenden Code Funktionalitäten ändern


    Ich glaube das kommt auf die Komplexität des bestehenden Code an und was dann die "Aufgabe" der KI sein soll.
    In kleinen Funktionen, oder sehr überschaubarem Code, mag die KI den Code bestens zu analysieren und ggf die einzelnen Methoden zu erweitern.

    Ich nutze die KI (GTP) manchmal um meine fertigen Funktionen ggf zu optimieren.

    Das klappt manchmal ganz gut ABER all zu oft geht das auch völlig daneben und nichts läuft mehr, weil die KI dann evtl Methoden aus anderen Classen nicht vorliegen hat. Da nun die Eingabemöglichkeiten begrenzt sind, wird das oft sehr sehr schwer.
    Auch ist schon sehr oft vorgekommen, das ich eine Funktion zum optimieren genommen habe und GPT völligen UNSINN daraus macht, der NULL KOMMA NULL mit meiner Funktion zu tun hat.
    Um mir gewisse Sachen in der Programmierung mal erklären zu lassen, mit kleinen Codebeispielen ist die KI aber echt gut.
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    @Coldfire
    ​Behauptung war: KI kann nur neuen Code erzeugen, aber in keinen bestehenden Code Funktionalitäten ändern


    Ich jage nicht meinen kompletten Code durch die KI. Das wäre nicht nur sehr fahrlässig, sondern auch nicht zielführend.
    Ich benutze eigentlich die KI nur für diese beiden Anwendungsbereiche:

    a) Fragen zu "wie setze ich diese oder das in der Programmiersprache xy um".
    Meist für Code, wo ich nicht weiß ob das überhaupt geht oder wie das geht.
    Das Ergebnis verwende ich dann fürs selbst lernen und jage es ggf. mit ein paar Anpassungswünsche und weiteren Fragen nochmals durch die KI.
    Das sind aber immer nur sehr überschaubare Codefragmente.

    b) Wenn ich Code schreibe und definitiv irgendwo ein Fehler drin ist, dann jage ich den entsprechenden Teil durch die KI.
    Die sagt mir dann "Du hast dort und hier einen Punkt oder Semikolon oder eine Klammer vergessen".
    Oder wenn ich genau weiß, dass ich in PHP und Javascript irgendwo eine geschwungene Klammer vergessen habe, die aber mit freiem Auge nicht finde - das sagt mir dann auch die KI.

    Für mich persönlich ist das sehr nützlich.

    Mein Mitarbeiter hat unlängst einen Webprogrammierer-Kurs mit PHP, CSS uvm. absolviert und kennt sich super gut aus. Viel besser als ich das kann.
    Wenn ich eine neue Aufgabe habe und ihn frage wie ich das lösen kann, dann kann er mir die Antwort geben so wie er es gelernt hat (also eine von vielen Möglichkeiten).
    Die KI gibt mir auch eine Antwort - viel schneller, mit fertigem Code und wenn mir die Herangehensweise nicht gefällt, dann sage ich - "geht das auch anders" und bekomme eine anderen Code mit einer anderen Herangehensweise. Ich muss dann nur noch entscheiden was für den Einsatzzweck am besten geeignet ist.
    Fazit: beim Programmieren ist für mich die KI eine große Hilfe. Dabei nutze ich ausschließlich den Microsoft Copiloten.
    Liebe Grüße
    Roland Berghöfer

    Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at

    dive26 schrieb:

    Fazit: beim Programmieren ist für mich die KI eine große Hilfe. Dabei nutze ich ausschließlich den Microsoft Copiloten.


    Ich finde KI aktuell nun auch sehr hilfreich, bin auf jeden Fall froh den Dingern mal eine Chance gegeben zu haben. Gerade eben konnte mir der Copilot sogar helfen ein komisches Verhalten zu beheben. Ich parse richtig große XML-Dateien(OSM Daten, 50GB+), hatte nach einer Weile nur noch doppelpunkte in der Debugausgabe. Nun calle ich in der Schleife in der geparst wird, alle 50000 Elementen einmal GC.Collect und habe keine doppelterpunkte mehr in der Ausgabe, mal schauen ob alle 100K oder 200K auch ausreichend sind. Da gab es wohl ein Speicherleck. Ohne den Copiloten hätte ich viel länger nach der Ursache suchen müssen.

    Kann sich also wirklich lohnen damit zu arbeiten, auch wenn KIs noch nicht wirklich gänzlich ausgereift sind. Der Copilot ist IMO jedensfalls das einzige Feature(abgesehen von Optik) seit Win7, womit mich MS wirklich richtig begeistern konnte.
    Zitat von mir 2023:
    Was interessiert mich Rechtschreibung? Der Compiler wird meckern wenn nötig :D

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „DTF“ ()