Final Projects — Plan on Planning…
This week we are beginning our final project at the Iron Yard: a three-week long, fully functioning CRUD web application. I’ve known this was coming for months. Having attended the previous cohort’s Demo Day, I had some ideas bubbling in my head for an amazing app that would show off all of my new skills as well as creative and fun spirit.
Probably the most exciting part of this project is looking back and where I’ve come and where I am now. I never expected to love coding so much. I knew I loved being creative, logically thinking out how to solve problems, and coding (in a very general and narrower sense). But now I love talking about ways to break down React components or how much fun manipulating state could be. It’s even more challenging to try and limit my use of state to just one central hub and letting the effect of state trickle down or events bubble up. It’s like a game, honestly. How clean and organized can I make this app look and function? I enjoy comparing my work with my classmates — sometimes I’m slower, sometimes faster; but every time, I find myself to be the so focused on organization and layout of how each piece affects another. It can sometimes make me look like I’m thinking too far into something — kind of like how people can easily over-analyze why you were just dumped or didn’t get a certain job. When my project starts taking shape, starts looking good, I am pleased when I encounter bugs that are quickly solved.
Our previous project involved using Spotify’s API and allow registered users to vote on bands/musicians that they would like the venue to invite into town. I had to rewrite so much of my code because my testing wasn’t going to work: I had imported a ‘store’ into my collection of voted-on-bands, which was throwing errors until I removed that import from my collection. This meant changing all of my custom functions…These functions were vital to finishing the project. Voting. Unvoting. Creating a new voted-model...etc. I was devastated. I chose to pass the information I was previously lacking (using the properties from my components where I was calling the functions) though my as arguments. 15 minutes later. FIFTEEN MINUTES. And not a single TYPE-O or syntax error…who have I become? Not only did everything work, but my code looked cleaner, but it became more discrete and improved the overall look and functionality. This is what I’m going to be focusing on practicing for my final project.
My project is Waggle — A social-media dog-finding app that allows you to search cute dogs, find dog-friendly places, and maybe get to know your new dog-friend’s human! All based on locations near your current location! — I spent at least a day planning my wireframes, where custom functions will be and how events and states will behave. This is the clearest I’ve felt in terms of starting a new project. The anticipation to finish and make it look and function like a dream is killing me. But I also want to completely redraw all my wireframes to ensure that I haven’t missed anything. Balance Shannon, balance. I’ve decided to use my already great wireframes and just build off of them when something new comes to mind. The fluidity of this planning and building process is complicated, confusing and contradictory. You can’t plan it all out. Sometimes you have to run into those questions as you code. You can’t start from scratch either. Redesigning a component late in the game is risky and nerve-racking. I’ve made that mistake and paid for it by spending at least 4 hours just making some buttons look more balanced in a modal…not the best use of time.
Trello is great for planning out how to do something, when do it, and what not to get carried away with — my biggest problem. It’s so much fun to get carried away with the fun and exciting aspects of your app. “How do your users get to the feature page, Shannon?” — “Oh they just have to know the exact address and type it in the url!” No. No, no no. Make your nav. Make it function. Then you can worry about making it FUN-ction...haha. Don’t get me wrong, I’ve been a decent planner throughout this intense experience at the Iron Yard…But seriously. Planning on planning (at greater detail) forever and more.