OSSU-computer-science/extras/courses.md
Chris MacKay 69c68191fc adding skiena's algorithm and challenges courses
These courses are important resources for people preparing for programming competitions or interview questions
2016-04-19 14:45:59 -04:00

8.0 KiB

Computer Science - Extra Resources

Courses


Introduction to Computer Science

Courses Duration Effort
Introduction to Computer Science (Udacity) 7 weeks 10-20 hours/week
Introduction to Computer Science 12 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

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

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)

Computer Architecture

Courses Duration Effort
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

Computer Networks

Courses Duration Effort
Introduction to Computer Networking - 5-10 hours/week

Databases

Cloud Computing

Math (Linear Algebra)

Courses Duration Effort
[Linear Algebra - Foundations to Frontiers (LAFF)] (https://www.edx.org/course/linear-algebra-foundations-frontiers-utaustinx-ut-5-03x) 15 weeks 8 hours/week

Cryptography

Courses Duration Effort
Applied Cryptography 8 weeks 6 hours/week
Cryptography 7 weeks 4-7 hours/week

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

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

Natural Language Processing

Big Data

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