I went through the 3-month Full Stack Web Development Intensive at the New York Code and Design Academy, so that's where I'm coming from in my answer to your question.
I had basically no knowledge of programming before this, but I was a Biology major and have a masters in environmental education. Here are my observations:
- I have never before been in a more stressful, yet productive, environment. I must echo what the other who have answered this question say in that there is probably no way, unless you are extremely dedicated and plan out your own program, that you would be able to pack the sheer amount of brain-expansion that happens in these programs into what would happen if you did it on your own. That leads to my next observation:
- As Jesse Farmer said, "At least while I was there, one universal theme among my students was that regardless of how much they believed they knew when they entered, they left feeling like they only understood the tip of the tip of the tip of the iceberg." I CANNOT STRESS HOW TRUE THIS IS. The more you learn, the more you realize you what you DO NOT KNOW. If you start out knowing nothing, it is almost impossible to create your own curriculum or know where to start. There are books you could read on various languages, but how would you know what is popular/useful/would get you a job? Going to a bootcamp gives you that pre-made curriculum built by someone who actually knows what they are doing, and who has been doing it for a long time. This person picks what is necessary for you to get a great launch into a career, and you can do it very quickly, instead of floundering around and wasting precious time.
- Also something others have said; bootcamp environments provide you with hands-on help and experience. I would never have been able to figure out certain problems on my own; the NYCDA instructors let you try to work it out, but eventually you're just wasting your own time, so they know when to step in and help you. I also got valuable experience working on projects in teams and doing pair-programming, which prepares you for real-life experiences you might have at a start-up. Programming isn't just nerdy dudes typing in front of a screen in a basement anymore, and the way you learn how to program should reflect the current state of the field, or at least how you plan to use programming when you want to get a job.
In summary: going to a bootcamp was worth it for me, in that it provides structure, direction, and support you'd never get learning on your own. NYCDA in particular helps you every step of the way: while you are there as well as after you're finished and have presented your final project at a job fair. There's a whole community of alumni who are constantly in touch and can offer you a glimpse of where you might go, which will help motivate you when you are in the thick of learning really frustrating things that might make you want to quit. This community aspect is what helps people actually integrate into and make connections in the field; you'd never get that on your own.