Are You Ready to Change Your Life?
Everyone wants to earn a great salary. Everyone wants a prestigious job. Everyone wants to be apart of a buzzing, collaborative community. If this sounds like you, consider joing a coding bootcamp. Specifically, I suggest looking into joining Flatiron School. On October 5th, 2020, I began Flatiron School’s 15-week Immersive Software Engineering course. In the midst of a global pandemic, Flatiron has been affected just as other schools and companies have, and, consequently, my cohort has been fully online. Despite this, bootcamp has been rigorous, challenging, and very effective in helping the other students and I gain the skills necessary to enter the workforce as developers. From the curriculum to the Flatiron community, this program has changed my life in the best ways.
Labs and Lectures
Labs
Flatiron uses two main mediums of teaching when it comes to actually learning to code—labs and lectures. Part of your choice to join a coding bootcamp is the sacrifice you must make in regards to time commitment. Be prepared to spend hours on hours of coding. Conscious, repetitive practice is the only way you can began to learn a new skill, let alone master that skill, and Flatiron’s curriculum is definitely built around this principle. Everyday, new labs are deployed. Labs consist of readme’s, code-alongs, and fully independent labs. Readme’s are exactly what they sound like, pages of information you must read! This is where you’ll be introduced to new concepts and new techniques. If you can absorb information simply from reading, great. If not, taking notes and maybe even making flashcards will be your salvation as you navigate the massive amounts of information that will be thrown at you over the course of the program. The readme’s are clear and concise, though—filled with helpful metaphors to help you understand some of the more difficult programming topics like object-orientation and asynchronous programming. After getting introduced to a concept by a readme, typically what follows is a code-along. Here, you’ll take the new concepts from the readme’s and learn when and how to apply them in your code. It is a code-along, though, so there is guidance, like you’re riding a bike on your own now but with training wheels. Lastly, after having read about a new concept from a readme and seen it put into action through a code-along, you’re ready to start riding with no training wheels. These are the real labs where you have a list of deliverables (objectives to be met) and usually empty files for you to code out your solution. Flatiron has written out tests for you to run in your terminal that test your solutions and ensure the deliverables have been met. Through self-inquiry, team collaboration, and anywhere from half an hour to hours on end of trial and error, you keep coding until all tests for a lab have been passed and then… On to the next lab!
Lectures
In addition to labs, you’ll receive lectures from your cohort’s lead instructor. The instructors deploy labs on one day and, usually, the next day is the lecture over the content introduced in the labs. The best way to prepare for the lectures is by keeping up with the labs. Independently exploring new concepts through labs is bound to leave you with some questions or holes in your knowledge. By doing the labs before their respective lecture, you get an introductory understanding of some concept and, then, the lecture offers you the opportunity to really solidify your understanding of the concept. Additionally, doing those labs beforehand allow you to come up with questions you can ask during the lecture, further engaging your mind and helping you master the content. Granted, there are SO many labs, so if you do fall behind and can’t finish a lab before it’s lecture, fear not! The opposite format is just as helpful. Watch the lecture, don’t shy away from your lack of knowledge, absorb as much information you can, and when you finally get around to completing the labs, you’re bound to have a couple “Aha!” moments.
Code Challenge
Each phase in the program lasts three weeks. The first week you’re inundated with labs and lectures. In the second, though, comes the dreaded Code Challenge. Fundamentally, the code challenge is a test. Everything you learned in the last week to week and a half is put to the test. The most daunting part of the Code Challenge, though, has to be the fact that if you want to move on with your cohort to the next phase, you absolutely MUST pass the challenge. Luckily, Flatiron is a strong believer that everyone deserves a second chance. So, if you don’t pass the challenge the first time, you’ll get a second shot at it.
You usually get about 2 hours to complete the challenge, which, for me, was plenty of time. The really cool thing about the Code Challenge is, unlike tests given in the halls of traditional institutions, you have access to GOOGLE! Yes, Google, the know it all. One of the skills you’ll learn while at Flatiron, perhaps the most important skill, is problem solving. As a modern day developer, it is not at all frowned upon to turn to Google for anything you may not know. On the contrary, it is actually encouraged. The code challenges essentially serve as a benchmark for you and your instructors to ensure that you are grasping the concepts and you’re ready to tackle the next phase.
Projects
So, you’ve learned new content and passed the code challenge. Week three of each phase is project week. In this week, you’ll take the content you learned in week one, plus a little extra that you learned after the code challenge, and create, from scratch, a whole application. This is my favorite week because it gives you and your partner complete freedom. While that freedom may initially be intimidating, once you get started, you’ll find that it’s so much fun taking your new knowledge and actually creating something with it. Don’t be mistaken, though, creating a project from scratch can be immensely stressful and difficult, especially the first couples times, but, ultimately, it will forge and strengthen the new skills you will be acquiring. Project week allows you to step outside of a purely academic space, and into a practical, hands-on space—you’re not just learning about code, you’re creating code. One thing all programmers go through is Imposter Syndrome—a feeling that you don’t deserve to be called a developer, or a feeling that you’re not “good enough” or don’t “know enough”. Project week provides you with a well-deserved sense of accomplishment, helping to quash self-doubt and notions of imposter syndrome. Plus, the projects you create throughout the course of the program will become the seeds of your developer portfolio, allowing employers to check out code you’ve created and granting you opportunities in the workforce.
Community
To me, the biggest selling point of this program is the community that is cultivated when a diverse group of people come together, attempt to learn a difficult discipline in a short amount of time, and are forced to work together in order to thrive. Not forced as in the instructors holding a gun to our heads and making us work together, but, rather, forced because each individual comes to the conclusion that “wow, I can’t do this alone” and we turn to each other for support. Sure, it’s possible to learn to become a developer all on your own—spending months alone at your computer, miserably googling errors, painstakingly trying to piece together a real application, hopelessly rereading freeCodeCamp articles and desperately trying to understand a difficult concept. If being a lonewolf, cowboy type gets your boat rowing, kudos to you. Have fun. At Flatiron, though, prepare for a welcoming, collaborative, and empowering community of instructors and peers ready to lift you up to whatever heights of success you wish to achieve.
Conclusion
Learning any new skill is hard. Learning two programming languages and a couple of frameworks in just three months basically sounds impossible. With the curriculum and structure provided by Flatiron, though, anyone can transform their life and become a software developer. No, it’s not a magic program that will easily transform you from code newbie to code master, but, rather, and intentionally strenuous program intended to break you down and build you back up as a newly minted programmer. It will be hard. Exceedingly so. Yet, I’ve always been a firm believe that anything worth doing is inherintly difficult. That’s why we do it.