<p>Alright, so I am a junior math major, but I am getting extremely serious about getting internships, co-ops, and into research summer programs (a lot of them being selective). Anyway, I kind of wanted to widen my experience. </p>

<p>I only know of the C language in computer programming, but these two courses by MITx and HarvardX offer exposure to multiple languages (programming appears to be a very valuable skill in research). The Health class from Harvard and the Mathematical Biostats are mathematical, but I have taken a huge interest in biostatistics as of late and am wanting to explore this more (some research summer programs list biostatistics as something to able to research). The Intro to Mathematical Thinking course is not really mathematical in nature. The Geography of California course will be a joke class as well as the Universe in Ten Weeks course. Applied Probability Theory might be semi-challenging (guy shows slides, talks about them, leaves), but the exams are very straightforward. Mathematics of Operations Research I am told you will have to put effort into it but the teacher is so good that the class generally averages very high grades.</p>

<p>Intro to Mathematical Thinking - Stanford Coursera
Mathematical Biostats Bootcamp - John Hopkins Coursera
Health in Numbers: Quantitative Methods in Clinical & Public Health Research - HarvardX
Intro to Computer Science - HarvardX
Intro to Comp Sci & Programming - MITx
Geography of California - Cal Poly Pomona
Applied Probability Theory - Cal Poly Pomona
Mathematics of Operations Research - Cal Poly Pomona
The Universe in Ten Weeks - Cal Poly Pomona</p>

<p>I won't have a job this quarter, but I will be looking for internships for the following quarters.</p>

<ul>
<li>Drop “intro to mathematical thinking.” (As a junior math major, you’ve probably learned how to write a proof. Then you’d be overqualified for this class.)</li>
<li>Drop either geography or the universe class, unless you need them both for general education requirements.</li>
<li>Drop both online CS classes. Take a CS class at Cal Poly instead. If you want to re-take intro for the sake of learning a more practical language than C, take Cal Poly’s intro using C++. If you already know C++, take a more advanced course. </li>
</ul>

<p>The programming class by HarvardX is teaching C, which you already know. The other languages covered (PHP, HTML, CSS, SQL) are scripting or mark-up languages. Useful if you want to design websites for a living, not so useful for math purposes. If you do want to learn about web programming, you are better off in an actual web programming class. You’ll get a much more in-depth treatment of those languages from scratch. </p>

<p>MIT’s class is probably teaching Python. Here’s the deal about Python: it’s syntactically the single easiest programming language out there. If you know how to program in C++, you’ll figure out Python within a day. I don’t know why you’d work through a whole intro course just to learn Python.</p>

<p>I’d drop the two classes, but they are upper-division general eds. My schedule is so inflexible I cannot take any computer science classes or deviate from my academic plan if I want to graduate on time. Maybe if I over-enrolled with 24 units I could one semester. </p>

<p>I’ll take Python off the list because it’s so easy to pick up, then. I do have an interest in designing websites but yeah, not really applicable to my major. I’ll drop the mathematical thinking course as well.</p>

<p>If you’re already a full-time student, I don’t think it makes much sense to do any of these online projects as anything more than a side project when you can find the time. You can always just don’t download the videos and do the work later if you’re sufficiently motivated. (this is what I’ve done with every Coursera course that’s looked interesting - then when the course is over I can make a decision about how much time to spend based on what I can see it covers)</p>

<p>

</p>

<p>I tried to teach myself Python while taking numerical analysis (using scipy and numpy) and somehow I had way more problems than when I was working with Matlab and R, so YMMV. But I agree that you shouldn’t take an introductory programming class after you already know how to program, unless it’s an entirely new programming paradigm. There’s just way too much time wasted on things you should already understand that have nothing to do with the language you want to learn.</p>