As I mentioned in Part Four, my project was called “What The FIFA?!” It’s an app that calculates how much money every country in the world would need to pay FIFA in order to host a future World Cup.
While all of the other project teams in my class had three or four people per team, my team only had two people. Steve joined my project team because he saw the need for an interactive tool so people could estimate bribe payments to FIFA.
Steve and I had a lot of research to conduct before we could start building the website. We created a spreadsheet that contained the following information:
-
Name of every country in the world
-
Currency for every country in the world
-
Currency conversion rates to Swiss franc for every country in the world
-
Number of existing stadiums with 60,000+ capacity stadiums for every country in the world
We plowed through our research phase and began sketching the user interface design. I took the lead on writing the HTML and CSS files while Steve wrote arrays for every country in the world in a Javascript file.
We had some hiccups along the way—mainly the tedious process of merging our files from our respective local and remote repositories. By Wednesday evening, we were able to hook up the site to process the following information:
-
Drop down menu listing future World Cup years
-
Currency of user’s input country
-
A randomly generated number between 80 million—100 million Swiss francs
-
Currency conversion of random number from Swiss francs to user’s input country’s currency
-
Inflation rate of 12% for each year where a World Cup occurs (i.e., 12% inflation factored in for 2026, 24% inflation for 2030, 36% inflation for 2034, etc.)
-
Number of existing stadiums with 60,000+ capacity in each country
-
Number of 60,000+ capacity stadiums needed to host a World Cup (12 stadiums) minus the number of existing stadiums in user’s input country
-
Multiply number of stadiums needed by cost to build new stadiums (cost is 1.2 billion Swiss francs per stadium)
We spent most of Thursday de-bugging the site and cleaning up code. I couldn’t resist tinkering with a handful of design and copy elements. I was able to make some small improvements, but I didn’t have enough time to tackle every item on my punch list.
After agreeing that we were done coding, Steve and I pushed our app to Heroku, a cloud platform as a service (PaaS) that allows programmers to deploy their apps. (You can visit “What The FIFA?!” here. The app was optimized for Google Chrome on a desktop.)
At 2:00 PM today, all of the teams presented their final projects. Each team received ten minutes to explain the problem domain, user stories, approach, and then demo the app. Each person had to pick a portion of code they wrote and explain why they were proud of it.
Steve and I successfully showed off the functionality of our app to our classmates and instructors. I explained that I was proud of my CSS file because I coded it from scratch and the code was based on a handwritten sketch. Steve touted his arrays written in Javascript which contained all of the data from our research.
After reveling in a round of applause and a few fist bumps, I sat down with the rest of my classmates and watched their presentations. It was inspiring to see so many people come together over the past month and create apps that not only work, but that provide a functional purpose.
At the end of the day, our instructor, Brook, told us we’re awesome and that he’s proud of everything we achieved.
I left Code Fellows’ building for the final time with mixed feelings. Part of me was exhausted. Part of me was relieved. But the biggest part of me was satisfied.
I showed up at Code Fellows thirty days ago without any coding experience. I voluntarily left my wife and children so I could complete a personal goal. The Bootcamp was more difficult than I anticipated. It was anything but a cake walk.
The reward is that I’m armed with a bunch of technical skills including, HTML, CSS, and Javascript. I can push my local repositories to GitHub and vice versa. I can manipulate the DOM. I understand jQuery. I can have a conversation with a software developer about AJAX, JSON and Node.js without feeling inferior.
I couldn’t have completed Bootcamp without a lot of help. My instructors, Brook and Dexter, taught us during lectures. My TAs—Scott, Paul, and Dale—patiently guided me through lab assignments. My classmates were supportive with one another and willing to help out anyone who was struggling.
I also couldn’t have completed my journey without Kari and Brian, my wonderful hosts in Seattle. They provided me with lodging, food, rides to and from school, and an in-person support system that I desperately needed. I’m lucky to have friends like Kari and Brian.
And finally, I couldn’t have done any of this without my family. My wife, Stephanie, encouraged me to go on this adventure even though she knew it would mean her responsibilities in Raleigh would be doubled. She gave me support when I was feeling down. She sent me a care package every week containing handmade cards from my children telling me how proud they were of my coding efforts. I didn’t want to let them down. And with their support, I didn’t.
I’m boarding a red-eye flight in a few hours and I’ll be reunited with my family tomorrow morning. I can’t wait to see them. Hug them. And thank them. It’s because of them, I was able to complete this journey, push myself, and evolve as a person.
This is the last part of a five-part series documenting Gino Bona’s journey as he learns how to code. Read Part One, Part Two, Part Three, and Part Four. See the original post on Gino’s blog.