DEV Community

Karim Safan
Karim Safan

Posted on • Edited on

Unlocking Free Computer Science Education With OSSU

Image descriptionAs technology rapidly advances, learning in fields like programming and computer science has become much easier than before.

One of the paths that many people are exploring is "OSSU" or "Open Source Society University."

This is an open-source curriculum, available to anyone in the world, offering computer science education at a quality comparable to traditional universities.

This path includes free online courses organized in a way that ensures you learn everything, from the basics to advanced skills.

In this post, we will talk about the importance of this path and how you can benefit from it to achieve your dreams in programming and software development.

The "OSSU" or "Open Source Society University" curriculum is a completely open and free online curriculum aimed at providing high-level computer science education, similar to what is offered at major universities, but accessible to everyone.

The idea is that this curriculum is arranged in a certain order of online courses from well-known universities and sources such as MIT and Harvard, and all of them are free.

Advantages of the curriculum:

Completely free: There are no fees or costs; all courses are available on open platforms like Coursera and edX.

Organized and structured: The courses are arranged in a way that ensures you learn from the basics, such as mathematics and introductory programming, to advanced topics like artificial intelligence and cybersecurity.

Flexible learning: You can learn at a time and pace that suits you, which means you can balance studying with work or any other commitments you have.

Supportive community: There is a large community of learners studying the same curriculum, making it easier to exchange experiences and get help when needed.

Courses you will study:

Computer Science Basics: You start by learning basic mathematics, logic, and programming in Python.

Advanced Mathematics: Subjects like linear algebra, calculus, and statistics.

Specialized Topics: Subjects like databases, networks, artificial intelligence, and software engineering.

Practical Projects: At the end of each phase, there are practical projects to apply what you’ve learned in real life.

How to start:
You can visit the OSSU page on GitHub, where you’ll find the full curriculum with links to the courses and additional information on everything you need to know to get started.

https://github.com/ossu/computer-science

If you don’t complete a course, you can continue learning through books. There is a collection of other books and courses that are not part of the main curriculum but are available in a dedicated repository.

Additional courses:
https://github.com/ossu/computer-science/blob/master/extras/courses.md

Additional books:
https://github.com/ossu/computer-science/blob/master/extras/readings.md

The curriculum is divided into three main categories:
1 - Intro CS: This consists of two courses that you can choose from to see if this curriculum or field is suitable for you. The courses begin with Python programming.

2 - Core CS: This is where the real work starts and roughly corresponds to the first three years of a CS curriculum at a university. You’ll learn new languages like Racket and Standard ML and cover advanced topics in these languages.

3 - Advanced CS: This aligns with the final year of a computer science degree, where you take elective courses based on your interests.

4 - Final Project: A project for students to verify their knowledge and apply the curriculum in practice.

How long is this path?
You can finish it in about two years if you plan well and dedicate around 20 hours per week to studying. You can use this spreadsheet to track your progress:

https://docs.google.com/spreadsheets/d/1bkUU90y4rKYQHwY5AR2iX6iiPTrPEsYs75GkCAkrgm4/copy

All the courses in the curriculum are completely free, but there may be fees for course completion certificates.

The most important part of the curriculum is Core CS. You can study the course on your own or join a group by joining the curriculum’s

Discord community:
https://discord.gg/wuytwK5s9h

Each course in the repository contains:
1 - Prerequisites: What you should know before the course.
2 - Effort: How many hours of study per week the course requires.
3 - Duration: The length of the course.

Additional Resources:
https://github.com/ossu/computer-science/blob/master/extras/readings.md

Top comments (0)