Blog

Phase One: Dazed and Confused but Loving It


Phase 1 Recap


Learning How to "Embrace the Confusion"


December 7, 2014


Wow. Phase One of Dev Bootcamp is over and done with. It’s hard to believe how fast it all went. It was a complete blur of astonishment, pride, frustration, and inconceivable amounts of learning. If I had to sum it up, so far it’s all been about “embracing the confusion.” That’s a phrase we heard a lot during Phase 0 but that I didn’t really understand till now. It’s a strange but very motivating feeling to be completely lost in confusion for more than a few days, but suddenly see it all come into focus. That embrace of confusion is the crux of what DBC (and programming) is all about. It’s a cop-out to say that DBC has been indescribable so far, so I’ll at least try to walk back through Phase One.


Week One was spent learning about algorithms, reinforcing syntax, and of course being introduced to DBC’s unique culture. The culture here is another thing that had been given a lot of lip service in Phase 0 and in DBC’s marketing materials. Within the first two days, I realized that that all wasn’t just talk. This is nothing like the daycare of K-12 or the still-not-optimal learning environment of college. Most students are here because they tried other careers or did other things and were unsatisfied. Some are even desperate for a new career or a good job. I may have even been part of the desperate camp when I started here. That all translates to some incredibly motivated students. The amount of learning we are able to cram into nine weeks wouldn’t be possible without everyone’s collective agreement to drop the normal school routines that were instilled in us for most of our lives. Everyone is here simply to learn and help others learn.


Week Two was focused on Object Oriented Design principles, or ways to make your programs simple, elegant, and easily changeable (i.e. futureproof). This was a very interesting topic to me. The deep dive into these “best practices” was more theoretical, but really helped us get lost reading through various codebases that reinforced our understanding of syntax and structure. It was all about architecture, and having this foundation will be essential as we build more and more complex apps in the next few weeks.


Week Three really kicked it up a notch with databases, and pretty much everyone was swimming in confusion for the first few days. In the first part of the week, we wrote our own (very basic) Object Relational Mappers, or ORMs, which map our Ruby data into a database. While these exercises were really tough, we were soon taught that most database services have pre-built ORMs and structures. Thankfully, these challenges were just to teach us how databases interact with our code, and we won’t have to build our own mappers from scratch every time. Moving on, we dove into ActiveRecord, a database service that is really robust and fairly flexible, which we’ll be using a lot when we get to Rails.


Phase Two starts Monday, and all I’ve heard from fellow classmates is that it's even tougher and more fast paced. The confusion we dealt with in Week 3 will be extended over pretty much the whole next three weeks, with more late nights and frustration. On the other hand, we’re learning front-end technologies, including Sinatra, JavaScript, Jquery, and more, which I’m all really excited about. It’ll be cool to move on from the basic Terminal apps we’ve been creating and actually have a web page to show people. I feel like I have a pretty good design sense, and once I have the architecture down in Ruby, it really excites me to make a site look good and feel user friendly. So far, DBC’s dizzying pace and incredible support system has definitely transformed me, shaken me, and made me feel like I can learn anything. More on that later. For now, onward to Phase 2!