The Truth About Programming Bootcamps.
Preface: This will be written from the perspective of an iOS student developer. I’m writing this for the prospective bootcamp student who’s looking for a little more insight. Truth be told, it’s not that bad. Will you learn plenty of useful information? Yes. Will you learn how to code? Yes. Will you learn how to make apps? Maybe.
I was ecstatic, I finally received an admissions letter after completing a series of interviews and coding challenges. It was the first response from the three bootcamps I applied to which started with the word “congratulations.” Truth is — getting into a coding bootcamp is tough, seats are limited and hard work is critical from the point of writing your application to graduating the school. So if you have been admitted, pat yourself on the back.
Day one: Everybody is shitting themselves. You’re entering the building hoping your pre-course work is up to par otherwise it’s going to make for a really lousy flight home. You’re also hoping you’re not the most ill-prepared student in the class. We get an initial gut check with a few exercises on character types, classes, loops and functions. We also get the usual speech on how “nothing works unless you do” and how this could either be the “best or worst three months of your life.” For me, it would pan out to be neither.
Fast forward 1.5 months, everyday going through the 8–10 hour grind of learning both the Swift language and iOS development as a whole. At this point, I’m feeling pretty good. If I’m asked to create a function that sorts through an array and does whatever — check. Create a loop that tests a Boolean and outputs whether something is true or false — no problem! If you need a toy problem solved with code, I’m your guy! Setup and initialize a class, yeah I got you! Here’s the catch, I still couldn’t program an app from A-Z. This begs the question — should I be able to? I’ve only been at this shit for a month and a half. There’s no clear answer to that question.
The reality is, programming comes down to one crucial skill — problem solving. Anyone with a library card can learn the syntactical intricacies of each language. In due time this same person will be able to understand the fundamental concepts pertaining to the form of development they’re studying such as object-oriented programming and MVC for iOS. What simply can’t be taught is your ability to break down a large problem into small digestible pieces. The reason it can’t be taught is the fact that it’s different scenario every time you fire up Xcode. Saying that something cannot be taught does NOT mean it cannot be learned. It absolutely can, but it’s learned through solving all different kinds of problems and eventually having a big enough toolkit where it’s instinctive.
Programming bootcamps try to create this environment and give you as many real world scenarios as possible but eventually you have to step out of the simulator and fly the plane. This is where I crashed my plane. I’m three months out of my three month bootcamp and although I have a ton of knowledge on principle iOS frameworks such as, Core Data, MapKit, Photos, Webkit — you get the idea — I’m still piecing it together, still learning how to go from puzzle pieces to a full picture.
Here’s the reality: You’re going to learn a lot, but it’s up to you to make sense of it all and truthfully, even though you can have your questions answered quickly — no one can really sort it out for you, it comes with time. I believe this is something most developers would tell you, the same way I was told this. You can do this on your own. You don’t have to shell out three months of your time and $10,000–$15,000 of your hard earned money. Most the people I went through my cohort with are either still not working as developers (three months post-graduation) or repeating the course again. Some schools offer placement (which is fantastic) and spending the money may be worth the career change to you. This is case by case and up to you to figure out.
Please send me any questions you may have, I’d love to hear from you.