About this project
The Open Source Society University (OSSU) computer-science repository provides a complete, self-taught education in computer science using freely available online materials. It is designed for people who want a well-rounded grounding in the fundamental concepts of computing rather than just career-oriented training. The curriculum follows the degree requirements of an undergraduate CS major, minus general education, and is built from courses at institutions such as MIT, Harvard, Princeton, and Stanford.
Key points:
- Courses must be openly enrollable, run regularly or be self-paced, be high quality, and match the ACM/IEEE CS 2013 curriculum guidelines. When no suitable course exists, books are used instead. Additional high-quality but non-curricular materials are listed in extras.
- The curriculum is organized into Intro CS, Core CS, Advanced CS, and a Final Project. Core CS covers programming, mathematics, CS tools, systems, theory, security, applications, and ethics. Advanced CS offers electives across advanced programming, systems, theory, information security, and math.
- Students can study alone or in groups, in order or out of order. A popular approach is to take mathematics in parallel with introductory CS courses. The estimated time to complete the curriculum is about two years at roughly 20 hours per week; a spreadsheet is provided to calculate progress and estimated completion dates.
- Nearly all course material is free, though some courses charge for graded assignments or certificates. Financial aid is available on Coursera and edX.
- The community is active on a Discord server, and GitHub issues are used for discussing course problems and curriculum changes. The project also provides contributing and help guides.
- The README warns against outdated third-party applications, templates, or abandoned tools that appear when searching for OSSU, recommending the official website and GitHub repository as the only authoritative sources.
The curriculum assumes high school math (algebra, geometry, pre-calculus) as a prerequisite, and some advanced systems courses assume basic physics. The final project lets students demonstrate their knowledge and receive peer evaluation from the worldwide community.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.