Skip to content

MantiMantilla/OSSU-Curriculum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSSU-Curriculum

Open Source Society University - Computer Science

Overview and tracking completion of the OSSU curriculum. All completed or ongoing courses have their respective repos which have been nested here under .\src\ as submodules.

Courses

The following is an exhaustive list of the courses I have completed or intend to complete in linear order. Courses that don't belong to the Computer Science curriculum will be labeled as such with an arrow (<-). Courses which I might not take or decide to drop half-way, will be marked with a question mark (?).

Intro CS

Core CS

Core Programming

Core Math

  • Calculus 1A
  • Calculus 1B
  • Calculus 1C
  • Mathematics for Computer Science

CS Tools

  • The Missing Semester of your CS Education

Core Systems

  • Nand to Tetris Part I
  • Nand to Tetris Part II
  • OSTEP
  • Linux From Scratch <- ?
  • Computer Networking: a Top-Down Approach

Core Theory

  • Divide and Conquer, Sorting and Searching, and Randomized Algorithms
  • Graph Search, Shortest Paths, and Data Structures
  • Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming
  • Shortest Path Revisited, NP-Complete Problems and What to do About Them

Core Security

  • Cybersecurity Fundamentals
  • Principles of Secure Coding
  • Identifying Security Vulnerabilities
  • Identifying Security Vulnerabilities in C/C++ Programming

Core Applications

  • Databases: Modelling and Theory
  • Databases: Relational Databases and SQL
  • Databases: Semi-structured Data
  • Machine Learning
  • Computer Graphics
  • Software Engineering: Introduction

Core Ethics

  • Ethics, Technology and Engineering
  • Introduction to Intellectual Property
  • Data Privacy Fundamentals

MLOps | Machine Learning Operations Specialization

  • Python Essentials for MLOps <-
  • DevOps, DataOps, MLOps <-
  • MLOps Platforms: Amazon SageMaker and Azure ML <-
  • MLOps Tools: MLflow and Hugging Face <-

Advanced CS

As per the curriculum, students need not take every course from Advanced CS, but should take every course relevant to their field of choice. The following are included tentatively.

Advance Programming

  • Parallel Programming
  • Compilers
  • Introduction to Haskell
  • Learn Prolog Now!
  • Software Debugging
  • Software Testing

Advanced Systems

  • Computation Structures 1: Digital Circuits
  • Computation Structures 2: Computer Architecture
  • Computation Structures 3: Computer Organization

Advanced Theory

  • Computational Geometry

Advanced Information Security

  • Web Security Fundamentals
  • Secure Software Development: Requirements, Design, and Reuse
  • Secure Software Development: Implementation
  • Secure Software Development: Verification and More Specialized Topics

Advanced Math

  • Essence of Linear Algebra
  • Linear Algebra
  • Introduction to Numerical Methods
  • Introduction to Formal Logic
  • Probability

Final Project

  • ?

This would conclude an equivalent undergraduate in Computer Science. I have taken many other courses relevant to computer science (mostly from my B.S. and M.S. in industrial engineering) that I didn't bother to include because they predate this commitment to formally educating myself in these topics.

Advanced Extras

This much is out of scope for now but will consider adding a few later on. A fine resource for OSSUians, by OSSUians.

  • ?

About

Overview and tracking completion of the OSSU curriculum.

Resources

License

Stars

Watchers

Forks