Ironhack’s Hack Show and New Beginnings — My Coding Bootcamp Experience, Part 10
This is the tenth and final post of my journey through Ironhack’s coding bootcamp. If you haven’t already, check out the first post to get up to speed.
I’d left off the last post at the end of July promising to keep you all updated on my progress after getting a hang of Ruby on Rails. We had just begun delving into the fundamentals of jQuery and AJAX in class, and it was a pretty bumpy ride. In between those two subjects, Josh had tried introducing us to LocalStorage, and the thought of those lectures and exercises still engulfs my heart with a burning rage that could power a small third-world country. Ultimately, the post on those subjects never came to fruition because by the time I was able to take a break from coding, it was time to start our final projects. So what I’m going to do instead is talk about the six weeks that led up to the night captured in the photo below.
Our last official lecture was on a Saturday morning, and it came and went without much ceremony or hoorah. We were covering how to send emails within our Rails applications, and upon coming to the last slide, Josh said “that’s it”. That’s it, huh? I’m ready to go out into the world as a newly minted full-stack web developer, armed with my profound knowledge of Mailer? Cool, thanks for everything.
Nah, I’m just talking shit. He actually meant that we had finished all of the lectures for the program, and it wasn’t until this point that I actually realized it. Sacrificing some of your weeknights and every single Saturday for six months straight tends to put you into the mindset that the routine is a permanent fixture of your life you’ve got to get used to. I didn’t think it would actually come to an end. On top of that, I didn’t feel like I was actually capable of building a full-fledged web application using all of the technologies we’d learned, especially the two-dimensional arrays that I love to hate so much. Was there a month of class that I’d unknowingly missed out on? Luckily, the rest of the day was spent not coding, but working on mapping out the structure of our final project. This may have been little more than busy work when we were still working with simple Ruby apps, but when it comes to Rails, the last thing you want to do is write and commit code blindly without any checkpoints or even some idea of a finish line in sight. That’s the kind of messiness that makes baby pandas sad.
Without much delay, I fired up my two favorite tools for organizing projects. bubbl.us and Trello. While some people work just fine with writing their ideas on a sheet of paper, I tend to fire off thoughts and ideas in a million different directions at once, making the former perfect for getting them all down in a tangible format. Then, I would place them all in different categories and organize them in Trello to come up with a solid plan of action. This took up a considerable amount of time, way more than I had initially anticipated, but like I’d mentioned before, to neglect doing it would be a disservice to everything I’d spent so much time and effort learning. It wasn’t until the following Thursday that I actually created my project in Sublime and wrote my first line of code, which both filled me with energy at the possibilities that laid before me and anxiety at how much work I had ahead of me.
Luckily, Ironhack was well aware of that very anxiety that goes through every student’s mind and paired all of us with a mentor that would help define the overall scope and direction of our applications. Our mentors would make sure we didn’t set our minds on building ‘the AirBnB of x’ or from having a total meltdown and deciding to build a calculator instead. I can’t say enough good things about my mentor, Kaysser. Over the past six weeks, he introduced me to concepts that were vital to my project’s functionality and even introduced some ideas that helped take it to the next level. Without his support, I might have ended up building a calculator that sometimes moos when you hit the number 9.
The first week and a half was spent almost exclusively working on the front end. Although I had envisioned my application as one that would mainly be used on mobile devices and didn’t have to fill the whole page with content as a result, it meant I had to spent lots of time making sure the elements I did include looked great. I knew I wanted to allow people to sign up and log in using their Facebook and Twitter accounts, with Google following at some point in the future, so that’s the first task I tackled when I shifted my focus towards the back end code. The OmniAuth gem makes this pretty accessible for new developers like myself, but that isn’t to say it’s easy. As a matter of fact, it took me roughly two days to implement the features I wanted, which include getting the first and last name of the user, their profile image, and their email. Sure, I could have forced people to create accounts and used that time to work on another feature instead, but I think ease of use is extremely important when building anything. That, and I’m fully aware that people are sick of remembering email and password combinations for every site they use, and to leave out social login in 2016 is practically criminal.
Things were moving along at a steady pace for those first two weeks, and on the weekends I was making an average of 5–10 code commits a day, pretty substantial ones at that. Then, on the tail end of the second week, I started to get a little sick. Within 24 hours, the ‘little’ aspect was tossed aside to make room for ‘holy fuck I’m disgustingly ill someone call a priest’.
I’d come down with the worst case of strep throat I’d ever caught, which left me confined to my bed doing nothing more than sleeping and drinking fluids for a week straight. I couldn’t even speak without intense pain, so the thought of coding during that period was completely out of the question. With every passing day, I started stressing more and more about how this sickness was wreaking havok on my original timeline. By the time I’d recovered, I had to toss a number of features into the ‘post-Hack Show’ list, which was a tough pill to swallow. Tougher than the $30 of DayQuil and NyQuil capsules I choked down to help keep me sane during the week.
My marathon coding sessions were capped off this past Sunday, when I set a personal record of 23 commits, fueled by Spaghetti Os and Coke Zero. This sprint led to my charts working exactly as I wanted them to along with considerable improvements to the user experience. We were presenting that Tuesday night at the internal Hack Show to the technical judges, so I wanted to apply as much polish as possible. It turns out the polish paid off, as I walked away that night having won Most Innovative Idea and Best User Experience. My chances of doing well on Thursday were looking pretty good and my bolstered confidence had me looking forward to it.
Throughout this week, we also met with a number of companies who were looking to recruit Jr. Full Stack Web Developers. Although I have no plans to leave my job at Clutch Prep, I decided to meet with a few of them to inquire about the possibility of part-time or freelance roles. A few wanted me for marketing work, which I sincerely appreciate, but wasn’t my intention for showing up in the first place. That Ironhack is willing to do this for students instead of releasing them into the world without so much as an idea of where to apply speaks volumes about the quality of the program.
I told myself I’d get to Building on the day of the Hack Show with plenty of time to make sure the last minute visual tweaks I made to my site didn’t break anything. I also wanted to go over my pitch, which I hadn’t taken a single glance at. I’m going to stop telling myself things moving forward, because I ended up scrambling up to the third floor with 45 minutes before the night was set to begin. A few hurried practice pitch sessions later, we were ushered into a corner of the front stage and the night officially began. Twenty of us, split between the part-time and full-time cohorts, would all get the chance to present our one-minute pitches to the audience and judges, who would decide on the top four students. Those students would then move on to present a five minute version of their pitch, complete with a live demo of their web application. Everyone’s time on the stage seemed to fly by, and before long it was my turn to present. You must be wondering, “Christian, were your knees weak, arms heavy, vomit on your sweater already, mom’s spaghetti?”.
Once you’ve done stand-up comedy, where you stand in front of anywhere between a few dozen and a few hundred people and try to make them all laugh, everything else is pretty tame in comparison. I got a few laughs out of the audience, my time ran out, and I sat back and watched everyone else present. I have to give credit to each and every one of my fellow Ironhackers, because public speaking is not easy. In fact, it’s really fucking hard. It’s an ocean of people laser-focused on you, staring as if to say “Come on, mess up. We all know you’re going to eventually.” Regardless, every single student stepped up to the mic and crushed it, and at the end of the day that matters so much more than winning the Hack Show.
After the pitches, there was a fifteen minute break for the audience to vote. Most of the Clutch team was in attendance, so I felt pretty good about my chances of making it into the next round, but I couldn’t help but prepare myself for the news that my night of presenting was over. A minute or two before we were set to start back up, though, Josh came up to another classmate and myself and told us we were moving forward to the next round.
I…uh, wasn’t quite ready for this.
Didn’t think I’d make it this far.
Both of us scrambled to load up all of the pages necessary to run our live demo in front of the audience and internally recited our step-by-step walkthroughs as the two students selected from the full-time cohort did the same. As our names were announced proceeding the break, I heard a burst of applause from the Clutch Corner (#ClutchCorner) when my name was called. Immediately after this, one of the full-time students was asked to set her computer up and give her presentation. And when I say she killed it, that’s the understatement of the century. She KILLED it. Her app was THE SHIT and the way she navigated the audience through the entire experience was THE SHIT. I had to present after her?! “Why not just call it a night now?”, I thought. The competition was basically over. As she concluded to a thunderous round of applause, I grabbed my laptop an meekly walked up to the stage. Too late to turn back now.
Turns out I did better than I thought. I cracked some jokes, pointed to some things, talked some technology, it was good times all around. The audience seemed to enjoy it, and the judges were big fans of my user experience. I ended my five minutes on a positive note but as I walked back to my corner, I couldn’t help but feel like I was gunning for second place at best, going into my own little bubble as the other two students demonstrated their applications. This was followed by a ten minute round of questioning by the audience while the judges tallied up the scores.
Those ten minutes were up before I knew it, and a frenzied energy took me over as the laptop with the final results was hooked up to the projector. This was it, the past six months of late nights and lost weekends culminated in this moment that actually didn’t mean much in the long run. Nizar started by announcing fourth place. There was a drum roll, lots of breaths being held, and eventually a name appeared on the screen. The name of my classmate. I breathed a quick sigh of relief but also a pang of fear. His project was incredibly complex on the back-end, much more so than mine, so what would that say about my chances at winning?
Third place. More drum roll, louder and more intense this time. Was the competition over for me? Suddenly, the name of the student who had presented before me appeared. No way. How? Did this mean I had a shot at first place? I didn’t have long to wonder because they skipped second place and immediately jumped to the announcement of the overall winner. The tension in the air could have severed the head from a marble statue. I couldn’t help but join in the final drum roll, at the same time feeling myself getting red in the face in sheer anticipation.
I saw my name in bright white text and felt myself getting lifted in the air by my classmate. I did it. I actually won the Hack Show. I’d attended three of them in the past and watched three separate winners be crowned, but I never thought I’d join that club. Yet here I was, standing among several dozens of people cheering for me, the guy who lost a week of coding to strep throat. It was surreal. In the hour that followed, there were plenty of congratulations, a few photos of the entire class, and individual photos. Plus, I got the coveted Nizar bobblehead as a trophy, which I’ll be keeping by my side forever and ever.
A few of my fraternity brothers had shown up to support me, and it felt pretty great to make them proud.
You might have noticed that I’ve left out one detail from this whole story: my actual project! I intentionally saved it for the end so as to not awkwardly sandwich it elsewhere. It’s called Small Victory, where you receive one five-minute task a day to make you better, based on the interests you specify in the profile. Users can sign up using their Facebook or Twitter accounts, and the app keeps track of the streak you’re currently on and how many tasks you’ve completed. I also integrated a number of charts to serve as a visual representation of the user’s progress as they progress every day. Below are some screenshots of the main interface.
So what’s next? For one, I’m going to add a social feed to my app where users can see each other’s progress on their track and they update in real-time. I made 26 commits to Github this Sunday alone, in which I made the site much more responsive on mobile devices, added more transitions to make the user experience more seamless, and integrated a fourth chart that calculates how many reps the user has completed over a time period on the Fitness track. I’ve also started taking Harvard’s Introduction to Computer Science course online as part of the Open Source Society University, a collection of online courses to learn the various facets of computer science on one’s own time. I can’t fathom a day in the foreseeable future where I won’t be writing or studying code.
I’ll also be pursuing freelance and part-time dev work, so if you’re looking for any technical help…I’m but one click away.
Now it’s time for the thank yous. Thank you to Josh, who put up with my constant jokes and photoshops of his face for six months straight while teaching me the ins and outs of web development. Thank you to Kaysser, who helped turn my idea into reality with his guidance. Thank you to Faraz, who unfortunately had to leave us halfway through the program but had a profound effect on how I solve coding problems. Thank you to my classmates for putting up with my constant jokes and keeping me on my toes, always striving to push the boundaries of learning in class. Thank you to Alia and Nizar, who conducted my informal and technical interviews and decided to take a chance on me. Thank you to Ariel for bringing this program to Miami and pushing for a part-time program that worked with the schedule of a full-time employee. And finally, thank you to Ironhack, for everything. I wouldn’t trade the time I’ve spent on this journey for anything.
There’s still two weeks in the program left technically. This week we’re going over some job searching tips and setting up a portfolio site, and next week will be spent briefly going over the fundamentals of React. For all intents and purposes though, my Ironhack journey has come to an end, leading to the beginning of my lifelong journey in code.
I can’t wait.