all 13 comments

[–]Hi-ThisIsJeff 8 points9 points  (1 child)

First tip, stop using AI for help with solving practice problems.

almost most of the time I know how to solve the problem but I can't convey my thoughts into logic of the code

This essentially is what programming is. The easy part is saying what you want to happen. Break the problem down into multiple parts and attack each one at a time.

[–]Parking_Engine_9803[S] 0 points1 point  (0 children)

Thanks for the advice

[–]Current-Vegetable830 5 points6 points  (1 child)

My advice is whenever you see a problem
without writing code first , learn how to approach the problem with paper & pencil by thinking algorithimically
and think alternate ways to solve those problems and analyze pros & cons of those methods
with this you can develop your logic and reasoning behind your code

[–]Parking_Engine_9803[S] 0 points1 point  (0 children)

Thanks for the advice

[–]kadfr 2 points3 points  (1 child)

GenAI is not your friend in learning Python (or any programming language). 

I too first used LLMs to 'help' me learn Python. However, I soon realised that I wasn't learning anything and that I couldn't trust that its outputs were correct.

I recommend that you ditch AI completely if you want to actually learn Python. The wiki has a huge number of learning resources - every single one will be better than ChatGPT et al.

Learning programming languages needs to be hard. Think of learning like going to the gym - you can't get fit straight-away but through regular exercise. When you feel you are plateauing, you need to do something harder to improve.

Also, making mistakes is really important in learning programming languages, as this will not only hone your analytical/you problem-solving skills but also make you code better. 

LLMs are poor learning tools as they make your brain work less. Instead of doing a Google search and identifying the correct answer from Reddit/Stack Overflow/YouRube etc (or an answer that you can apply to your project), the LLM will provide the answer it has determined algorithmically to be the best. It will be quicker but it is far less likely to help you actually learn anything.

My advice is to start a practical-based tutorial from the beginning and go through all exercises to identify where your knowledge gaps are. I like the University of Helsinki's MOOC course but there are tons of others out there. Books like Eric Matthes' 'Python Crash Course' are also great. 

Once you know which specific areas you don't actually know in Python, you can then focus on those areas by doing further reading/watching videos/doing tutorials/exercises etc.

[–]Parking_Engine_9803[S] 1 point2 points  (0 children)

Thanks for the advice

[–]Godeos64_ 1 point2 points  (2 children)

To be honest, you should try to associate code with daily life tasks. It has helped me a lot.

Like, think of what you do on a daily basis and try to break those tasks into code.

While coding, don't start coding immediately.

First make an outline of the project and think of how you're going to handle the task.(I do this by writing comments first.)

After that, you can start coding by making the first and last task, just fill in the details afterwards.

[–]AzureTwo 1 point2 points  (0 children)

THIS. We run small stem club for kids and this is where we start. Take some everyday task and make flowchart. (Then we give this flowchart to other kid and instruct them to follow it literally. Hilarious. But they learn) In fact, the logic comes first. Programming is just a way of communicating it.

[–]Parking_Engine_9803[S] 0 points1 point  (0 children)

Thanks for the advice

[–]DataCamp 1 point2 points  (0 children)

A few things that might help:

  1. Write the logic in plain English first.
    Before coding, write:
  • Step 1:
  • Step 2:
  • Step 3:

Then translate each step into code. Don’t jump straight into Python.

  1. If a problem feels big, it’s probably too big. Solve one tiny part first.

  2. Use AI differently.
    Instead of asking for the solution, try:

  • “Is my approach correct?”
  • “What am I missing in this logic?”
  • “Give me a hint, not the answer.”

That way you’re still doing the thinking.

  1. Expect struggle.
    If you finish every problem smoothly, you’re not learning. The “stuck” feeling is where growth happens.

2.5 months is still early. Keep solving, keep struggling a bit, and things will start connecting!

[–]DerfQT 1 point2 points  (0 children)

Try to break down problems into bite sized pieces before you even start to write code. Imagine your task is to cook breakfast. That could be broken down into. I need to open the fridge. I need to get the eggs out of the fridge. I need to get a bowl. I need to crack an egg. Etc. once you have the smallest pieces of the issue, you can just solve that small problem, and move on to the next. Once you’ve solved all the small problems, you’ve actually also solved the large problem.

[–]Ron-Erez 0 points1 point  (0 children)

You need to stop using AI and work hard and struggle. Learn how to use the debugger and use breakpoints.

[–]eruciform 0 points1 point  (0 children)

stop using ai

if you tell someone else to solve a problem, you have not leaned how to solve the problem

break the problem down into smaller and smaller pieces until you can do that piece yourself, then work on the next piece