Mod-2 Flatiron Ruby / Sinatra Portfolio Project

Another chapter has been written in my book of learning to code. Although Flatiron set me up for success, I didn’t follow the formula to the T like I should have. This was challenging for me, for various reasons including sickness in my home (my children and I), my pursuit of self-mastery, and my obligation of becoming an expert on Algorithms. Honestly I probably made it harder than it needed to be by learning Algorithms and Data Structures at the same time as attending this cohort with Flatiron…but I don’t just want to ‘pass’ Flatiron and get my certificate…I want to create amazing programs and websites — at Flatiron and far beyond. So, I began with a great idea, a portfolio website, that would be used to showcase the portfolios of various users that signed up. A user would sign up, populate their account with their works, and have an online hub to showcase their projects to all their peers. It was a great idea, but poorly executed on my part. I started coding immediately. What a terrible idea! This went against everything I knew to be a best practice. You plan it out conceptually, and then you code. That’s how I should’ve done it. But I was so excited to style my pages as I moved along…I ended up getting stuck on a styling bug and could never move past it because it affected the display of my views…something I never would’ve encountered if I did this the best practice way. So, after an early start, and a week into the official project mode, I found myself back at square one — starting over with a new idea. The lesson here was to make a project

I decided to move forward with a project I was originally planning to do at a later point in my learning at Flatiron — a Learning Management System. With my skills now, this program would be less than I hoped, but I can build upon it as I grow with Flatiron and learn new concepts. With this new project idea, I made sure to follow better practices by creating a plan for how to create the project. I wanted to get all the necessary CRUD functionality right off the bat, and update the style after the fact. With this new process, instead of me getting stumped on styling and not even being finished with my projects MVP, I finished with the MVP of my project quickly and efficiently, and I can focus on adding a little bit of styling.

This process has been stressful, but certainly rewarding. I now feel like a more complete developer having built a website with Sinatra ActiveRecord and Ruby. On to the magic that is Ruby on Rails!