/OSS

Open Source Society

Introduction to Computer Science

Courses Duration Effort
Introduction to Computer Science 12 weeks 10-20 hours/week
Introduction to Computer Science and Programming Using Python 9 weeks 15 hours/week
Introduction to Computational Thinking and Data Science 10 weeks 15 hours/week
From Nand to Tetris 7 weeks 5-10 hours/week

Math (Mathematical Thinking)

Courses Duration Effort
Effective Thinking Through Mathematics 9 weeks 5 hours/week

Program Design

Courses Duration Effort
Systematic Program Design- Part 1: The Core Method 5 weeks 8-12 hours/week
Systematic Program Design- Part 2: Arbitrary Sized Data 5 weeks 8-12 hours/week
Systematic Program Design- Part 3: Abstraction, Search and Graphs 5 weeks 8-12 hours/week

Math (Discrete Math)

Courses Duration Effort
Mathematics for Computer Science 12 weeks 5 hours/week

Algorithms

Courses Duration Effort
Algorithms, Part I 6 weeks 6-12 hours/week
Algorithms, Part II 6 weeks 6-12 hours/week
Analysis of Algorithms 6 weeks 6-8 hours/week

Programming Paradigms

Courses Duration Effort
Functional Programming Principles in Scala 7 weeks 5-7 hours/week
Principles of Reactive Programming 7 weeks 5-7 hours/week
Object Oriented Programming in Java 6 weeks 4-6 hours/week

Software Testing

Courses Duration Effort
Software Testing 4 weeks 6 hours/week
Software Debugging 8 weeks 6 hours/week

Math (Calculus)

Courses Duration Effort
Calculus One 16 weeks 8-10 hours/week
Calculus Two: Sequences and Series 7 weeks 9-10 hours/week
Multivariable Calculus 6 weeks 5-7 hours/week

Software Architecture

Courses Duration Effort
Web Application Architectures 6 weeks 6-9 hours/week
Software Architecture & Design 8 weeks 6 hours/week

Theory

Courses Duration Effort
Automata 6 weeks 8-10 hours/week

Software Engineering

Courses Duration Effort
Engineering Software as a Service (SaaS), Part 1 9 weeks 12 hours/week
Engineering Software as a Service (Saas), Part 2 8 weeks 12 hours/week
Software Processes and Agile Practices 4 weeks 6-8 hours/week
Startup Engineering 12 weeks 2-20 hours/week

Math (Probability)

Courses Duration Effort
Introduction to Probability - The Science of Uncertainty 16 weeks 12 hours/week

Computer Architecture

Courses Duration Effort
The Hardware/Software Interface 8 weeks 10-15 hours/week
Computer Architecture - 5-8 hours/week

Operating Systems

Courses Duration Effort
Operating System Engineering - -
Operating Systems and System Programming 10 weeks 2-3 hours/week

Computer Networks

Courses Duration Effort
Introduction to Computer Networking - 5-10 hours/week
Computer Networks - 4–12 hours/week

Databases

Courses Duration Effort
Databases 12 weeks 8-12 hours/week

Cloud Computing

Courses Duration Effort
Introduction to Cloud Computing 4 weeks 1 hour/week

Math (Linear Algebra)

Courses Duration Effort
Coding the Matrix: Linear Algebra through Computer Science Applications 10 weeks 7-10 hours/week

Cryptography

Courses Duration Effort
Cryptography I 6 weeks 5-7 hours/week
Cryptography II 6 weeks 6-8 hours/week
Applied Cryptography 8 weeks 6 hours/week

Security

Courses Duration Effort
Introduction to Cyber Security 8 weeks 3 hours/week

Compilers

Courses Duration Effort
Compilers 9 weeks 6-8 hours/week

Parallel Computing

Courses Duration Effort
Heterogeneous Parallel Programming 11 weeks 8-10 hours/week

UX Design

Courses Duration Effort
UX Design for Mobile Developers 6 weeks 6 hours/week

Computer Graphics

Courses Duration Effort
Computer Graphics 6 weeks 12 hours/week

Artificial Intelligence

Courses Duration Effort
Artificial Intelligence 12 weeks 15 hours/week

Machine Learning

Courses Duration Effort
Machine Learning 11 weeks 4-6 hours/week

Natural Language Processing

Courses Duration Effort
Natural Language Processing 10 weeks 8-10 hours/week

Big Data

Courses Duration Effort
Introduction to Big Data 3 weeks 5-6 hours/week

Data Mining

Courses Duration Effort
Pattern Discovery in Data Mining 4 weeks 4-6 hours/week

Internet of Things

Courses Duration Effort
The Internet of Things 4 weeks 2 hours/week