I’ve always flunked at math; and knowing how intertwined programming is with math, I’m skeptical of my ability to learn how to code. Can someone be too dumb to learn programming? If it helps, I’m mostly interested in learning Common Lisp.

  • Nommer@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    7 months ago

    I’m starting to believe I am. Been at this for a year and I still don’t understand how to use methods like .filter() or .map() despite reading and practicing, it’s all just smashing the keyboard until it works. I know some other devs will come in and joke they do the same thing but no, I feel truly lost when trying to figure this out.

    • corytheboyd@kbin.social
      link
      fedilink
      arrow-up
      0
      ·
      7 months ago

      It took me a long time to really grok iterative methods like this, but once it clicks, you will absolutely know and feel like you have unlocked a new super power.

      It starts with completely understanding that you are just passing functions as arguments, abs those functions are being invoked in a loop for each item in the collection. Once that is internalized, you learn the differences between filter, map, reduce, etc. The general differences boil down to: 1. How the iterator function changes the value being iterated over (most don’t) 2. What does the iterator function return (map and filter both return a new list, reduce returns the data structure being reduced into)

      I would skip trying to understand reduce at first, though it’s the method you can implement all other such iterative functions with. The derivations like map and filter are just easier to start with.

      And again, seriously, it took me like 2 years to completely internalize all of this, even after CS classes.

    • bnjmn@programming.dev
      link
      fedilink
      arrow-up
      0
      ·
      7 months ago

      It will come in time, promise. I had a REALLY hard time understanding recursion until I started using it more