⭐ Hit the project with a star if you find it useful! ⭐
This is a living roadmap for Boot.dev's free-to-audit computer science program for backend developers.
This is not a front-end program. That said, we've had front-end engineers who still complete the courses and projects for the sake of learning the computer science content. However, we have no immediate plans for front-end technologies in this curriculum.
You shouldn't skip ahead unless you really know what you are doing. Some people are compfortable skipping the first course, "Learn to Code in JavaScript" because it is for beginners. Almost nothing else should be skipped because the rest of the content builds upon itself.
Yes, learning several programming languages is critical to your success. It's not nearly as hard to pick up a second programming language after you're familiar with your first one, yet it offers many benefits. You can read more here if you're skeptical.
Yes you should get started. This curriculum will never be "complete" in the same sense the YouTube will never be "complete" - there is new content daily. We care deeply about the quality of this program and will always be improving and adding to it.
We help you prepare for your first development job, but we won't match you with a company. We go one step further than universities. We provide education about how to be a backend developer and education about how to find a job. That said, we don't actually do the "finding" for you.
The first two chapters of every course are free. After that, it's only free to read, and we call this read-only mode "sandbox mode". In sandbox mode, you won't be able to pass off assignments without becoming a patron in order to support development.
- Learn to Code in JavaScript (JavaScript)
- Learn HTTP (JavaScript)
- Learn Graphics in HTML5 Canvas (JavaScript)
- Build a Local Dev Environment (JavaScript, Node.js, Git, VS Code)
- Learn Python (Python)
- Learn Object-Oriented Programming (Python)
- Build an SEO Link Analyzer (Python)
- Learn Algorithms (Python)
- Learn Data Structures (Python)
- Learn Advanced Algorithms (Python)
- Build a Visual Maze Solver (Python)
- Personal Project 1 (Your choice)
- Learn Go (Go)
- Learn Computer Networking (Go)
- Build a Social Media Backend (Go Project)
- Learn SQL (SQL)
- Learn Cryptography (Go)
- Enhance your Social Media Backend (JavaScript, Go)
- Learn Distributed Systems (Go)
- Learn NoSQL Databases (???)
- Personal Project 2 (Your choice)
- Learn Infrastructure as Code (Terraform)
- Containerize your Social Media Backend (Docker & Kubernetes)
- Learn CI/CD (GitHub Actions)
- Deploy your Social Media Backend
- Learn Clean Code (Go)
- Learn Computer Architecture and Hardware (ARM)
- Learn Compilers (Go)
- Learn Functional Programming (JavaScript, PureScript)
- Learn Discrete Math for Programmers (Go)
- Learn Computational Theory (???)
- Learn Python 2 (Python)
- Learn Artificial Intelligence (Python)
- Learn Machine Learning (Python)
- Learn Operating Systems Theory (???)
We believe in learning by building. We mix guided and unguided content. Every guided course is a collection of coding assignments and quizzes designed to teach a set of concepts. Every unguided project is a blueprint for students to build entire applications on their local machines which teaches practicality.
The majority of students should have a simple and straight path to completion, without needing to make many choices about which courses to take.
The tech stack should be fairly lean. The goal of Boot.dev is to teach the concepts of CS without forcing students to learn too many languages, frameworks and tools. For this reason, the primary languages of Boot.dev are currently:
- JavaScript
- Go
- Python
We love help and feedback on how we can improve the curriculum! The recommended way to help is to submit issues here on Github. If you just want to talk about some ideas, use the discussions tab or contact us directly using one of the methods below.
If you would like to discuss the project feel free to contact us at Boot.dev. We're most responsive on Discord, but you can also find us on Twitter.