The crazy things you’ll be able to do after 14 days of starting your bootcamp
I was an advanced analytics professional prior to starting my immersive software engineering bootcamp. As such, I was able to code in various languages (e.g. R, Python, SQL) in order to wrangle, clean, and visualize data. But I had never built an application from scratch. That kind of magic was left to the unicorns in the R&D parts of the buildings where I had worked. Or so I thought. After about two weeks, I too would be able to do some of the things those unicorns do as well. I’ll show you how. Let’s saddle up.
The first part of my course focuses on unpacking the fundamental development concepts and uses of Object Oriented Programming (OOP) and Object Relational Mapping (ORM). While I had heard of these techy sounding things before, I never fully understood it. There are plenty of resources that dive into the details of this, so I won’t here. Suffice to say it’s the cornerstone of application development by allowing one to:
a) Create your own data structures that contain their own custom functions and procedures you can define.
b) Use the properties of these data structures to build the underpinnings of a data mapping system that can function like a database to house and retrieve data.
In other words, you can start to build, store, edit/delete, and retrieve stuff how you want to. This is referred to as an application with CRUD functionality. And without it, nothing worth building would be very useful.
I used these concepts to build a small application to do one of my favorite things to do: PLAY TRIVIA!
By using an API from Open Trivia to retrieve crowd-sourced questions and answers, my partner and I designed a game from scratch, thinking about fundamental questions such as:
- What kind of actions would a player want for this game?
- What kind of information would make sense for players to easily retrieve?
- What should the flow of the game be?
- …and on and on and on…
Using the concepts learned in class, we methodically designed a game that we’d want to play, as we’d want to play it.
It took about 10 days to get the knowledge necessary to build this game; and another 4 days to actually build it. The payoff was personal and profound. Every time we demoed the game, people wanted to keep playing and playing. The smiles on the faces of those playing brought a deep satisfaction and mental reinforcement that I too could build something that people might find useful. That alone was worth the many hours of learning and coding. If you’re curious, here’s the Github repo for it, where you can dive deeper into the technology, code, and even download and play it yourself!
While not pretty or a seamless experience to get up and running (it is a humble command-line application after-all- DOS nostalgia games anyone?), , this demonstrates that you can build a full application, that does something, stores information, and retrieves that information, in just a couple of weeks. The process of making it seamless and pretty by transforming this Ruby application into a full web application shall be a topic for another post.