mirror of
https://github.com/ossu/computer-science.git
synced 2024-12-27 00:09:32 -05:00
Merge branch 'addcourses'
This commit is contained in:
commit
0369e92792
8
CHANGELOG.md
Normal file
8
CHANGELOG.md
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# Change Log
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
||||||
|
|
||||||
|
## [1.0.0] 2015-10-08
|
||||||
|
|
||||||
|
Release of the first **complete** version of the Computer Science curriculum.
|
172
README.md
172
README.md
@ -1,9 +1,10 @@
|
|||||||
|
|
||||||
![open source society university](http://i.imgur.com/h8xjrrj.png)
|
![open source society university](http://i.imgur.com/h8xjrrj.png)
|
||||||
|
|
||||||
### Open Source Society University
|
<h3 align="center">Open Source Society University</h3>
|
||||||
|
<p align="center">
|
||||||
:mortar_board: **Path to a free self-taught graduation in Computer Science!**
|
Path to a free self-taught graduation in Computer Science!
|
||||||
|
</p>
|
||||||
|
|
||||||
## Contents
|
## Contents
|
||||||
|
|
||||||
@ -19,11 +20,9 @@
|
|||||||
|
|
||||||
## About
|
## About
|
||||||
|
|
||||||
This is a **solid path** for those of you who want to complete a Computer Science course on your own time, **for free**, with courses from the **best universities** in the World.
|
This is a **solid path** for those of you who want to complete a **Computer Science** course on your own time, **for free**, with courses from the **best universities** in the World.
|
||||||
|
|
||||||
In the future, more categories and/or courses will be added to this list or a more advanced/specialized list.
|
In our curriculum, we gave preference to MOOC (Massive Open Online Course) type of courses because those courses were created with our style of learning in mind.
|
||||||
|
|
||||||
Initially, we will also give preference to MOOC (Massive Open Online Course) type of courses because those courses were created with our style of learning in mind.
|
|
||||||
|
|
||||||
## Becoming an OSS student
|
## Becoming an OSS student
|
||||||
|
|
||||||
@ -63,37 +62,54 @@ That is why we are using this strategy.
|
|||||||
|
|
||||||
## Curriculum
|
## Curriculum
|
||||||
|
|
||||||
- [Introduction](#introduction)
|
- [Introduction to Computer Science](#introduction-to-computer-science)
|
||||||
|
- [Math (Mathematical Thinking)](#math-mathematical-thinking)
|
||||||
- [Program Design](#program-design)
|
- [Program Design](#program-design)
|
||||||
|
- [Math (Discrete Math)](#math-discrete-math)
|
||||||
- [Algorithms](#algorithms)
|
- [Algorithms](#algorithms)
|
||||||
- [Programming Paradigms](#programming-paradigms)
|
- [Programming Paradigms](#programming-paradigms)
|
||||||
- [Software Testing](#software-testing)
|
- [Software Testing](#software-testing)
|
||||||
- [Math](#math)
|
- [Math (Calculus)](#math-calculus)
|
||||||
- [Software Architecture](#software-architecture)
|
- [Software Architecture](#software-architecture)
|
||||||
|
- [Theory](#theory)
|
||||||
- [Software Engineering](#software-engineering)
|
- [Software Engineering](#software-engineering)
|
||||||
|
- [Math (Probability)](#math-probability)
|
||||||
|
- [Computer Architecture](#computer-architecture)
|
||||||
- [Operating Systems](#operating-systems)
|
- [Operating Systems](#operating-systems)
|
||||||
- [Computer Networks](#computer-networks)
|
- [Computer Networks](#computer-networks)
|
||||||
- [Databases](#databases)
|
- [Databases](#databases)
|
||||||
- [Cloud Computing](#cloud-computing)
|
- [Cloud Computing](#cloud-computing)
|
||||||
|
- [Math (Linear Algebra)](#math-linear-algebra)
|
||||||
- [Cryptography](#cryptography)
|
- [Cryptography](#cryptography)
|
||||||
|
- [Security](#security)
|
||||||
- [Compilers](#compilers)
|
- [Compilers](#compilers)
|
||||||
|
- [Parallel Computing](#parallel-computing)
|
||||||
- [UX Design](#ux-design)
|
- [UX Design](#ux-design)
|
||||||
|
- [Computer Graphics](#computer-graphics)
|
||||||
- [Artificial Intelligence](#artificial-intelligence)
|
- [Artificial Intelligence](#artificial-intelligence)
|
||||||
- [Machine Learning](#machine-learning)
|
- [Machine Learning](#machine-learning)
|
||||||
- [Natural Language Processing](#natural-language-processing)
|
- [Natural Language Processing](#natural-language-processing)
|
||||||
- [Big Data](#big-data)
|
- [Big Data](#big-data)
|
||||||
- [Data Mining](#data-mining)
|
- [Data Mining](#data-mining)
|
||||||
- [Internet of Things](#internet-of-things)
|
- [Internet of Things](#internet-of-things)
|
||||||
|
- [Specializations](#specializations)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Introduction
|
### Introduction to Computer Science
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[Introduction to Computer Science](https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#!)| 12 weeks | 10-20 hours/week
|
[Introduction to Computer Science](https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#!)| 12 weeks | 10-20 hours/week
|
||||||
[Introduction to Computer Science and Programming Using Python](https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-5#!)| 9 weeks | 15 hours/week
|
[Introduction to Computer Science and Programming Using Python](https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-5#!)| 9 weeks | 15 hours/week
|
||||||
[Introduction to Computational Thinking and Data Science](https://www.edx.org/course/introduction-computational-thinking-data-mitx-6-00-2x-2#!)| 10 weeks | 15 hours/week
|
[Introduction to Computational Thinking and Data Science](https://www.edx.org/course/introduction-computational-thinking-data-mitx-6-00-2x-2#!)| 10 weeks | 15 hours/week
|
||||||
|
[From Nand to Tetris](https://www.coursera.org/course/nand2tetris1) | 7 weeks | 5-10 hours/week
|
||||||
|
|
||||||
|
### Math (Mathematical Thinking)
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Effective Thinking Through Mathematics](https://www.edx.org/course/effective-thinking-through-mathematics-utaustinx-ut-9-01x) | 9 weeks | 5 hours/week
|
||||||
|
|
||||||
### Program Design
|
### Program Design
|
||||||
|
|
||||||
@ -103,6 +119,12 @@ Courses | Duration | Effort
|
|||||||
[Systematic Program Design- Part 2: Arbitrary Sized Data](https://www.edx.org/course/systematic-program-design-part-2-ubcx-spd2x)| 5 weeks | 8-12 hours/week
|
[Systematic Program Design- Part 2: Arbitrary Sized Data](https://www.edx.org/course/systematic-program-design-part-2-ubcx-spd2x)| 5 weeks | 8-12 hours/week
|
||||||
[Systematic Program Design- Part 3: Abstraction, Search and Graphs](https://www.edx.org/course/systematic-program-design-part-3-ubcx-spd3x)| 5 weeks | 8-12 hours/week
|
[Systematic Program Design- Part 3: Abstraction, Search and Graphs](https://www.edx.org/course/systematic-program-design-part-3-ubcx-spd3x)| 5 weeks | 8-12 hours/week
|
||||||
|
|
||||||
|
### Math (Discrete Math)
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Mathematics for Computer Science](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/index.htm)| - | -
|
||||||
|
|
||||||
### Algorithms
|
### Algorithms
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
@ -115,10 +137,9 @@ Courses | Duration | Effort
|
|||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[Introduction to Functional Programming](https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0#ct-read-review-widget)| 7 weeks | 4-6 hours/week
|
|
||||||
[Object Oriented Programming in Java](https://www.coursera.org/learn/object-oriented-java) | 6 weeks | 4-6 hours/week
|
|
||||||
[Principles of Reactive Programming](https://www.coursera.org/course/reactive)| 7 weeks | 5-7 hours/week
|
|
||||||
[Functional Programming Principles in Scala](https://www.coursera.org/course/progfun)| 7 weeks | 5-7 hours/week
|
[Functional Programming Principles in Scala](https://www.coursera.org/course/progfun)| 7 weeks | 5-7 hours/week
|
||||||
|
[Principles of Reactive Programming](https://www.coursera.org/course/reactive)| 7 weeks | 5-7 hours/week
|
||||||
|
[Object Oriented Programming in Java](https://www.coursera.org/learn/object-oriented-java) | 6 weeks | 4-6 hours/week
|
||||||
|
|
||||||
### Software Testing
|
### Software Testing
|
||||||
|
|
||||||
@ -127,16 +148,13 @@ Courses | Duration | Effort
|
|||||||
[Software Testing](https://www.udacity.com/course/software-testing--cs258)| 4 weeks | 6 hours/week
|
[Software Testing](https://www.udacity.com/course/software-testing--cs258)| 4 weeks | 6 hours/week
|
||||||
[Software Debugging](https://www.udacity.com/course/software-debugging--cs259)| 8 weeks | 6 hours/week
|
[Software Debugging](https://www.udacity.com/course/software-debugging--cs259)| 8 weeks | 6 hours/week
|
||||||
|
|
||||||
### Math
|
### Math (Calculus)
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[Effective Thinking Through Mathematics](https://www.edx.org/course/effective-thinking-through-mathematics-utaustinx-ut-9-01x)| 9 weeks | 5 hours/week
|
[Calculus One](https://www.coursera.org/learn/calculus1)| 16 weeks | 8-10 hours/week
|
||||||
[Applications of Linear Algebra Part 1](https://www.edx.org/course/applications-linear-algebra-part-1-davidsonx-d003x-1#ct-read-review-widget)| 5 weeks | 12-18 hours/week
|
[Calculus Two: Sequences and Series](https://www.coursera.org/learn/advanced-calculus)| 7 weeks | 9-10 hours/week
|
||||||
[Applications of Linear Algebra Part 2](https://www.edx.org/course/applications-linear-algebra-part-2-davidsonx-d003x-2)| 4 weeks | 12-18 hours/week
|
[Multivariable Calculus](https://www.coursera.org/course/m2o2c2)| 6 weeks | 5-7 hours/week
|
||||||
[Linear and Discrete Optimization](https://www.coursera.org/course/linearopt)| 7 weeks | 3-6 hours/week
|
|
||||||
[Probabilistic Graphical Models](https://www.coursera.org/course/pgm)| 11 weeks | 15-20 hours/week
|
|
||||||
[Game Theory](https://www.coursera.org/course/gametheory)| 9 weeks | 5-7 hours/week
|
|
||||||
|
|
||||||
### Software Architecture
|
### Software Architecture
|
||||||
|
|
||||||
@ -145,6 +163,12 @@ Courses | Duration | Effort
|
|||||||
[Web Application Architectures](https://www.coursera.org/course/webapplications)| 6 weeks | 6-9 hours/week
|
[Web Application Architectures](https://www.coursera.org/course/webapplications)| 6 weeks | 6-9 hours/week
|
||||||
[Software Architecture & Design](https://www.udacity.com/course/software-architecture-design--ud821)| 8 weeks | 6 hours/week
|
[Software Architecture & Design](https://www.udacity.com/course/software-architecture-design--ud821)| 8 weeks | 6 hours/week
|
||||||
|
|
||||||
|
### Theory
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Automata](https://www.coursera.org/course/automata)| 6 weeks | 8-10 hours/week
|
||||||
|
|
||||||
### Software Engineering
|
### Software Engineering
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
@ -152,6 +176,20 @@ Courses | Duration | Effort
|
|||||||
[Engineering Software as a Service (SaaS), Part 1](https://www.edx.org/course/engineering-software-service-saas-part-1-uc-berkeleyx-cs169-1x)| 9 weeks | 12 hours/week
|
[Engineering Software as a Service (SaaS), Part 1](https://www.edx.org/course/engineering-software-service-saas-part-1-uc-berkeleyx-cs169-1x)| 9 weeks | 12 hours/week
|
||||||
[Engineering Software as a Service (Saas), Part 2](https://www.edx.org/course/engineering-software-service-saas-part-2-uc-berkeleyx-cs169-2x)| 8 weeks | 12 hours/week
|
[Engineering Software as a Service (Saas), Part 2](https://www.edx.org/course/engineering-software-service-saas-part-2-uc-berkeleyx-cs169-2x)| 8 weeks | 12 hours/week
|
||||||
[Software Processes and Agile Practices](https://www.coursera.org/learn/software-processes-and-agile-practices)| 4 weeks | 6-8 hours/week
|
[Software Processes and Agile Practices](https://www.coursera.org/learn/software-processes-and-agile-practices)| 4 weeks | 6-8 hours/week
|
||||||
|
[Startup Engineering](https://www.coursera.org/course/startup) | 12 weeks | 2-20 hours/week
|
||||||
|
|
||||||
|
### Math (Probability)
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Introduction to Probability - The Science of Uncertainty](https://www.edx.org/course/introduction-probability-science-mitx-6-041x-0)| 16 weeks | 12 hours/week
|
||||||
|
|
||||||
|
### Computer Architecture
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[The Hardware/Software Interface](https://www.coursera.org/course/hwswinterface)| 8 weeks | 10-15 hours/week
|
||||||
|
[Computer Architecture](https://www.coursera.org/course/comparch)| - | 5-8 hours/week
|
||||||
|
|
||||||
### Operating Systems
|
### Operating Systems
|
||||||
|
|
||||||
@ -179,6 +217,12 @@ Courses | Duration | Effort
|
|||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[Introduction to Cloud Computing](https://www.edx.org/course/introduction-cloud-computing-ieeex-cloudintro-x-0)| 4 weeks | 1 hour/week
|
[Introduction to Cloud Computing](https://www.edx.org/course/introduction-cloud-computing-ieeex-cloudintro-x-0)| 4 weeks | 1 hour/week
|
||||||
|
|
||||||
|
### Math (Linear Algebra)
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Coding the Matrix: Linear Algebra through Computer Science Applications](https://www.coursera.org/course/matrix)| 10 weeks | 7-10 hours/week
|
||||||
|
|
||||||
### Cryptography
|
### Cryptography
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
@ -187,11 +231,23 @@ Courses | Duration | Effort
|
|||||||
[Cryptography II](https://www.coursera.org/course/crypto2)| 6 weeks | 6-8 hours/week
|
[Cryptography II](https://www.coursera.org/course/crypto2)| 6 weeks | 6-8 hours/week
|
||||||
[Applied Cryptography](https://www.udacity.com/course/applied-cryptography--cs387)| 8 weeks | 6 hours/week
|
[Applied Cryptography](https://www.udacity.com/course/applied-cryptography--cs387)| 8 weeks | 6 hours/week
|
||||||
|
|
||||||
|
### Security
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Introduction to Cyber Security](https://www.futurelearn.com/courses/introduction-to-cyber-security) | 8 weeks | 3 hours/week
|
||||||
|
|
||||||
### Compilers
|
### Compilers
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[Compilers](https://www.coursera.org/course/compilers)| 11 weeks | 8-10 hours/week
|
[Compilers](https://www.coursera.org/course/compilers)| 9 weeks | 6-8 hours/week
|
||||||
|
|
||||||
|
### Parallel Computing
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Heterogeneous Parallel Programming](https://www.coursera.org/course/hetero)| 11 weeks | 8-10 hours/week
|
||||||
|
|
||||||
### UX Design
|
### UX Design
|
||||||
|
|
||||||
@ -199,6 +255,12 @@ Courses | Duration | Effort
|
|||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[UX Design for Mobile Developers](https://www.udacity.com/course/ux-design-for-mobile-developers--ud849)| 6 weeks | 6 hours/week
|
[UX Design for Mobile Developers](https://www.udacity.com/course/ux-design-for-mobile-developers--ud849)| 6 weeks | 6 hours/week
|
||||||
|
|
||||||
|
### Computer Graphics
|
||||||
|
|
||||||
|
Courses | Duration | Effort
|
||||||
|
:-- | :--: | :--:
|
||||||
|
[Computer Graphics](https://www.edx.org/course/computer-graphics-uc-san-diegox-cse167x)| 6 weeks | 12 hours/week
|
||||||
|
|
||||||
### Artificial Intelligence
|
### Artificial Intelligence
|
||||||
|
|
||||||
Courses | Duration | Effort
|
Courses | Duration | Effort
|
||||||
@ -235,6 +297,16 @@ Courses | Duration | Effort
|
|||||||
:-- | :--: | :--:
|
:-- | :--: | :--:
|
||||||
[The Internet of Things](https://www.futurelearn.com/courses/internet-of-things)| 4 weeks | 2 hours/week
|
[The Internet of Things](https://www.futurelearn.com/courses/internet-of-things)| 4 weeks | 2 hours/week
|
||||||
|
|
||||||
|
### Specializations
|
||||||
|
|
||||||
|
After finishing the courses above, start your specializations on the topics that you have more interest.
|
||||||
|
|
||||||
|
Search such specializations in the following platforms:
|
||||||
|
|
||||||
|
#### [Coursera](https://www.coursera.org/) | [edX](https://www.edx.org/) | [Udacity](https://www.udacity.com/) | [Future Learn](https://www.futurelearn.com/) | [Udemy](https://www.udemy.com)
|
||||||
|
|
||||||
|
![keep learning](http://i.imgur.com/REQK0VU.jpg)
|
||||||
|
|
||||||
## How to use this guide
|
## How to use this guide
|
||||||
|
|
||||||
### Order of the classes
|
### Order of the classes
|
||||||
@ -257,27 +329,23 @@ You must focus on your **habit**, and **forget** about goals. Try to invest 1 ~
|
|||||||
|
|
||||||
> See more about "Commit to a process, not a goal" [here](http://jamesclear.com/goals-systems).
|
> See more about "Commit to a process, not a goal" [here](http://jamesclear.com/goals-systems).
|
||||||
|
|
||||||
### How can I track/show my progress?
|
### Project Based
|
||||||
|
|
||||||
To **track** your progress, you should update the profile that you created and add the courses that you began or ended.
|
Here in **OSS University**, you do **not** need to take exams, because we are focused on **real projects**!
|
||||||
|
|
||||||
To **show** your progress, you should create a repository on GitHub to put all of the files that you created for each course.
|
In order to show for everyone that you **successfully** finished a course, you should create a **"startup project"**.
|
||||||
|
|
||||||
You can create one repository per course, or just one repository that will contain all of the files for each course. The first option is our preferred approach.
|
> "What does it mean?"
|
||||||
|
|
||||||
**ps**: You should share **only** files that you are **allowed** to! **Do NOT disrespect the code of conduct** that you signed in the beginning of some courses.
|
After finish a course, you should think about a **real problem** that you can solve using the acquired knowledge in the course. You don't need to create a big project, but you must create something to **validate** and **consolidate** your knowledge, and also to show to the world that you are capable to create something useful with the concepts that you learned.
|
||||||
|
|
||||||
[Be creative](#be-creative) in order to show your progress! :smile:
|
The projects of all students will be listed in [this](projects.md) file. Submit your project's informations in that file after you conclude it.
|
||||||
|
|
||||||
### Cooperative work
|
**You can create this project alone or with other students!**
|
||||||
|
|
||||||
**We love cooperative work**! But is quite difficult to manage a large base of students with specific projects. Use our channels to communicate with other fellows to combine and create new projects.
|
> Some project suggestions [here](https://github.com/karan/Projects) and [here](https://github.com/ericdouglas/app-specs).
|
||||||
|
|
||||||
### Which programming languages should I use?
|
And you should also...
|
||||||
|
|
||||||
My friend, here is the best part of liberty! You can use **any** language that you want to complete the courses.
|
|
||||||
|
|
||||||
The **important** thing for each course is to **internalize** the **core concepts** and to be able to use them with whatever tool (programming language) that you wish.
|
|
||||||
|
|
||||||
### Be creative!
|
### Be creative!
|
||||||
|
|
||||||
@ -291,7 +359,22 @@ Here are some tips about how you can do that:
|
|||||||
|
|
||||||
- **Articles**: create blog posts to synthesize/summarize what you learned.
|
- **Articles**: create blog posts to synthesize/summarize what you learned.
|
||||||
- **GitHub repository**: keep your course's files organized in a GH repository, so in that way other students can use it to study with your annotations.
|
- **GitHub repository**: keep your course's files organized in a GH repository, so in that way other students can use it to study with your annotations.
|
||||||
- **Real projects**: you can try to develop at least **one real project** for each course that you enroll. It doesn't need to be a big project, just a **small one** to **validate** and **consolidate** your knowledge. Some project suggestions [here](https://github.com/karan/Projects) and [here](https://github.com/ericdouglas/app-specs).
|
|
||||||
|
### Cooperative work
|
||||||
|
|
||||||
|
**We love cooperative work**! Use our [channels](#community) to communicate with other fellows to combine and create new projects!
|
||||||
|
|
||||||
|
### Which programming languages should I use?
|
||||||
|
|
||||||
|
My friend, here is the best part of liberty! You can use **any** language that you want to complete the courses.
|
||||||
|
|
||||||
|
The **important** thing for each course is to **internalize** the **core concepts** and to be able to use them with whatever tool (programming language) that you wish.
|
||||||
|
|
||||||
|
### Content Policy
|
||||||
|
|
||||||
|
You must share **only** files that you are **allowed** to! **Do NOT disrespect the code of conduct** that you signed in the beginning of some courses.
|
||||||
|
|
||||||
|
[Be creative](#be-creative) in order to show your progress! :smile:
|
||||||
|
|
||||||
### Stay tuned
|
### Stay tuned
|
||||||
|
|
||||||
@ -309,6 +392,18 @@ The **only things** that you need to know are how to use **Git** and **GitHub**.
|
|||||||
|
|
||||||
**ps**: You don't need to do all of the courses. Just pick one and learn the basics because you will learn more on the go!
|
**ps**: You don't need to do all of the courses. Just pick one and learn the basics because you will learn more on the go!
|
||||||
|
|
||||||
|
## Change Log
|
||||||
|
|
||||||
|
**Curriculum Version**: `1.0.0`
|
||||||
|
|
||||||
|
To show **respect** to all of our students, we will keep a [CHANGELOG](CHANGELOG.md) file that contains all the alterations that our curriculum may suffer.
|
||||||
|
|
||||||
|
Now we have a **stable** version of the curriculum, which won't change anymore, only in exceptional cases (outdated courses, broken links, etc).
|
||||||
|
|
||||||
|
Our students can **trust** in this curriculum because it has been **carefully planned** and covers **all** the **core topics** that a conventional Computer Science course covers.
|
||||||
|
|
||||||
|
We also include modern topics, making this course one of the **best options** for those who want to become a Computer Scientist and/or a Software Engineer.
|
||||||
|
|
||||||
## How to collaborate
|
## How to collaborate
|
||||||
|
|
||||||
You can [open an issue](https://help.github.com/articles/creating-an-issue/) and give us your suggestions as to how we can improve this guide, or what we can do to improve the learning experience.
|
You can [open an issue](https://help.github.com/articles/creating-an-issue/) and give us your suggestions as to how we can improve this guide, or what we can do to improve the learning experience.
|
||||||
@ -319,6 +414,8 @@ Let's do it together! =)
|
|||||||
|
|
||||||
## Community
|
## Community
|
||||||
|
|
||||||
|
Subscribe to [/r/opensourcesociety](https://www.reddit.com/r/opensourcesociety/)!
|
||||||
|
|
||||||
Join us in our [group](https://groups.google.com/forum/#!forum/open-source-society-university)!
|
Join us in our [group](https://groups.google.com/forum/#!forum/open-source-society-university)!
|
||||||
|
|
||||||
You can also interact through [GitHub issues](https://github.com/open-source-society/computer-science-and-engineering/issues).
|
You can also interact through [GitHub issues](https://github.com/open-source-society/computer-science-and-engineering/issues).
|
||||||
@ -327,11 +424,11 @@ We also have a chat room! [![Join the chat at https://gitter.im/open-source-soci
|
|||||||
|
|
||||||
Add **Open Source Society University** to your [Facebook](https://www.facebook.com/ossuniversity) profile!
|
Add **Open Source Society University** to your [Facebook](https://www.facebook.com/ossuniversity) profile!
|
||||||
|
|
||||||
> **ps**: A forum is an ideal way to interact with other students as we do not lose important discussions, which usually occur in communication via chat apps. **Please use our forum for important discussions**.
|
> **ps**: A forum is an ideal way to interact with other students as we do not lose important discussions, which usually occur in communication via chat apps. **Please use our subreddit/group for important discussions**.
|
||||||
|
|
||||||
## Next Goals
|
## Next Goals
|
||||||
|
|
||||||
- [Adding our university page at Linkedin](https://help.linkedin.com/app/answers/detail/a_id/40128/~/adding-a-new-university-page), so that way we will be able to add **OSS University** in our Linkedin profile.
|
- [Add our University page at Linkedin](https://help.linkedin.com/app/answers/detail/a_id/40128/~/adding-a-new-university-page), so in that way we will be able to add **OSS University** in our Linkedin profile.
|
||||||
|
|
||||||
## References
|
## References
|
||||||
|
|
||||||
@ -339,3 +436,4 @@ Add **Open Source Society University** to your [Facebook](https://www.facebook.c
|
|||||||
- [Coursera](https://www.coursera.org/)
|
- [Coursera](https://www.coursera.org/)
|
||||||
- [edX](https://www.edx.org)
|
- [edX](https://www.edx.org)
|
||||||
- [MIT Open Courseware](http://ocw.mit.edu/courses/#electrical-engineering-and-computer-science)
|
- [MIT Open Courseware](http://ocw.mit.edu/courses/#electrical-engineering-and-computer-science)
|
||||||
|
- [Obtaining a Thorough CS Background Online](http://spin.atomicobject.com/2015/05/15/obtaining-thorough-cs-background-online/)
|
||||||
|
310
projects.md
Normal file
310
projects.md
Normal file
@ -0,0 +1,310 @@
|
|||||||
|
# Projects
|
||||||
|
|
||||||
|
Projects created by OSSU's students for each course of our **Computer Science**
|
||||||
|
curriculum.
|
||||||
|
|
||||||
|
### Introduction to Computer Science
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
|||
|
||||||
|
|
||||||
|
### Introduction to Computer Science and Programming Using Python
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
|||
|
||||||
|
|
||||||
|
### Introduction to Computational Thinking and Data Science
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
|||
|
||||||
|
|
||||||
|
### From Nand to Tetris
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Effective Thinking Through Mathematics
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Systematic Program Design- Part 1: The Core Method
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Systematic Program Design- Part 2: Arbitrary Sized Data
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Systematic Program Design- Part 3: Abstraction, Search and Graphs
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Mathematics for Computer Science
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Algorithms, Part I
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Algorithms, Part II
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Analysis of Algorithms
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Functional Programming Principles in Scala
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Principles of Reactive Programming
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Object Oriented Programming in Java
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Software Testing
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Software Debugging
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Calculus One
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Calculus Two: Sequences and Series
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Multivariable Calculus
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Web Application Architectures
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Software Architecture & Design
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Automata
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Engineering Software as a Service (SaaS), Part 1
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Engineering Software as a Service (Saas), Part 2
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Software Processes and Agile Practices
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Startup Engineering
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Introduction to Probability - The Science of Uncertainty
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### The Hardware/Software Interface
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Computer Architecture
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Operating System Engineering
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Operating Systems and System Programming
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Introduction to Computer Networking
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Computer Networks
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Databases
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Introduction to Cloud Computing
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Coding the Matrix: Linear Algebra through Computer Science Applications
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Cryptography I
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Cryptography II
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Applied Cryptography
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Introduction to Cyber Security
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Compilers
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Heterogeneous Parallel Programming
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### UX Design for Mobile Developers
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Computer Graphics
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Artificial Intelligence
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Machine Learning
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Natural Language Processing
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Introduction to Big Data
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### Pattern Discovery in Data Mining
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
||||||
|
|
||||||
|
### The Internet of Things
|
||||||
|
|
||||||
|
Project Title | Description | Authors | Repository
|
||||||
|
:-- | :-- | :--: | :--
|
||||||
|
| | |
|
Loading…
Reference in New Issue
Block a user