Hey there guys, as I am doing a minor in CS with focus on software development, I have selected the requisite set of courses to proceed with my plan. However as CS is basically a mathematical field, I think I will need (and as many software developers say) a sound mathematical maturity which will indirectly help me build required problem solving skills to analyze/apply algorithms and coding in general. Thus I want to know the theoretical CS courses which you guys think are "necessary" to take to have a sound CS skillset... I have selected the following theoretical courses and I can afford to take only 1-2 courses at max from them (Online). Kindly guide me accordingly. Thanks
1. Theory of Automata
2. Computer Architecture/Organization
3. Introduction to A.I
4. Network centric computing
1. Theory of Automata
2. Computer Architecture/Organization
3. Introduction to A.I
4. Network centric computing