@MutoShack@functional.cafe @freemo @nyetoots
I started out in Zoology and then moved into a MS in CS later in my career. The advice @freemo is giving is solid. Anyone with a decent logical mind can do well at the practice of programming (writing good code, working with other developers, etc) but you'll be limited on the design side without brushing up on your math. If you've made it through Cal2 then you should have a strong enough grounding to pick most of the other stuff up. Discrete math and Linear Algebre would be good courses to look for online as supplements.
SCIP is a very good intro book but TAoCS is extremely dense and you'll most likely miss most of the nuance without the equivalent of an intro to algorithms course.
I dont think the order is quite so critical as just making sure you cover it all.
If you really want to start and make the first thing you do a computer program before you know any math, do it, if your having fun who cares. But know your limits.
What i suggest is you try to dive in over your head, thats what works for me. You quickly learn what you cant do and why, and then when you circle back to learn the math so you can actually do it since you have explored the actual problem already the math makes a lot more sense.
So in short, I'd say, do it all at once. Pick math problems that are really really challenging, ones you know you probably cant solve, and try to do it anyway. Failure is the greatest teacher.
To this day I still work on "impossible" problems I first tried to tackle in my early days of coding.. some of the impossible problems I've solved, others I keep learnign more and more math and come at them again.. Even if I never solve them, even if they arent even solvable, every cylce I learn more math, i learn more programming, and I learn better design.
Success is a waste of time, failure is where its at :)
@drewfer @MutoShack@functional.cafe