Learning back-end development can be fun - even addicting. We’re building a learning path that forces you to delve deep into programming fundamentals and, frankly, write a ton of code.
Why settle for mediocrity when you can be a remarkable engineer?
The Story 🔗
I built Boot.dev for my wife Breanna who wanted to transition from x-ray to back-end development. The trouble is, we couldn’t find any e-learning platforms that impressed me as a hiring manager. I decided to build a curriculum tailored to back-end developers who aren’t afraid of in-depth education. My wife was my first student and loves the courses, so I hope you do too.
- Follow us on Twitter
- Subscribe to our YouTube channel
Our Beliefs 🔗
We have some opinions about how you should learn to code.
- Coding is fun, don’t make it dull
- Computer science matters, degrees don’t
- You need to build
- You need to deploy
- It’s hard to find good resources
- Learning to code is a depth-first algorithm
- It’s a marathon, not a sprint
- You should be uncomfortable
- Get an on-site, full-time job first
1. Coding is fun, don’t make it dull 🔗
A game is a series of interesting choices
Coding is inherently a game. There’s a tight feedback loop, and you get to make interesting decisions about the code you write that moves you toward your goal: a project that does something useful.
Coding, and in particular learning to code, can become dull if the magic is lost. We do everything we can to keep that magic alive.
2. Computer science matters, degrees don’t 🔗
People are becoming more tech-literate every day, and that’s a wonderful thing. Deploying a simple website doesn’t require advanced programming knowledge anymore. That doesn’t mean we no longer need smart engineers, we do. They just work on more interesting problems, and at a different scale.
Mastering CS concepts like algorithms, data structures, distributed computing, and cryptography is a great way to differentiate yourself as a developer, and universities aren’t the gatekeepers of that knowledge.
3. You need to build 🔗
Too many self-taught learners watch hours of YouTube videos, only to find that they don’t know where to start when building their own projects.
The tighter your feedback loop, the better. Our courses teach new concepts through hands-on coding exercises, then you go use those concepts in your own projects that you build from scratch.
4. You need to deploy 🔗
Sometimes “deploy” means to host a web app on the internet. Sometimes it just means packaging up your project with great documentation and pushing it to GitHub.
The point is, you need to show your work, and that work should be interesting if you want a better chance of landing a job.
5. It’s hard to find good resources 🔗
The internet is estimated to host over 100 Zettabytes of data. That’s about 100 trillion gigabytes of data.
As developers learning to code, we don’t lack raw information. Technically you can learn just about anything by reading dense Wikipedia articles.
In many instances, we do lack useful information that’s packaged nicely into an exciting learning experience. That’s the problem we’re trying to solve.
6. Learning to code is a depth-first algorithm 🔗
So many learners jump from one shiny technology to the next, sometimes on a daily or weekly basis. The way tech news operates incentivizes this behavior, but it’s not the best way to learn to code.
Err on the side of going deep into a topic or technology that interests you. There is a time to branch out, but I rarely see learners going too deep.
7. It’s a marathon, not a sprint 🔗
“Learn to code and you’ll land a developer job in 8 weeks”
“You need a 4-year computer science degree to become a developer”
Both of these opinions are wrong.
If you spend about 10 hours each week, it should take about 6 to 18 months to get ready for your first back-end development job, depending on your situation.
6-18 months is still fast. It’s like going to the gym, if you stay consistent, it’s amazing how quickly you will see results.
8. You should be uncomfortable 🔗
Learning to code isn’t easy. If it were, everyone would be doing it, and we wouldn’t be paid as much as we are to write good code.
You learn most effectively when you’re in your zone of proximal development, the place just outside of your comfort zone. There are just two rules for staying in the ZOPD:
- Don’t waste your time-solving problems that you already know how to solve
- Don’t waste your time-solving problems that are impossible for your skill level
9. Get an on-site, full-time job first 🔗
We are from the US. The advice that follows may be less applicable in other countries.
Many developers think that landing, managing, and servicing freelancing clients is easier than passing a coding interview. That’s almost always wrong.
If your situation permits, try to get an on-site full-time job as quickly as you can.
- You’ll be physically around other developers who can mentor you
- You’ll get to focus on coding instead of landing clients and marketing yourself
There are exceptions, and any paid development work is typically better than none, but hopefully, this helps provide some focus.
Let us know what you think 🔗
We’re always refining our ideas. If you have any thoughts on this stuff, tell us. The easiest ways are to join our Discord community server or to tweet at us.