I consider myself a bad hobbyist programmer. I know a decent bit about programming, and I mainly create relatively simple things.
Before LLMs, I would spend weeks or months working on a small program, but with LLMs I can often complete it significantly faster.
Now, I don’t suppose I would consider myself to be a “vibe coder”, because I don’t expect the LLM to create the entire application for me, but I may let it generate a significant portion of code. I am generally coming up with the basic structure of the program and figuring out how it should work, then I might ask it to write individual functions, or pieces of functions. I review the code it gives me and see if it makes sense. It’s kind of like having an assistant helping me.
Programming languages are how we communicate with computers to tell them what to do. We have to learn to speak the computer’s language. But with an LLM, the computer has learned to speak our language. So now we can program in normal English, but it’s like going through a translator. You still have to be very specific about what the program needs to do, or it will just have to guess at what you wanted. And even when you are specific, something might get lost in translation. So I think the best way to avoid these issues is like I said, not expecting it to be able to make an entire program for you, but using it as an assistant to create little parts at a time.
That’s cool. It doesn’t sound like you are vibe coding because you don’t expect a working code, rather using LLM to learn more about coding in general. Is there any technique you learned to make it go faster or work better thru that process?
I would describe myself as close to the person you replied to in terms of skill level, and have been using llm’s in a similar fashion to the one they described, and get great results. I think the key thing is to know enough to understand what is happening, and see where the llm’s limitations are, and use it as a learning resource to actively improve while using it. Then be as specific as possible when asking questions.
Not only is it great in terms of getting working code, I have found chatgpt to be the best teacher I have ever had! (Because of availability etc). I think they must have trained the llm’s I have used on a lot of computer and coding sources.
I think the key is to learn at least the basics of coding first.There are scores of 5 to 25 hour long courses on most major programming languages on sites like udemy. Coding can definitely be hard to get your head around at first, but stick with it and do as many of those as it takes, or a night class or something.
If someone isn’t prepared to invest a week or two (in truth I spent a lot longer than that studying coding but I wan’t particularly time-efficient in my prior learning), then treat the llm as a learning resource, then good luck! I would guess the llm will be able to come up with any idea they can anyway soon enough!
by “completing it” do you mean having something that seems like it works? Or something that you know works? If it’s the former then you’ve just had the computer do the easy part (creating something) and skipped the actually hard part (making it robust).
Are errors handled properly, is all input being validated? If using https, are you actually verifying certificates? This sort of thing
Well since I just program for a hobby, I am able to complete things to the point that they meet my own requirements. If I need error handling for something, I can just ask the LLM to add error handling, it typically works out quite well.
so no. Before llms came around, lots of people were hobby programmers. We learned. Sorry to be blunt, but being a hobbyist is not an excuse. The best programmers I know are hobbyists
I consider myself a bad hobbyist programmer. I know a decent bit about programming, and I mainly create relatively simple things.
Before LLMs, I would spend weeks or months working on a small program, but with LLMs I can often complete it significantly faster.
Now, I don’t suppose I would consider myself to be a “vibe coder”, because I don’t expect the LLM to create the entire application for me, but I may let it generate a significant portion of code. I am generally coming up with the basic structure of the program and figuring out how it should work, then I might ask it to write individual functions, or pieces of functions. I review the code it gives me and see if it makes sense. It’s kind of like having an assistant helping me.
Programming languages are how we communicate with computers to tell them what to do. We have to learn to speak the computer’s language. But with an LLM, the computer has learned to speak our language. So now we can program in normal English, but it’s like going through a translator. You still have to be very specific about what the program needs to do, or it will just have to guess at what you wanted. And even when you are specific, something might get lost in translation. So I think the best way to avoid these issues is like I said, not expecting it to be able to make an entire program for you, but using it as an assistant to create little parts at a time.
That’s cool. It doesn’t sound like you are vibe coding because you don’t expect a working code, rather using LLM to learn more about coding in general. Is there any technique you learned to make it go faster or work better thru that process?
I would describe myself as close to the person you replied to in terms of skill level, and have been using llm’s in a similar fashion to the one they described, and get great results. I think the key thing is to know enough to understand what is happening, and see where the llm’s limitations are, and use it as a learning resource to actively improve while using it. Then be as specific as possible when asking questions.
Not only is it great in terms of getting working code, I have found chatgpt to be the best teacher I have ever had! (Because of availability etc). I think they must have trained the llm’s I have used on a lot of computer and coding sources.
I think the key is to learn at least the basics of coding first.There are scores of 5 to 25 hour long courses on most major programming languages on sites like udemy. Coding can definitely be hard to get your head around at first, but stick with it and do as many of those as it takes, or a night class or something.
If someone isn’t prepared to invest a week or two (in truth I spent a lot longer than that studying coding but I wan’t particularly time-efficient in my prior learning), then treat the llm as a learning resource, then good luck! I would guess the llm will be able to come up with any idea they can anyway soon enough!
by “completing it” do you mean having something that seems like it works? Or something that you know works? If it’s the former then you’ve just had the computer do the easy part (creating something) and skipped the actually hard part (making it robust).
Are errors handled properly, is all input being validated? If using https, are you actually verifying certificates? This sort of thing
Well since I just program for a hobby, I am able to complete things to the point that they meet my own requirements. If I need error handling for something, I can just ask the LLM to add error handling, it typically works out quite well.
so no. Before llms came around, lots of people were hobby programmers. We learned. Sorry to be blunt, but being a hobbyist is not an excuse. The best programmers I know are hobbyists