As a beginner, how should I go about learning difficult concepts? - eviltoast

I’m trying to learn programming and something I struggle with the most is trying to separate code mentally into chunks where I can think through the problem. I’m not really sure how to describe it other than when I read a function to determine what it does then go to the next part of the code I’ve already forgotten how the function transforms the data and I get stuck trying to figure out the solution. So instead I’ll often cludge something together just to make it work but I don’t feel like I made any progress. Has anybody else run into this issue where they struggle with abstracting code from text to mental instructions?

Edit: Thank you all for the suggestions and advise. I wish I could reply to everyone but there’s been a lot of good information given and I have some ways now to try and train my brain to think about how to break down the code. It’s also a little reassuring knowing I’m not the first to have these same struggles.

  • MalReynolds@slrpnk.net
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    There is a great similarity between watching the variables in a function and juggling. Psychologists will tell you, ‘you only get seven variables’, but yiu’re a coder, you might have ten to twelve( especially if some are boolean), but it’s finite, so chunk. Interestingly learning to juggle may help, mirror neurons go brrrr., also chess with moves ahead. If it works it’s not stupid, but is it repeatable, testable…

    • eluvatar@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      Interesting, for some reason I’ve never considered that as a metric to look at, not that it’s everything but it’s worth considering.