I would use Khan Academy. Start at a level that feels too easy, even if it's elementary school math. The key to learning anything is to start at a level that feels too easy and gradually increase difficulty.
As you finish a subject, see if there's a corresponding book in the Art of Problem Solving store [0]; you can revisit the subject at a deeper level that will strengthen your foundation. The AoPS books will also expose you to areas useful in programming like discrete mathematics.
Before any of the above, take Coursera's Learning How to Learn course. You'll learn lots of effective strategies to get the most out of your efforts. For example, you can use Anki [1] to remember definitions and concepts you've managed to understand and to schedule review of problems you've already solved.
Myself and my daughters use Anki every day. It has been the defining factor in turning my mediocre job into a career. And Ankidroid on Android is open source.
> The key to learning anything is to start at a level that feels too easy and gradually increase difficulty.
Is it though?
In this particular case, for this particular person, may be. But personally, I always found myself bored and ADHDly switching to something else in 5 minutes if I wouldn't drop myself right in the deep end. And from my interactions with different software engineers over the years, I doubt I'm the only one.
As you finish a subject, see if there's a corresponding book in the Art of Problem Solving store [0]; you can revisit the subject at a deeper level that will strengthen your foundation. The AoPS books will also expose you to areas useful in programming like discrete mathematics.
Before any of the above, take Coursera's Learning How to Learn course. You'll learn lots of effective strategies to get the most out of your efforts. For example, you can use Anki [1] to remember definitions and concepts you've managed to understand and to schedule review of problems you've already solved.
[0] https://artofproblemsolving.com/store/recommendations.php
[1] http://augmentingcognition.com/ltm.html