From df581e55a7893f535dafa90768e98e012ae55172 Mon Sep 17 00:00:00 2001 From: Waciuma Wanjohi Date: Wed, 4 Mar 2020 01:03:18 -0700 Subject: [PATCH] Align math curriculum with CS2013 See: https://github.com/ossu/computer-science/issues/637 --- README.md | 63 ++++++++++++++++++++++------------------------- extras/courses.md | 1 + 2 files changed, 30 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index ff3c360a8..e143eeb02 100644 --- a/README.md +++ b/README.md @@ -190,32 +190,43 @@ Courses | Duration | Effort | Prerequisites - **Note**: probably the best resource to learn Haskell: [Haskell Programming from First Principles](http://haskellbook.com/) `paid` - **Required**, to learn about logic programming, backtracking, unification: [Learn Prolog Now!](http://lpn.swi-prolog.org/lpnpage.php?pageid=top) -### Core math - -**Topics covered**: -`linear transformations` -`matrices` -`vectors` -`mathematical proofs` -`number theory` -`differential calculus` -`integral calculus` -`sequences and series` -`discrete mathematics` -`basic statistics` -`O-notation` -`graph theory` -`vector calculus` -`discrete probability` -`and more` +### Math Electives +**Students must choose one of the following topics**: calculus, linear algebra, logic, or probability. +#### Linear Algebra Courses | Duration | Effort | Prerequisites :-- | :--: | :--: | :--: [Essence of Linear Algebra](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab) | - | - | pre-calculus [Linear Algebra - Foundations to Frontiers](https://www.edx.org/course/linear-algebra-foundations-to-frontiers-0) ([alt](http://ulaff.net/)) | 15 weeks | 8 hours/week | Essence of Linear Algebra + +#### Calculus +Courses | Duration | Effort | Prerequisites +:-- | :--: | :--: | :--: [Calculus 1A: Differentiation](https://www.edx.org/course/calculus-1a-differentiation) | 13 weeks | 6-10 hours/week | pre-calculus [Calculus 1B: Integration](https://www.edx.org/course/calculus-1b-integration) | 13 weeks | 5-10 hours/week | Calculus 1A [Calculus 1C: Coordinate Systems & Infinite Series](https://www.edx.org/course/calculus-1c-coordinate-systems-infinite-series) | 13 weeks | 5-10 hours/week | Calculus 1B + +#### Logic +Courses | Duration | Effort | Prerequisites +:-- | :--: | :--: | :--: +[Introduction to Logic](https://www.coursera.org/learn/logic-introduction) | 10 weeks | 4-8 hours/week | set theory + +#### Probability +Courses | Duration | Effort | Prerequisites +:-- | :--: | :--: | :--: +[Introduction to Probability - The Science of Uncertainty](https://www.edx.org/course/introduction-probability-science-mitx-6-041x-2) | 18 weeks | 12 hours/week | Multivariable Calculus + +### Math Core +In addition to their math elective, students must complete the following course on discrete mathematics. + +**Topics covered**: +`discrete mathematics` +`mathematical proofs` +`basic statistics` +`O-notation` +`discrete probability` +`and more` + [Mathematics for Computer Science](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-spring-2015/index.htm)**1** | 13 weeks | 5 hours/week | Calculus 1C **1**: Students struggling with MIT Math for CS can consider taking the [Discrete Mathematics Specialization](https://www.coursera.org/specializations/discrete-mathematics) first. @@ -324,21 +335,6 @@ Courses | Duration | Effort | Prerequisites [Introduction to Parallel Programming](https://classroom.udacity.com/courses/cs344) ([alt](https://www.youtube.com/playlist?list=PLGvfHSgImk4aweyWlhBXNF6XISY3um82_)) | 12 weeks | - | C, algorithms [Software Architecture & Design](https://www.udacity.com/course/software-architecture-design--ud821)| 8 weeks | 6 hours/week | software engineering in Java -### Advanced math - -**Topics covered**: -`parametric equations` -`polar coordinate systems` -`multivariable integrals` -`multivariable differentials` -`probability theory` -`and more` - -Courses | Duration | Effort | Prerequisites -:-- | :--: | :--: | :--: -[Multivariable Calculus](https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/index.htm) | 13 weeks | 12 hours/week | MIT Calculus 1C -[Introduction to Probability - The Science of Uncertainty](https://www.edx.org/course/introduction-probability-science-mitx-6-041x-2) | 18 weeks | 12 hours/week | Multivariable Calculus - ### Advanced systems **Topics covered**: @@ -394,7 +390,6 @@ If you are struggling, you can find a physics MOOC or utilize the materials from Courses | Duration | Effort | Prerequisites :-- | :--: | :--: | :--: -[Introduction to Logic](https://www.coursera.org/learn/logic-introduction) | 10 weeks | 4-8 hours/week | set theory [Automata Theory](https://lagunita.stanford.edu/courses/course-v1:ComputerScience+Automata+SelfPaced/about) | 7 weeks | 10 hours/week | discrete mathematics, logic, algorithms [Computational Geometry](https://www.edx.org/course/computational-geometry-tsinghuax-70240183x) | 16 weeks | 8 hours/week | algorithms, C++ [Introduction to Formal Concept Analysis](https://www.coursera.org/learn/formal-concept-analysis) | 6 weeks | 4-6 hours/week | logic, probability diff --git a/extras/courses.md b/extras/courses.md index 6fd32cdf2..78e1233c3 100644 --- a/extras/courses.md +++ b/extras/courses.md @@ -33,6 +33,7 @@ Courses | Duration | Effort [Introduction to Mathematical Thinking](https://www.coursera.org/learn/mathematical-thinking) | 10 weeks | 10 hours/week [Introduction to Probability and Data](https://www.coursera.org/learn/probability-intro)| - | - [Linear Algebra (Strang)](https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm) | - | - +[Multivariable Calculus](https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/index.htm) | 13 weeks | 12 hours/week ## Systems