Create some low hanging fruits maybe?
Perhaps you could do this by breaking assignments down into even smaller and simpler components?
It wasn’t programming but… For one of my courses that required me to use a lot of statistics (which is not my forte as someone who struggles with dyscalculia) I had to complete little bits at a time which then came together to complete one whole (basic level) statistical data analysis… and the beauty of it was that as I completed each component I started to understand actually why the statistics were important instead of viewing them as rather abstract numbers that previously meant nothing to me.
So making assignments small in incremental pieces might help. However, in my class, there was a small assignment that students did not take up. Except for a few exceptional students.
It wasn’t programming but… For one of my courses that required me to use a lot of statistics (which is not my forte as someone who struggles with dyscalculia) I had to complete little bits at a time which then came together to complete one whole (basic level) statistical data analysis… and the beauty of it was that as I completed each component I started to understand actually why the statistics were important instead of viewing them as rather abstract numbers that previously meant nothing to me.