Code Adventurer

The Journey to Software Crafts(wo)manship

Build Your Own API Data Vaccum With Sinatra, Redis, and MongoDB

• published in api, mongodb, redis, sidekiq, sinatra, tutorial

After setting up a SparkCore device (an internet-connected, Arduino-like device) to report the temperature and humidity in my greenhouse, I had one problem: persistance of the data. The SparkCore can transmit data via their SparkCloud API if you assign a variable for it in your Arduino code, and so I had a place where the data was constantly being transmitted. However, since the SparkCore itself has very limited memory capabilities, and since the only thing the SparkCloud itself does it provide a JSON-formatted API, I needed to figure out how to periodically ping the API and scoop up the data into a database.

This didn’t seem like a job for the heft of Rails, so I started with Sinatra. My goals were to create something that others could reuse, improve upon, and deploy easily. Below I’ll outline how to build your own API-slurping app from scratch. If you’d rather just grab the code and hack on it, you can find it on GitHub at evolution of the project is evident through the commit log, so you can see how I started building up from a few simple files to a more organized solution.

In this walkthrough, I’ll be showing you how I built a simple Sinatra app with Redis and MongoDB to suck out data from and API and store it in a database for use in a data visualization project.

My First 100 Days as a Software Engineer

• published in journey

Today marks 100 days* since my first day as a software engineer at Hireology, and it’s been an amazing experience.

A week before I officially became a software engineer, I packed up my apartment in Denver, shipped some bigger things home, packed the rest of my life in a suitcase and hopped back on a plane to Akron, Ohio.

I had done it — I had learned as much as I could in the six months that I attended gSchool with my fellow classmates, and leveled up my game in building things on the web. I learned test-driven development, service oriented architecture, modular design and so many more things. And now, I had a week to reorganize my life, and start my job as a remote engineer on a product team.

The Value of Mentorship

• published in journey

When making the decision to start a new career, you might find yourself a little lost. This can lead to a lot of online searches, reading articles and books on the subject at hand, and trying to understand quite a bit of contradictory advice. Instead of more online searches and questions posted to forums, the best investment you can make is in finding a mentor to help you through the maze. Throughout my journey, I’ve come across great mentors, and have been starting to see patterns that emerge during a mentorship that make the relationship valuable and fulfilling for both parties.

Lessons Learned as a Budding Programmer

• published in journey

A little background

I wasn’t new to computers five months ago when I started gSchool, a 6-month intensive & immersive course in learning Ruby and Ruby on Rails, but I might as well had been.

I had spent the previous six years as a web designer who had a knack for getting things to work right. I had set up VPS servers, built up content management systems, and even began building lead generation systems from scratch in PHP with MySQL backends. I had heard acronyms like OO and MVC, but really didn’t know how to program in an object-oriented way, or why models, views, and controllers even mattered. I came to gSchool thinking I would naturally be a top student, as I had been in other courses and programs. I quickly realized this wasn’t the case, but it took me some time to come to terms with that. Looking back on the last five months I think I know why, and hope to be able to help others learning how to program understand what is happening if they come across similar frustrations.

56 Days Until Takeoff

• published in journey

56 days from now, 26 students from gSchool will be closing their laptops, saying their goodbyes, and getting ready to start their careers as software developers.

Dashing Down the Rails

• published in journey

It’s amazing to look back on my time here at gSchool and realize that at this point in time, if I were in a shorter bootcamp program, I’d be graduating today.