mirror of
https://github.com/ossu/computer-science.git
synced 2024-10-01 01:26:01 -04:00
251 lines
11 KiB
Markdown
251 lines
11 KiB
Markdown
|
||
![open source society university](http://i.imgur.com/h8xjrrj.png)
|
||
|
||
:mortar_board: **Path to a self-taught graduation in Computer Science!**
|
||
|
||
## Contents
|
||
|
||
- [About](#about)
|
||
- [Becoming an OSS student](#becoming-an-oss-student)
|
||
- [Topics](#topics)
|
||
- [Next Goals](#next-goals)
|
||
- [References](#references)
|
||
|
||
## About
|
||
|
||
This is a **solid path** for you that want to graduate in a Computer Science course in your own time, **for free**, with courses from the **best universities** of the World.
|
||
|
||
Here we will <strike>try to</strike> choose a maximum of **3** courses for each category. Futurely, more categories and/or courses can be added to this list or in a more advanced list.
|
||
|
||
Initially, we will also give preference for MOOC (Massive Open Online Course) type of courses because those courses were created with our style of learning in mind.
|
||
|
||
## Becoming an OSS student
|
||
|
||
Your registration for this graduation course will be effectuated after you create your profile in our [students](/students) folder.
|
||
|
||
> "How can I do this?"
|
||
|
||
Just fork this repository and create a markdown file named with your **GitHub username**. It’s that simple.
|
||
|
||
Use the model below to create your own file:
|
||
|
||
```
|
||
# Student Profile
|
||
|
||
**Name**: YOUR NAME
|
||
**GitHub**: [@your_username]()
|
||
**Twitter**: [@your_username]()
|
||
**Linkedin**: [link]()
|
||
|
||
# Completed Courses
|
||
|
||
**Name of the Section**
|
||
|
||
Course||Files
|
||
:--|:--:
|
||
Course Name| [link]()
|
||
```
|
||
|
||
> "Why should I do this?"
|
||
|
||
Making a [public commitment](http://renewablewealth.com/articles/the-power-of-a-public-commitment/), we have much more chances to **succeed** in our graduation, know better our fellows and share the things that we have done.
|
||
|
||
For those reasons we are using that strategy.
|
||
|
||
---
|
||
|
||
## Topics
|
||
|
||
- [Introduction](#introduction)
|
||
- [Program Design](#program-design)
|
||
- [Programming Paradigms](#programming-paradigms)
|
||
- [Software Testing](#software-testing)
|
||
- [Math](#math)
|
||
- [Algorithms](#algorithms)
|
||
- [Software Architecture](#software-architecture)
|
||
- [Software Engineering](#software-engineering)
|
||
- [Operating Systems](#operating-systems)
|
||
- [Networks](#networks)
|
||
- [Databases](#databases)
|
||
- [Cloud Computing](#cloud-computing)
|
||
- [Cryptography](#cryptography)
|
||
- [Compilers](#compilers)
|
||
|
||
- [UX Design](#ux-design)
|
||
- [Artificial Intelligence](#artificial-intelligence)
|
||
- [Machine Learning](#machine-learning)
|
||
- [Natural Language Processing](#natural-language-processing)
|
||
- [Internet of Things](#internet-of-things)
|
||
- [Graphs](#graphs)
|
||
- [Data Mining](#data-mining)
|
||
- [Programming Languages](#programming-languages)
|
||
|
||
---
|
||
|
||
### Introduction
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Introduction to Computer Science](https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#!)| 9 ~ 15 weeks|[⎙]()| -
|
||
[Introduction to Computer Science and Programming Using Python](https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-5#!)| 9 weeks|[⎙]()| -
|
||
[Introduction to Computational Thinking and Data Science](https://www.edx.org/course/introduction-computational-thinking-data-mitx-6-00-2x-2#!)| 10 weeks|[⎙]()| -
|
||
|
||
### Program Design
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Systematic Program Design- Part 1: The Core Method](https://www.edx.org/course/systematic-program-design-part-1-core-ubcx-spd1x-0)| 5 weeks|[⎙]()| -
|
||
[Systematic Program Design- Part 2: Arbitrary Sized Data](https://www.edx.org/course/systematic-program-design-part-2-ubcx-spd2x)| 5 weeks|[⎙]()| -
|
||
[Systematic Program Design- Part 3: Abstraction, Search and Graphs](https://www.edx.org/course/systematic-program-design-part-3-ubcx-spd3x)| 5 weeks|[⎙]()| -
|
||
|
||
### Programming Paradigms
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Introduction to Functional Programming](https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0#ct-read-review-widget)| 7 weeks|[⎙]()| -
|
||
[Principles of Reactive Programming](https://www.coursera.org/course/reactive)| 7 weeks|[⎙]()| -
|
||
[Programming Languages](https://www.coursera.org/course/proglang)| 8-16 hours/week |[⎙]()| -
|
||
[Functional Programming Principles in Scala](https://www.coursera.org/course/progfun)| 7 weeks|[⎙]()| -
|
||
|
||
### Software Testing
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Software Testing](https://www.udacity.com/course/software-testing--cs258)| 4 weeks|[⎙]()| -
|
||
[Software Debugging](https://www.udacity.com/course/software-debugging--cs259)| 8 weeks|[⎙]()| -
|
||
|
||
### Math
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Effective Thinking Through Mathematics](https://www.edx.org/course/effective-thinking-through-mathematics-utaustinx-ut-9-01x)| 9 weeks|[⎙]()| -
|
||
[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|[⎙]()| -
|
||
[Applications of Linear Algebra Part 2](https://www.edx.org/course/applications-linear-algebra-part-2-davidsonx-d003x-2)| 4 weeks|[⎙]()| -
|
||
[Linear and Discrete Optimization](https://www.coursera.org/course/linearopt)| 3-6 hours/week |[⎙]()| -
|
||
[Probabilistic Graphical Models](https://www.coursera.org/course/pgm)| 11 weeks|[⎙]()| -
|
||
[Game Theory](https://www.coursera.org/course/gametheory)| 9 weeks|[⎙]()| -
|
||
|
||
### Algorithms
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Algorithms, Part I](https://www.coursera.org/course/algs4partI)| 6 weeks|[⎙]()| -
|
||
[Algorithms, Part II](https://www.coursera.org/course/algs4partII)| 6 weeks|[⎙]()| -
|
||
[Analysis of Algorithms](https://www.coursera.org/course/aofa)| 6 weeks|[⎙]()| -
|
||
|
||
### Software Architecture
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Web Application Architectures](https://www.coursera.org/course/webapplications)| 6-9 hours/week|[⎙]()| -
|
||
[Microservice Architectures TODO]()| - |[⎙]()| -
|
||
|
||
### Software Engineering
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[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|[⎙]()| -
|
||
[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|[⎙]()| -
|
||
[Software Product Management Specialization](https://www.coursera.org/specializations/product-management)| - |[⎙]()| -
|
||
|
||
### Operating Systems
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Operating System Engineering](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-828-operating-system-engineering-fall-2012/)| - |[⎙]()| -
|
||
[Operating Systems and System Programming](https://www.youtube.com/watch?v=XgQo4JkN4Bw&list=PL3289DD0D0F0CD4A3)| - |[⎙]()| -
|
||
|
||
### Networks
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Computer Networks](https://www.coursera.org/course/comnetworks)| 4–12 hours/week |[⎙]()| -
|
||
[Software Defined Networking](https://www.coursera.org/course/sdn1)| 7-10 hours/week |[⎙]()| -
|
||
|
||
### Databases
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Introduction to Databases](https://www.coursera.org/course/db)| - |[⎙]()| -
|
||
[Database Design](https://www.udemy.com/database-design/#reviews)| 9 hours |[⎙]()| -
|
||
[Database Management Essentials](https://www.coursera.org/learn/database-management)| weeks|[⎙]()| -
|
||
|
||
### Cloud Computing
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Introduction to Cloud Computing](https://www.edx.org/course/introduction-cloud-computing-ieeex-cloudintro-x-0)| 4 weeks|[⎙]()| -
|
||
[Cloud Computing Specialization](https://www.coursera.org/specializations/cloudcomputing)| - |[⎙]()| -
|
||
|
||
### Cryptography
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Cryptography I](https://www.coursera.org/course/crypto)| 6 weeks|[⎙]()| -
|
||
[Cryptography II](https://www.coursera.org/course/crypto2)| 6 weeks|[⎙]()| -
|
||
[Applied Cryptography](https://www.udacity.com/course/applied-cryptography--cs387)| 8 weeks|[⎙]()| -
|
||
|
||
### Compilers
|
||
|
||
Course|Duration|Files|Status
|
||
:--|:--:|:--:|:--:
|
||
[Compilers](https://www.coursera.org/course/compilers)| 11 weeks|[⎙]()| -
|
||
|
||
### Artificial Intelligence
|
||
|
||
1. [Artificial Intelligence](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-034-artificial-intelligence-fall-2010/) - [⎙]()
|
||
|
||
### Machine Learning
|
||
|
||
1. [Practical Machine Learning](https://www.coursera.org/course/predmachlearn) - [⎙]()
|
||
1. [Machine Learning](https://www.coursera.org/learn/machine-learning) - [⎙]()
|
||
1. [Neural Networks for Machine Learning](https://www.coursera.org/course/neuralnets) - [⎙]()
|
||
|
||
### Natural Language Processing
|
||
|
||
1. [Natural Language Processing](https://www.coursera.org/course/nlangp) - [⎙]()
|
||
1. [Natural Language Processing](https://www.coursera.org/course/nlp) - [⎙]()
|
||
|
||
### Internet of Things
|
||
|
||
### Graphs
|
||
|
||
### Data Mining
|
||
|
||
1. [Data Mining](https://www.coursera.org/specialization/datamining/20?utm_medium=catalog) - [⎙]()
|
||
|
||
### Parallel Programming
|
||
|
||
1. [Parallel Computing](http://ocw.mit.edu/courses/mathematics/18-337j-parallel-computing-fall-2011/) - [⎙]()
|
||
1. [Heterogeneous Parallel Programming](https://www.coursera.org/course/hetero) - [⎙]()
|
||
|
||
### Programming Languages
|
||
|
||
1. [Practical Programming in C](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-087-practical-programming-in-c-january-iap-2010/) - [⎙]()
|
||
1. [Introduction to C Memory Management and C++ Object-Oriented Programming](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-088-introduction-to-c-memory-management-and-c-object-oriented-programming-january-iap-2010/) - [⎙]()
|
||
1. [Effective Programming in C and C++](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-s096-effective-programming-in-c-and-c-january-iap-2014/) - [⎙]()
|
||
|
||
### Others
|
||
|
||
1. [Introduction to Functional Programming](https://www.edx.org/course/introduction-functional-programming-delftx-fp101x#!)
|
||
1. [Engineering Software as a Service](https://www.edx.org/course/engineering-software-service-uc-berkeleyx-cs169-1x)
|
||
1. [Engineering Software as a Service, Part 2](https://www.edx.org/course/engineering-software-service-part-2-uc-berkeleyx-cs169-2x#!)
|
||
1. [Automata, Computability, and Complexity](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automata-computability-and-complexity-spring-2011/) - [⎙]()
|
||
1. [Computational Biology: Genomes, Networks, Evolution](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-047-computational-biology-genomes-networks-evolution-fall-2008/) - [⎙]()
|
||
1. [Creating Video Games](http://ocw.mit.edu/courses/comparative-media-studies-writing/cms-611j-creating-video-games-fall-2013/) - [⎙]()
|
||
1. [Computer Graphics](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-837-computer-graphics-fall-2012/) - [⎙]()
|
||
1. [User Interface Design and Implementation](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-831-user-interface-design-and-implementation-spring-2011/) - [⎙]()
|
||
1. [Making Sense of Data](https://datasense.withgoogle.com/course) - [⎙]()
|
||
1. [Data Science](https://www.coursera.org/specialization/jhudatascience/1?utm_medium=courseDescripTop) - [⎙]()
|
||
|
||
## Next Goals
|
||
|
||
- [Adding 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
|
||
|
||
- [Google - Guide for Technical Development](https://www.google.com/about/careers/students/guide-to-technical-development.html)
|
||
- [Coursera](https://www.coursera.org/)
|
||
- [edX](https://www.edx.org)
|
||
- [MIT Open Courseware](http://ocw.mit.edu/courses/#electrical-engineering-and-computer-science)
|