• StarkillerX42@lemmy.ml
    link
    fedilink
    arrow-up
    7
    ·
    1 year ago

    I’ve never been able to get a solution that was even remotely correct. Granted, most of the times I ask ChatGPT is when I’m having a hard time solving it myself.

    • SokathHisEyesOpen@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      You need to be able to clearly describe the problem, and your expected solution, to get it to give quality answers. Type out instructions for it like you would type for a junior developer. It’ll give you senior level code back, but it absolutely needs clear and constrained guidelines.

      • exscape@kbin.social
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        1 year ago

        I mostly agree, I’ve had good results with similar prompts, but there’s usually some mistake in there. It seems particularly bad with python imports, it just uses class A, B, C and imports class A, B and X and calls it a day.

        Here are a few prompts that gave pretty good results:

        Create a QDialog class that can be used as a modal dialog. The dialog should update itself every 500 ms to call a supplied function, and show the result of the call as a centered QLabel.

        How can I make a QDialog move when the user clicks and drags anywhere inside it? The QDialog only contains two QLabel widgets.

        For this one, it ignored the method I asked it to use – but it was possibly correct in doing so, as it doesn’t support arbitrary sizes (but I think that’s only for the request?):

        Hi again! Can you write me a Python function (using PySide) to connect to a named pipe server on Windows? It should use SetNamedPipeHandleState to use PIPE_READMODE_MESSAGE, then TransactNamedPipe to send a request (from a method parameter) to a named pipe, then read back a response of arbitrary size.

        It should have told me why it ignored using TransactNamedPipe, but when I told it that it ignored my request it explained why.