mirror of
https://github.com/ossu/computer-science.git
synced 2026-04-11 14:21:57 +08:00
12 KiB
12 KiB
Computer Science - Extra Resources
Courses
- Introduction to Computer Science
- Math (Mathematical Thinking)
- Program Design
- Math (Discrete Math)
- Algorithms
- Programming Paradigms
- Software Testing
- Math (Calculus)
- Software Architecture
- Theory
- Software Engineering
- Math (Probability)
- Computer Architecture
- Operating Systems
- Computer Networks
- Databases
- Cloud Computing
- Math (Linear Algebra)
- Cryptography
- Security
- Compilers
- Parallel Computing
- UX Design
- Computer Graphics
- Artificial Intelligence
- Machine Learning
- Natural Language Processing
- Big Data
- Data Mining
- Internet of Things
Introduction to Computer Science
| Courses | Duration | Effort |
|---|---|---|
| Introduction to Computer Science and Programming Using Python | 9 weeks | 15 hours/week |
| From Nand to Tetris (Part 1) | 6 weeks | 5-10 hours/week |
| Introduction to Computer Science (Udacity) | 7 weeks | 10-20 hours/week |
| An Introduction to Interactive Programming in Python (Part 1) | 5 weeks | - |
| An Introduction to Interactive Programming in Python (Part 2) | - | - |
| Introduction to Computational Thinking and Data Science | 10 weeks | 15 hours/week |
| Introduction to Programming with Java Part 1: Starting to Code with Java | 5 weeks | 5-7 hours/week |
| Introduction to Programming with Java Part 2: Writing Good Code | 5 weeks | 5-7 hours/week |
| CS For All: Introduction to Computer Science and Python Programming | 14 weeks | 5-7 hours/week |
| Programming Basics | 9 weeks | 8 hours/week |
| Introduction to Logic | 8 weeks | 4-10 hours/week |
| Introduction to Programming with MATLAB | - | - |
Math (Mathematical Thinking)
| Courses | Duration | Effort |
|---|---|---|
| Introduction to Mathematical Thinking | 10 weeks | 8-10 hours/week |
Program Design
Math (Discrete Math)
Algorithms
| Courses | Duration | Effort |
|---|---|---|
| Analysis of Algorithms (Skiena) | 15 weeks | 6-8 hours/week |
| Analysis of Algorithms (Sedgewick) | 6 weeks | 6-8 hours/week |
| Programming Challenges (Skiena) | 14 weeks | 6-8 hours/week |
| Mathematical Logic and Algorithms Theory | 7 weeks | 3-4 hours/week |
| Algorithmic Toolbox | 5 weeks | 4-8 hours/week |
| Algorithms on Graphs and Trees | - | - |
| Algorithms on Strings | - | - |
| Advanced Algorithms and Complexity | - | - |
| Algorithmic Thinking (Part 1) | - | - |
| Algorithmic Thinking (Part 2) | - | - |
| Statistical Mechanics: Algorithms and Computations | - | - |
| Approximation Algorithms Part I | - | - |
| Approximation Algorithms Part II | - | - |
| Algorithms: Design and Analysis, Part 1 | 6 weeks | 5-7 hours/week |
| Algorithms: Design and Analysis, Part 2 | 6 weeks | 6-10 hours/week |
Programming Paradigms
| Courses | Duration | Effort |
|---|---|---|
| Principles of Reactive Programming | 7 weeks | 5-7 hours/week |
| Object-Oriented Programming | 4 weeks | 8 hours/week |
| Introduction to Functional Programming | 7 weeks | 4-6 hours/week |
Software Testing
Math (Calculus)
| Courses | Duration | Effort |
|---|---|---|
| Pre-Calculus | 10 weeks | 10-12 hours/week |
| Multivariable Calculus | 6 weeks | 5-7 hours/week |
Software Architecture
| Courses | Duration | Effort |
|---|---|---|
| Web Application Architectures | 6 weeks | 6-9 hours/week |
Theory
Software Engineering
| Courses | Duration | Effort |
|---|---|---|
| Agile Development Using Ruby on Rails - Basics | 9 weeks | 12 hours/week |
| Agile Development Using Ruby on Rails - Advanced | 8 weeks | 12 hours/week |
| Startup Engineering | 12 weeks | 2-20 hours/week |
Math (Probability)
| Courses | Duration | Effort |
|---|---|---|
| Introduction to Probability and Data | - | - |
Computer Architecture
| Courses | Duration | Effort |
|---|---|---|
| Certified Information Systems Auditor | - | 8.5 hours |
| The Hardware/Software Interface | 8 weeks | 10-15 hours/week |
Operating Systems
| Courses | Duration | Effort |
|---|---|---|
| Operating System Engineering | - | - |
| Introduction to Linux | 8 weeks | 5-8 hours/week |
| CompTIA Linux+ | - | 5.25 hours |
| Introduction to Operating Systems | 8 weeks | 5-8 hours/week |
| Advanced Operating Systems | 5 weeks | 5-8 hours/week |
Computer Networks
| Courses | Duration | Effort |
|---|---|---|
| Introduction to Computer Networking | - | 5-10 hours/week |
| CompTIA Network+ | - | 32 hours |
| Cisco CCNA | - | 15.5 hours |
| Networking for Web Developers | - | 12 hours |
| Computer Networking | 12 weeks | 5-8 hours/week |
Databases
| Courses | Duration | Effort |
|---|---|---|
| Using Databases with Python | 5 weeks | 2-3 hours/week |
Cloud Computing
| Courses | Duration | Effort |
|---|---|---|
| CompTIA Cloud+ | - | 2.5 hours |
| Cloud Computing Concepts | 5 weeks | 4-8 hours/week |
| Cloud Computing Concepts: Part 2 | 5 weeks | 4-8 hours/week |
| Cloud Computing Applications | 5 weeks | 10-15 hours/week |
Math (Linear Algebra)
| Courses | Duration | Effort |
|---|---|---|
| Linear Algebra - Foundations to Frontiers (LAFF) | 15 weeks | 8 hours/week |
Cryptography
| Courses | Duration | Effort |
|---|---|---|
| Applied Cryptography | 8 weeks | 6 hours/week |
| Cryptography | 7 weeks | 4-7 hours/week |
| Cryptography | - | 2.9 hours |
Security
| Courses | Duration | Effort |
|---|---|---|
| Usable Security | 7 weeks | 5-8 hours/week |
| Software Security | 6 weeks | 3-5 hours/week |
| Cybersecurity and Its Ten Domains | 7 weeks | 4-7 hours/week |
| Designing and Executing Information Security Strategies | 10 weeks | 4-6 hours/week |
| CompTIA Security+ | - | 9.5 hours |
| Cyberwar, Surveillance and Security | 6 weeks | 2-3 hours/week |
| Computer and Hacking Forensics | - | 7.1 hours |
| Secure Coding | - | 9.5 hours |
Compilers
Parallel Computing
UX Design
Computer Graphics
Artificial Intelligence
| Courses | Duration | Effort |
|---|---|---|
| Discrete Optimization | 9 weeks | 10-20 hours/week |
| Intro to Artificial Intelligence | 16 weeks | 6-10 hours/week |
Machine Learning
| Courses | Duration | Effort |
|---|---|---|
| Intro to Machine Learning | 10 weeks | 6-10 hours/week |
| Machine Learning for Data Science and Analytics | 5 weeks | 7-10 hours/week |
Natural Language Processing
Big Data
| Courses | Duration | Effort |
|---|---|---|
| Big Data for Smart Cities | 4 weeks | 3-5 hours/week |
| Processing Big Data with Azure HDInsight | 5 weeks | 3-4 hours/week |
| Big Data Science with the BD2K-LINCS Data Coordination and Integration Center | 7 weeks | 4-5 hours/week |
Data Mining
| Courses | Duration | Effort |
|---|---|---|
| Mining Massive Datasets | 7 weeks | 8-10 hours/week |
| Text Retrieval and Search Engines | - | - |
| Text Mining and Analytics | - | - |
| Cluster Analysis in Data Mining | - | - |
Internet of Things
| Courses | Duration | Effort |
|---|---|---|
| Introduction to the Internet of Things and Embedded Systems | 4 weeks | 1-3 hours/week |
| Internet of Things: How did we get here? | 2 weeks | 2-3 hours/week |
| Internet of Things: Setting Up Your DragonBoard™ Development Platform | 10 weeks | 2-3 hours/week |
| Internet of Things: Sensing and Actuation From Devices | 6 weeks | 3-5 hours/week |
| Internet of Things: Communication Technologies | 4 weeks | 1 hours/week |
| Internet of Things: MultimediaTechnologies | 3 weeks | 1-2 hours/week |