Boot.dev Blog » About Boot.dev

About Boot.dev

By Lane Wagner on Feb 6, 2020

Last updated on Jan 25, 2023

We think the smartest way to learn to code is to make sure you’re never bored.

🔗 The Story

I originally built Boot.dev for my wife Breanna so she could transition from being an x-ray tech to a back-end developer, but we ran into a few problems:

  • We didn’t have the time or money for a 4-year CS degree, but I felt a lot of the core CS concepts were important
  • As a hiring manager, I found that many resources don’t focus enough on building projects
  • We found plenty of places to learn front-end development, but not back-end
  • Few people fail because coding is too hard, they fail because they lose motivation

I decided it would be fun to build a course that incorporates a lot of the fun aspects of RPG games and started Boot.dev as a side project. My wife was my first student and loves the courses, so I hope you do too.

🔗 Socials

🔗 Our Beliefs

We have some opinions about how you should learn to code.

  1. Coding is fun, don’t ruin it
  2. Computer science matters, degrees don’t
  3. You need to build
  4. You need to deploy
  5. It’s hard to find good resources
  6. Learning to code is a depth-first algorithm
  7. It’s a marathon, not a sprint
  8. You should be uncomfortable
  9. Get an on-site, full-time job first

🔗 1. Coding is fun, don’t ruin it

A game is a series of interesting choices

Sid Meier, creator of the Civilization series

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: building 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. We think there are a few critical elements to this:

  • Everything should be learned through hands-on coding lessons
  • All concepts should be taught within the context of a real-world software project
  • Game elements like achievements and quests can supply boosts of external motivation and sweet, sweet dopamine

🔗 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 computer science concepts like algorithms, data structures, functional programming, and cryptography is a great way to differentiate yourself as a developer, and universities needn’t be the gatekeepers of that knowledge.

🔗 3. You need to build

Too many self-taught learners watch hours of YouTube tutorials, 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. If you’re learning to code, you don’t need more information, you need a curated roadmap of the most important information packaged in a way that’s easy to digest.

🔗 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

You’re not going to “learn to code” in 3 months, but you also don’t need to spend a full 4 years in college to get a job.

We believe that it will take about 12 months to get ready for your first back-end development job, depending on your situation.

🔗 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:

  1. Don’t waste your time solving problems that you already know how to solve
  2. 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.