It time to start our final project. Before we do, let's go over a few things shall we....
Before you start you will need to supply the following to John and myself via email:
- Team Members
- Project Description
- Tech stack (and short reason why)
- Project Name
- Preferences for mentor (if any)
There are many reason for picking a project.
- Are you trying to build something impressive for prospective employers?
- Are you trying to explore a technology?
- Are you trying to practice your existing set of skills?
- What do you want your project to do?
- How do you know if it works?
- Will it be responsive?
- Sketch a mobile/responsive version
- Do you need a mobile & web scenario in your User Stories?
- If you're not going to demo a feature, do you need to build it? (If you're launching it, yes you do.)
- UX Checklist - https://uxchecklist.github.io/
- https://medium.com/@jonatisokon/a-framework-for-user-stories-bc3dc323eca9
- When is a feature complete?
- Based on user flow from user stories
- Do NOT use a wireframe program. Sketch quickly instead (sharpies, whiteboard, etc.) - Ignore details early on. See: https://signalvnoise.com/posts/1061-why-we-skip-photoshop
- A wireframe for EVERY page of your app
- If models are nouns, these are verbs
- RESTful
- Each action that your models need to do
- Set due dates
- Set development targets
- MEET THEM
- USE TRELLO
- Specific
- Measurable
- Achievable
- Relevant
- Time-based
- Don't code on master
- Code on a feature or bugfix branch, always
- Switch to master
- Merge
- Delete old branch...ONLY WHEN YOU ARE SURE MASTER WORKS
- Make new branches for each feature or bugfix that you're working on
- DO NOT MERGE TEN MINUTES BEFORE THE DEMO
- Demo Day: TBD
- Set due dates
- Set development targets
- Check in often with your team
- MEET THEM
- Medium to long term planning
- Trello - http://trello.com
- Asana - http://asana.com
- Short Term (Dayboard - https://dayboard.co)
- Sinatra
- Rails
- Node
- Choosing node frameworks - http://nodeframework.com/
- Node w/ Express
- Or choosing something else
- None
- jQuery
- Angular
- Ember
- Backbone
- React
- Meteor
- Why do you want this?
- Because it's "cool"
- Because you want the skill for a job
- Because you read a tutorial on it
- To help you choose...look at http://todomvc.com/
- Skeleton
- Bootstrap
- Foundation
- Pure
- Bourbon
- RESPONSIVE?
- Re-wireframe a mobile/responsive version
- Do you need a mobile & web scenario in your User Stories?
(also discussed: Why Mobile First - http://www.lukew.com/ff/entry.asp?933)
- PostgreSQL
- SQLite
- MongoDB
- Redis
- Download all resources you will need
- Figure out how to install them
- Are you going to use a generator?
- Gulp vs. Grunt - Yeoman vs. Slush
- Bower
- Back-end or front-end
- Build static pages first
- Get the CSS to work
- Decide on ID's and classes
- Start with models
- All database validations
- Figure out your callbacks
- Use as many helper methods (code atomically) as you can
- Demo on localhost:3000?
- Deploy to Heroku
- Buy a domain, put on AWS or DigitalOcean?
- If you're not going to demo a feature, do you need to build it? If you're launching it, yes you do.