Skip to content

Instantly share code, notes, and snippets.

@rpdecks
Created June 18, 2020 20:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rpdecks/3bd134566cf20d48b22607dd8bd04d92 to your computer and use it in GitHub Desktop.
Save rpdecks/3bd134566cf20d48b22607dd8bd04d92 to your computer and use it in GitHub Desktop.
Get hype. The next 2-3 weeks of your life are all about your final project. This is the capstone project that you’ll be showing off to demonstrate all the things that you’ve learned over the last few months. This is awesome. Before we dive into what your project is going to be about, we need to establish some ground rules.
Behavioral Expectations
You will show up by 9:00 and leave no sooner than 6:00
You will actively participate in stand-ups, retros, and check-ins
You will complete your MVP by the date it is due
You will adhere to the project decisions made by leads/project managers
You will communicate issues with your project manager
You will be courteous to your classmates, and work together to solve problems
You will have properly researched and debugged before escalating to your project leads.
You will not begin work on your project until you have pitched your MVP and been approved
Final Project
This is the time to dive into React libraries you’ve gotten interested in, or play with APIs that would have taken too long to figure out during a shorter project week. This is the time to make the app that you’ve always wanted but never had, write up a bunch of custom CSS, and really put your skills on display.
Because we’re asking you to show off a specific set of skills, we have some requirements. It should be obvious that one of the requirements is that you need to use the things that you learned while at Flatiron. This isn’t the time to build a game with Unity or explore the MEAN stack or try and whip up a React Native app. You’ve done a ton of learning already - it’s time to apply all of that knowledge.
First thing first - the burning question: Are we required to use Redux and Auth in our final project? The answer is…. it depends.
Project Requirements
The listed requirements below are guidelines that should help you to determine what the complexity of your project should be. They are not hard and fast rules, and final project approval is up to your leads and SECs, who will be acting as project managers.
Backend
Your project must use a non-trivial Rails backend. Consult the following list for examples of things to include. You do not need to include all of these things, and the final decision of what must be included will be up to your project managers.
[ ] Auth
[ ] Tests
[ ] Multiple has_many_through relationships
[ ] Seeds from a complex data set
[ ] Custom routes
[ ] Custom controller/model methods
[ ] Basic database query optimizations
[ ] Background jobs for slow actions
[ ] Sockets or email integration
[ ] One significant refactor
[ ] Validation
Frontend
Your product must use a React based frontend. Consult the following list for examples of things to include. You do not need to include all of these things, and the final decision of what must be included will be up to your project manager.
[ ] Auth
[ ] Tests
[ ] Interacting with a complex API
[ ] Redux
[ ] Custom CSS
[ ] One significant refactor
Schedule
For much of Mod 5, your time is your own. There will be a few lectures and other activities, but most of the time will be dedicated to your project. This does not mean you get to come in late or leave early or take four hour lunch breaks. Think of this as a work environment. Below are a list of particularly important dates.
Week 1
Day 1 - Initial Project Pitches
This is when you get to pitch whatever pie in the sky things you want. We’re not yet worried about what your MVP is or whether your idea is practical - just come up with ideas. You won’t be starting on your project until Day 3, so think of this as your research and development phase. Learn Auth, learn Redux, learn how to use complex APIs and libraries. Your SECs will give you an idea of what is and isn’t practical, and some guidance on the technologies you’re looking at.
Day 3 - Project Proposals
You will have your project ready to pitch to a panel including a lead and your SECs. You’ll have the models drawn out, a sketched out version of what your frontend will look like, and evidence that you’re able to use the APIs and libraries that you’re going to implement. You’ll also have a proposal for what your MVP will look like. You’re expected to have the MVP complete a week from this day. Together you and your instructors will determine the best project to move forward with.
Day 5 - Retro
In addition to doing stand-ups every morning, you’ll be taking part in a retro every Friday. This will be the time to talk about what went right, what went wrong, what roadblocks you’re still up against and your plan of attack for getting over them.
Day 5 will also be the first of your mandatory check-ins with your assigned project manager. You’ll have two of these leading up to your MVP presentation. After that, office hours will be available to sign-up for, but will not be mandatory.
Week 2
Day 3 - MVP Presentations
You will present your completed MVP to your project manager and a lead instructor. You should have all the functionality that you promised during your project proposal, as well as a plan of attack for the next week.
Week 3
Day 3 - Projects Complete
By week three, day three, you should have your project done. There’ll still be time to work on it before science fair, but this should be styling and minor bug fixes only - you should be done with all the core functionality.
Day 4 - Science Fair
This is the day that you’ll be showing off your projects to the rest of the school, friends and family, and prospective employers. Science fair lasts from around 3:00 to around 7:00, so prepare for a long day of talking to people about your project. People do get job interviews out of science fair, so make sure to put your best foot forward, dress a little nicer than you normally would, and get that elevator pitch ready!
Day 5 - Graduation
You made it! Today you get your final survey, a free bagel/muffin/coffee breakfast and you get to take part in the graduation ceremony. Get hype! Graduation will be over by noon. Because campus space is limited we do ask that you gather all of your belongings and clean up your workspace by 1:00pm so that the incoming Mod 5 class will be able to settle into the space.
Helpful Tools
Organization
Kanban/Scrum Board
Just because you’re working solo doesn’t mean you don’t need to stay organized. In fact, because this will be the most complex project you’ve made at Flatiron, you’ll need something to keep you organized. We recommend Trello or a Github Project Board. Use this to track what you’re doing and what you need to work on. It’s also a great idea to keep track of bugs that you’re not going to immediately fix.
Pomodoro Timer
If you don’t take breaks, you’ll end up hurting your eyes, getting an RSI or burning yourself out. The Pomodoro Timer method lets you put in solid chunks of work while also giving you regular breaks. We like Marinara Timer, since it’s nicely customizable.
Code Resources
Google Fonts - An amazing resource for fonts of all types
Grid Garden / Flexbox Froggy - Great for getting familiar with Grid and Flexbox
CSS Tricks - Learn yourself some sweet CSS
Semantic UI React / ReactStrap - CSS styling using React components
Postman - Test your backend without having to build out a frontend
Heroku - Simple, free hosting for your site
App Ideas - some ideas for non-standard apps
How to hide API keys in Javascript / Ruby | option 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment