When I enrolled in a coding bootcamp, all I knew was that it was going to be intense. The world of software engineering was brand new to me and I was about to encounter a lot of information in a short amount of time. My only experience was the few courses I had taken on Codecademy, but that brief exposure was enough to convince me to uproot my entire life in order to pursue this newfound passion. I ended up choosing an in-person immersive bootcamp because I knew I would need the structure and I learn better in a classroom setting than on my own. There are countless choices of bootcamps these days, and the first step to success is choosing the best fit for you. Once I chose mine and was all signed up, I knew there was no turning back.
We began the course learning Ruby. I assumed I had a decent grasp on the material from the pre-work I was given (labs, readme's, etc...), but that assumption was quickly shattered. All of a sudden I was having information hurled at me at a speed at which I couldn’t possibly absorb. All of the pre-work had been done at my own pace, but this new speed at which I was expected to learn was shocking. What was important for me to keep in mind was that this was exactly what I signed up for; this was supposed to be overwhelming. After all, I was only a beginner with no prior experience. I had to remember to have faith in myself and my ability to adapt. It's obviously possible to learn this information. Many other people have gone through a bootcamp. I needed to take a deep breath and embrace being a beginner.
The next thing to remember on this journey is that you are not alone. You have a class full of people on the exact same journey. Get out of your comfort zone and meet them. They are your friends and allies. Think about it as your first jaunt into networking. Also, nothing is as reassuring during this process as hearing someone else talk about the struggles they are having over the same material. As you progress through the bootcamp it's helpful to collaborate with your classmates about the errors you may be getting in some of your code. If you're anything like me, you withdraw or isolate yourself instead of pursuing new friendships, especially when challenged and overwhelmed. All this does is slow your growth and understanding in the course. A sense of camaraderie has helped me feel like I belong and motivates me to work harder. Not to mention, it's pretty rewarding and a bit of a confidence boost to be able to help each other through this process.
You're going to be overwhelmed. You're going to be confused. What is important to remember is that you have all of the resources to be successful at your fingertips. Make use of all of these. When you encounter something challenging, ASK QUESTIONS! This is one of the things that was hardest for me to do. I like to figure things out by myself, so when I encountered concepts that confused me, I sat there frustrated trying to figure things out on my own. This caused me to fall behind on the coursework and understanding key new concepts. When I finally let go of my ego and admitted to myself that I needed some help understanding some of the material, things got a lot easier. I guess deep down I was afraid I would be judged for not immediately understanding the new material...but the thing was many of my peers didn't understand things either, many of them just didn't hesitate to get help when they needed it!
An important concept I had to wrap my head around quickly was that of failure. I had always assigned it such a negative connotation that it took me awhile to adjust to the idea that my code is going to fail more often than not. The important thing to take away from all of the failures were the messages each failure gives you. I learned to "advance" my code one failure at a time, conquering the failure/error messages one at a time until each project was completed. Reading each failure/error message carefully and "advancing" the message to a different failure is actually how I write all of my code...I even test my code on my own to ensure everything I wrote works!
Perhaps the scariest part of the whole bootcamp experience for me was the idea of a "code challenge" to gauge my progress and ensure I knew enough to move on to more advanced material. Having so much information thrown at me so quickly, I couldn't be sure how much I was actually retaining. The moment I felt like I was finally starting to understand a concept, I would move on to another lab and be completely stumped. It was incredibly frustrating and it was easy to feel like I wasn't learning anything. So when I was given a "code challenge" to complete, I really wasn't sure if I would be advancing with the rest of my classmates. However, it turns out I had actually been learning all along. Often it's hard to take full measure of everything you've learned because you're constantly being bombarded with new information, but trust the process! Every day there is new material to master, but don’t forget to occasionally appreciate of how far you've come.
These past few weeks have been some of the most difficult I've ever had. So much material comes at you so fast. It's intimidating. It's hard. It's stressful. And wow, is it frustrating.At the end of the day though, it's been the most rewarding thing I have ever done. Every new challenge and piece of code I encounter is like another puzzle, and nothing feels better than solving it. One of the most rewarding experiences so far has been piecing together everything from these first couple weeks to build a CLI application with one of my classmates. I know I still have a long way to go, but I can't wait to continue learning and advancing my skill sets. And at the end of it all, it will undoubtedly be worth the long nights and early mornings to finally have a career doing something I enjoy!