Before I ever considered software engineering as a career, I suggested meeting a friend for a workday at a coffee shop. At the time, I was pursuing a career as a contemporary dancer and in the midst of planning movement and music for a new dance piece that I was choreographing. My friend already worked full-time as a software engineer but also worked on freelance software projects. At my suggestion of a workday, he said “there is always more work to do” and that he could definitely use a work buddy. At the time, I didn’t think much of his wording; every field requires plenty of work. But a year later, as I transitioned to software engineering myself and enrolled in the Flatiron program, I found that phrase bouncing around in my head more and more. As I completed my third project with Flatiron — a Ruby on Rails content management system — I kept coming back to it.
There is infinite room for improvement in software development. As I planned out my application, I had a ton of ideas for really cool features. I wanted my content management system, called Cafe Directory — a user moderated resource of cafes and coffeeshops throughout the US — to have useful functionality that would allow a user to find the exact cafe that they wanted at any particular moment. I wanted it to rival GoogleMaps or Yelp, but with user generated content, a la Wikipedia. Of course all of these big names that provided inspiration are maintained by whole teams of people with significantly more knowledge and tools at their disposal that myself (at the current moment). I quickly realized that I probably couldn’t create a Cafe Directory that would allow a user to do an open-ended search by location, hours, speciality, keyword, etc in merely a few weeks. Even gathering data on all of these details would be fairly time consuming. Rather, I could create a cool application that would allow a user to filter or search by one thing, in order to practice implementing scopes. Eventually, with more time and knowledge, hopefully I could return to the application and add additional search features.
** Originally published March 23, 2021 via github.io