I’d like to share my thought regarding the developers’ boot camps and help you answer the question: “should I sign up for a coding bootcamp?” from a camper perspective. According to all indications coding boot camps still seem to gain momentum. Though it’s not a new term worldwide, it was not until 2016 when the industry stopped being locally sterile. When new opportunities appeared in Cracow, I was a skeptic at first. I started self-studying by following the freecodecamp front-end path, accompanied by Pluralsight and Udemy video courses. Almost all of these are free or cost next to nothing compared to any boot camp. The price is one of the main no-go factors, but we’ll talk about it in a second.
There are many critical reviews, but most share the four common denominators: high price, the uniqueness of programming, the shallowness of knowledge and the notion that you can learn everything yourself. Let’s have a look at the four horsemen…
The price
Based on my research developer boot camps in the USA, Great Britain average around 12.000 USD, however, I’d like to focus on the local industry. The average price of boot camp in Poland is 2.000 USD, yet it’s still considered expensive thanks to GDP per capita gap between these countries. A typical course offers about 200 hours, resulting in 10 USD/h ratio, which is an equivalent of language lessons. However, to answer whether something is expensive or not we should compare the price to what we’re given.
For the price, we get 200 class led by practitioners, who are up to date with technology. They share some real life examples and show their approach to dealing with typical problems. There are the downsides though. Since for most of the teachers it’s an additional job, I had an impression that some of them are overburdened with the responsibilities and cannot get involved as much as they’d like to. At the moment IT industry is considered overpaid, thus it’s rather expected the tutors have to be well paid. It’s true the courses are not cheap, but in most cases, they seem priced reasonably. Also for an offline class, there are some additional costs to be covered but in my opinion, the tangible experience is totally worth it.
The unique snowflake effect
While surfing we can often find opinions stating that someone who finished a boot camp can’t be a good developer. And it’s almost never backed up by any reasons. Moreover, it seems like there’s a meta-message written between the lines, that someone who attends such course simply doesn’t have the magic ingredient, which all self-taughts do. You get good at programming basically how you get good (git gud!) at anything else – just doing it. For some reason thought, we can trip on the myth of genius programmer more often than a genius lawyer. architect or physician. Partly probably, because programmers run the web (I recommend a tad old fashioned video, which questions the ego approach) ;). The truth is most programmers are proficient not because they’re particularly gifted, but rather that they have spent thousands of hours going through the documentation, writing code, reading, asking, testing, finding solutions and shipping products.
Developers are not unique snowflakes, unicorns having the most ambitious and difficult job in the world. I’m just a beginner but none of the concepts I’ve seen so far was even close to what I’ve been studying as a major in engineering. The difference from other professions is that in programming we are often working on pure abstractions, but it’s not as advanced as e.g. mechanics of materials, tensor calculus etc. I’m sure there are other jobs, which are even more demanding, that I haven’t even heard of.
To sum up, that’s right, you don’t have to be special to become a developer, duh.
The shallowness
Another point of critique is that the knowledge you gain at a boot camp is shallow. That is partially true, however, we need to look at the boot camps’ target group. If I were 18 years old I’d go for IT major and follow the classical way, hands down. Starting from how the computers are built, low-level communication, algorithms, Bachmann-Landau notation, protocols etc. However, when you come to your ’30s, working full time in another industry, having a family, even going through the Introduction to Algorithms would take you months and chances are you don’t have enough time…
When changing professions you need to use a different approach. Boot camps focus on ‘learning by doing’ methodology, or so-called ‘just-in-time’ learning. Not everybody favors this manner, but I found it really efficient. You focus on what you’re doing at the moment, and if you have some free time, can add some depth by going through the documentation or signing for online CS50 class, as I did.
The self-study
I agree that in order to become a good developer you need to self-study. To have the curiosity and ability to work independently. I also totally agree that you can learn everything they teach you at boot camp by yourself. You even MUST self-study and practice while attending a boot camp to fully grasp the knowledge and understand the underlying mechanics.
Why then did I sign up for it?
Simply, the learning is faster and more efficient. With a set path it’s almost impossible to get derailed or stuck on a problem. It’s a great advantage to have a mentor that is able to answer all your questions in quick question-answer turnovers. I still remember how much time I spent, while self-studying before the camp, trying to solve CORS error on Chrome trying to connect to a server that didn’t provide https (no, the solution wasn’t JSONP)…
The second argument is a good practice. It doesn’t matter whether you’re learning to play tennis, how to snowboard, swim or develop, it’s important you have early adjustments to your exercises to learn good practices from the start and avoid potential damage.
Summary
Upsides
- code review of each line of code
- defined learning path
- learning speed (question-answer sessions)
- increased motivation to learn (group learning)
- “buying into” IT environment
- mentoring
- no time wasting on every beginner’s problem
Downsides
- it’s really just basics
- price
- requires lots of individual work anyway
- can get you trapped in a pretentious mindset
Would I recommend?
It depends ;). If you are sure you want to become a developer, put some effort already, just want to speed up the process and can afford it without draining the budget, definitely! On the other hand, if you don’t know yet if programming is for you and are interested just because you’ve seen the salary figures on Hired, try some free online courses and build some simple mock ups before you dive in.
I see it the boot camp, however foolish it may sound, as a good backpack. It’s totally up to you what you pack into it for the journey of becoming a developer :). It’s not a finished product and should be treated as such. In the end, it’s really up to you how much you’ll learn during the course. Look for answers, ask questions, do the exercises, work on your own projects, start blogging and you’ll be good :).