Not a bootcamp
The Recurse Center is not a programming bootcamp. RC is a self-directed, educational retreat for programmers: we do not have a curriculum, classes, or teachers. It’s similar to a writers retreat or work sabbatical. Programmers of all experience levels join us to spend six or 12 weeks expanding the scope of their abilities, however they see fit.
RC is also a community of practice. Once you attend RC, you’re a lifetime member of an ambitious, friendly community of programmers who are focused on learning and improving.
We understand why people sometimes think RC is a bootcamp. If you squint, we do look superficially similar. Like many bootcamps, until recently RC took place in person and lasts for a few months. Like RC, bootcamps are focused on programming education. The first batch of RC was in 2011, right around the time that the first bootcamps were getting started, so you may have heard about RC at the same time you started hearing about bootcamps. Until 2015, we even had “School” in our name.
Despite these similarities, RC is about as different as you can get from a programming bootcamp while still being related to programming and education. This is because we start with very different fundamental beliefs about how people learn.
Bootcamps are built on the same principles as traditional schools. The basic idea is that with good teachers, well designed curriculum, and willing students who all have the same prerequisite knowledge, people will learn what you teach them. We think this approach is flawed. Education is not something that is done to you by a teacher but rather something that you do for yourself. Curiosity and interest are better motivators than fear, punishment, and reward.
We believe that learning is inseparable from living. We believe education is the product of the activity of learners, not teachers. And we believe that people learn best when they are in control of and responsible for their own education and have the freedom to explore what interests them. We work hard to make sure RC reflects these values.
Unlike bootcamps, people of all experience levels attend RC, from people who have been programming for only six months, to professionals who have been working as programmers for 30 years. Instead of following a curriculum, listening to lectures, and working on assignments, at RC you direct your own education. This means deciding what you’ll learn, how you’re going to learn it, and who you’re going to learn it with, as well as building or opting in to the structure that you need to learn most effectively, and opting out of what you don’t.
RC is community driven. You learn from peers instead of teachers and we are constantly working to give the RC community more control over RC itself. Lots of traditional educational institutions talk about learning from your classmates, but none of the money they spend, the people they hire, or things they do actually support this. Furthermore, in traditional institutions you primarily study with people who have the same knowledge and take the same classes as you. There’s so much more you can learn from peers of wildly different ages and experience levels.
In the RC alumni community, you’ll find Recursers who have specialized in every area of programming. For example, if you come to RC as an experienced front-end developer wanting to learn embedded systems, computer graphics, language design, machine learning, or even CPU design, you will find other Recursers who are experts in all these and more, and are willing to help. If you come to RC wanting to dive deeper into your area of expertise, you’ll find people in the RC community to work with and get feedback from.
There’s something else that happens at RC that bootcamps can’t provide: you get an opportunity to develop your “volitional muscles.”1 In other words, to learn how to direct yourself. Many people flounder while at RC. This can mean not being productive, not feeling good about your work, not knowing what to work on, or knowing what you need to do but not being able to do it. Floundering is the process of figuring out how to set your own direction. At the beginning, it will be hard, and every decision you make will test your abilities, but with work and time, you'll become stronger and you’ll be able to make larger and larger decisions more easily. This is only possible because RC’s unique structure allows you to make your own decisions about your education.
Unlike many bootcamps, RC is also free. There’s no tuition, deferred or otherwise.
RC is not a job prep program
Bootcamps are job prep programs, RC is not.
One reason people get confused about this is because many Recursers are interested in new jobs after they finish their batch. This naturally happens because most people who come to RC are either between jobs or in the midst of switching careers.
Another thing that confuses people is our business model. We partner with companies who pay us a fee when they hire our alumni. Our career services department is available to help you with anything related to finding a new job or being successful at your current one, no matter when you last attended RC.
The core reason to come to RC is to become a better programmer, not to get a job. You can see this in how RC is structured and in the kinds of people that attend. Research scientists come to focus on writing more maintainable code, a skill they take back with them to their labs and work. Startup founders and CTOs come to take a break from thinking about business and spend time programming again. Experienced programmers come to focus deeply on areas of programming outside their specialization. Many attendees are freelance programmers and are not looking for a job. About a third of Recursers come from outside the country and don’t have a path to work in the US afterwards, but come anyway to learn. Alumni who don’t need help preparing for a job often come back for second and third batches years later because they want to spend focused time learning again.
Newer programmers who are considering RC sometimes ask us questions like “will I be able to get a job after RC?” This is a question that we can’t answer. What you learn at RC is up to you, and how much you learn depends on what you put in.
If you’re a newer programmer who wants to program professionally, RC will be helpful. In addition to our career services department, we have alumni at every stage of their programming careers who can give you advice on how to prepare for a job, and what you should expect once you’re working. Many of them still remember being in your shoes.
If you want a bootcamp, RC is probably not for you
Given how different bootcamps are from RC, we’re always a little skeptical when someone applies to both RC and bootcamps at the same time, or when someone who just finished a bootcamp and really enjoyed the experience applies to RC without acknowledging the differences between the two. We know RC isn’t for everyone. Deciding you want an environment more like a traditional school is a totally reasonable decision, but if that’s what you’re looking for, RC isn’t it.
If spending six or 12 weeks taking ownership of your own education and joining a community of programmers of all experience levels doing the same thing sounds energizing, exciting, and maybe a bit scary, you should apply to RC.
We got this phrase from Michael Nielsen, an RC alum and former Research Fellow in our currently suspended research lab.↩