OSSU
2026-05-01
I just completed the core material of the OSSU Computer Science curriculum.
My Background
Prior to starting OSSU, I already had an associate degree in computer science from a local community college, and 2 years of software development experience.
One of the reasons I decided to pursue this curriculum was because I didn’t finish my undergrad. I was already working full time writing software, and I never felt the need to continue my studies in traditional education. Why finish my undergrad if I was already gaining experience doing the job I intended to do coming out of college?
My Journey
It took me five years to complete all the courses, but realistically I could’ve done it in two years like the curriculum suggests. But I had taken many breaks between courses. I would only take one course at a time, and do most of my studies on the weekend.
Timeline
Here is a timeline of the 30 courses I took:
- How to Code: Simple Data (June 2021)
- How to Code: Complex Data (August 2022)
- Programming Languages, Part A (January 2023)
- Programming Languages, Part B (July 2023)
- Programming Languages, Part C (July 2023)
- Object-Oriented Design (July 2023)
- Software Architecture (August 2023)
- Design Patterns (August 2023)
- The Missing Semester of Your CS Education (November 2023)
- Build a Modern Computer from First Principles: Nand to Tetris (February 2024)
- Build a Modern Computer from First Principles: Nand to Tetris Part II (May 2024)
- Operating Systems: Three Easy Pieces (April 2025)
- Computer Networking: A Top-Down Approach (May 2025)
- Principles of Secure Coding (June 2025)
- Identifying Security Vulnerabilities (July 2025)
- Exploiting and Securing Vulnerabilities in Java Applications (August 2025)
- Cybersecurity Fundamentals (September 2025)
- Databases: Modeling and Theory (October 2025)
- Databases: Relational Databases and SQL (October 2025)
- Databases: Semistructured Data (October 2025)
- Machine Learning (November 2025)
- Software Engineering: Introduction (November 2025)
- Ethics, Technology and Engineering (November 2025)
- Introduction to Intellectual Property (November 2025)
- Data Privacy Fundamentals(November 2025)
- Computer Graphics (December 2025)
- Calculus (January 2026)
- Mathematics for Computer Science (February 2026)
- Algorithms: Design and Analysis, Part 1 (March 2026)
- Algorithms: Design and Analysis, Part 2 (March 2026)
Notable Events
Some notable events that occurred during my five year journey with OSSU:
- 2021: Started OSSU at the tail-end of the pandemic.
- 2022: Moved from Philadelphia to Miami to work at a startup.
- 2023: Took a break to launch a side project on Product Hunt.
- 2024: Moved from Miami to San Francisco to work at a startup.
- 2025: Locked in. OSSU courses every weekend.
Best Courses
The Nand2Tetris course changed my life. It instilled confidence in me and provided a grass roots framework to reason about topics in the field of computer science. You literally build a computer in this course. It’s such a simple and elegant idea.
The Machine Learning specialization is a great example of what a high quality course looks like. It’s less project focused, but Andrew Ng does a great job breaking down machine learning concepts from first principles. The cadence is: practical example, underlying algorithm, implement in code, and a jupyter notebook to test your intuition.
Takeaways
After OSSU, I now have a solid foundation to reason about ideas in computer science from first principles.
In a traditional school setting, I was easily bored and distracted. I always thought I was a bad student, but OSSU was a perfect self-paced medium for me to grasp the material of a subject and actually learn! Which makes me think of all the other people who struggle to learn in those types of settings too, and if only they could opt for a track like OSSU instead.
The curriculum maintainers put a lot of thought into what courses to feature and it is amongst the best free material accessible to anyone in the world.
After taking all these courses and reading all these books, it’s made me realize that these are actually great on-ramps into researching topics more deeply and coming up with ideas for projects to work on.
I’ve built a habit to make learning a part of my routine going forward.
Coursework
Coursework is a very efficient way for people to learn concepts at the beginning parts of breaking into a new field. – Andrew Ng
https://www.youtube.com/watch?v=0jspaMLxBig (57:00)
It’s easy to get discouraged doing a whole slew of courses, but Andrew Ng lays it out perfectly:
- Course instructors put a lot of effort into making it time efficient for people to learn new concepts.
- It lays the foundation, and it’s ok if you’re less productive when starting out.
- Go onto expanding your learning by working on projects, reading articles and papers.
Education
I often say that pre-AGI education is useful. Post-AGI education is fun. In a similar way, people go to the gym today. We don’t need their physical strength to manipulate heavy objects because we have machines that do that. They still go to the gym. Why do they go to the gym? Because it’s fun, it’s healthy, and you look hot when you have a six-pack. It’s attractive for people to do that in a very deep, psychological, evolutionary sense for humanity. Education will play out in the same way. You’ll go to school like you go to the gym. – Andrej Karpathy
https://www.youtube.com/watch?v=lXUZvyajciY (2:08:34)
I treat learning like going to the gym and exercise. Why do people go to the gym still? We have machines that do heavy lifting for us today.
- It’s fun.
- It’s healthy.
- It’s fulfilling.
This curriculum really made me consider the future of education. Especially in a world of AI tools that help students research and reason about new topics.
For Those Thinking About Taking OSSU
It’s not merely for career training or professional development. It’s for those who want a proper, well-rounded grounding in concepts fundamental to all computing disciplines, and for those who have the discipline, will, and (most importantly!) good habits to obtain this education largely on their own, but with support from a worldwide community of fellow learners.
It’s sort of redundant, but it’s true. Don’t go into this with the expectation of becoming certified or progressing your career. It’s so much more than that.
Go into it with the intention of learning and reasoning about computer science from first principles.
It’s about building a habit to learn, and discovering how you as an individual can learn effectively.
On a more practical note, if you’re rougher on math than programming like I was, Discrete Mathematics for Computer Science helped me immensely.
What’s Next
I’m burned out with courses, especially after a full year of back-to-back courses every weekend. I’m going to spend a good chunk of time working on a backlog of projects I’ve been accumulating over this period.
When I’m ready to get back into it, I plan to pick back up with these courses: Deep Learning and Neural Networks: Zero to Hero.
I’d also like to revisit Discrete Mathematics for Computer Science and more algorithms.
My schedule will likely consist of reading and courses during the week (after work), and weekends dedicated to projects.