Goal: For the next three days you'll exercise all the coding knowledge you've gained over the last 5 weeks by working in groups of four on the cumulative group project you signed up for. At the end of the week we'll present these projects at our Trade Show.
Before you begin coding, review the suggested workflow below, and complete the first three steps with your group:
Decide upon goals for your app. Separate all goals into three general categories:
With the 'things we need' or MVP in mind, brainstorm the 'flow' of your application. This doesn't necessarily mean the styling, but how a user will interact with your site. What will greet them on the homepage? Where will they go in order to see X, Y, or Z? How many pages or sections will your site contain? Draft up a general idea of how you'd like today's project to work.
Agree upon what each pair will work on. Begin with core functionality outlined in your "things we need" list. Remember, pairs shouldn't only focus on the concepts they're already good at, but should also take this opportunity to practice the ones they may not yet feel confident in.
Also, discuss how each pair will complete the tasks assigned to them. Will they create constructors? Prototypes? Begin implementing user interface logic?
After one group has completed a main feature or requirement listed above, review their code together as a team. Provide constructive feedback. Is it well-refactored? Does it complete the task at hand? Is it easy to follow?
Merge this code into your master branch after everyone has had the opportunity to review it. No code should enter the master branch without being reviewed, refactored, and discussed. Assess and resolve any merge conflicts as a team.
Repeat steps 4 and 5 for each feature. As the project develops, you may need to re-assess goals. Sometimes features we expected to complete quickly end up taking the longest. Sometimes the things we anticipate being the most challenging are finished surprisingly quickly. Continue to merge after the completion of each main feature. After you've integrated all "things we need" goals, move on to "things we want", and eventually "wishlist" goals.
For the next three days, the project is up to you!
Regardless of what your group is creating; continue writing plain English specs, committing frequently with descriptive messages, keeping business and user interface logic well separated, and including a detailed README. This will be the first larger project in your growing portfolio, make it something you're proud to show off!
Keep in mind that groups must present their projects at our Developer Trade Show on Friday, and each individual group member must submit the project as their code review this week before the end of the day on Friday. For more details on presentation and code review requirements see here.
Discuss the following with your teammates at the end of each day: