computer-science

Awesome List

ossu/computer-science

Free self-taught computer science curriculum using online materials.

Overview

OSSU Computer Science is a complete, free self-taught curriculum covering foundational and advanced CS topics. It uses online materials from top universities like MIT and Harvard, organized into intro, core, and advanced sections, with a final project. Supported by a global community of learners.

README Preview

\n\nOpen Source Society University\n\n  Path to a free self-taught education in Computer Science!\n\n\n  \n    \n  \n    \n\n\n\n# Contents\n\n- [Summary](#summary)\n- [Community](#community)\n- [Curriculum](#curriculum)\n- [Code of conduct](#code-of-conduct)\n- [Team](#team)\n\n# Summary\n\nThe OSSU curriculum is a **complete education in computer science** using online materials.\nIt's not merely for career training or professional development.\nIt's for those who want a proper, *well-rounded* grounding in concepts fundamental to all computing disciplines,\nand for those who have the discipline, will, and (most importantly!) good habits to obtain this education largely on their own,\nbut with support from a worldwide community of fellow learners.\n\nIt is designed according to the degree requirements of undergraduate computer science majors, minus general education (non-CS) requirements,\nas it is assumed most of the people following this curriculum are already educated outside the field of CS.\nThe courses themselves are among the very best in the world, often coming from Harvard, Princeton, MIT, etc.,\nbut specifically chosen to meet the following criteria.\n\n**Courses must**:\n- Be open for enrollment\n- Run regularly (ideally in self-paced format, otherwise running multiple times per year)\n- Be of generally high quality in teaching materials and pedagogical principles\n- Match the curricular standards of the [CS 2013](CURRICULAR_GUIDELINES.md): Curriculum Guidelines for Undergraduate Degree Programs in Computer Science\n\nWhen no course meets the above criteria, the coursework is supplemented with a book.\nWhen there are courses or books that don't fit into the curriculum but are otherwise of high quality,\nthey belong in [extras/courses](extras/courses.md) or [extras/readings](extras/readings.md).\n\n**Organization**. The curriculum is designed as follows:\n- *Intro CS*: for students to try out CS and see if it's right for them\n- *Core CS*: corresponds rou

FAQ (3)

informational
What is the free alternative to the OSSU Game Theory course that is no longer available on Coursera?

Use Tim Roughgarden's free Algorithmic Game Theory course from Stanford. The archived course site at https://timroughgarden.org/f13/f13.html includes lecture notes, exercises, weekly exercises, biweekly problem sets, and a take-home final. Video lectures are available at https://www.youtube.com/playlist?list=PLEGCF-WLh2RJBqmxvZ0_ie-mleCFhi2N4, and the free textbook resources are linked at https://www.cambridge.org/us/universitypress/subjects/computer-science/algorithmics-complexity-computer-algebra-and-computational-g/algorithmic-game-theory?format=HB#resources. The course runs for 10 weeks; plan for roughly 12 hours per week, including lectures, readings, and assignments. This replacement was accepted in OSSU issue #1394.

GitHub Issue #1394
informational
What should I know before starting the OSSU computer science curriculum?

Tips from a graduate who completed OSSU full-time in 2 years (they qualified to skip math prerequisites thanks to prior experience teaching college math): 1. Align your goals upfront: OSSU focuses heavily on computer science theory (not just applied programming), so confirm this matches your expectations before starting. 2. Complete the Mindshift learning mindset courses (listed in OSSU's EXTRAS section) first to build sustainable learning habits and maintain motivation through the program. 3. Standout highest-value core courses per the graduate: CS50, PLABC, Nand2Tetris, Core Theory (algorithms), and Machine Learning. Core Theory and PLABC were rated the most practically useful. 4. Build flexibility into your schedule: The graduate faced personal emergencies, multi-week to multi-month motivation slumps, hardware failures, and COVID-19 disruptions during their study period, so pauses and setbacks are normal.

GitHub Issue #727
Troubleshooting
How can I access the UW CSE 341 Programming Languages course when the 2019 autumn link is unavailable?

Use a working archived quarter instead of the dead 19au link. Replace https://courses.cs.washington.edu/courses/cse341/19au/#lectures with https://courses.cs.washington.edu/courses/cse341/19sp/#lectures. The 2020 winter page and the latest version linked from https://courses.cs.washington.edu/courses/cse341/ may also work. Alternatively, access the Coursera version through the OSSU timeline.

GitHub Issue #1385