- What data do you have access to?
- Can you correlate that data to something else?
- How can you pivot that data to add value?
- Look good
- Feel good
- Save time
- Save money (resources)
- SQL
- MySQL / Percona / MariaDB
- PostgreSQL
- SQLite
- NoSQL
- MongoDB
- CouchDB
- Redis
- RethinkDB
- https://medium.com/@jonatisokon/a-framework-for-user-stories-bc3dc323eca9
- Feature-complete
- Decide what your "A-ha" moment is
- Work on localhost?
- Deploy to Heroku
- Buy a domain, put on AWS, Azure, 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.
- ERD
- Tables/Collections
- Fields
- Initial schema, doesn't have to be complete
- Tables/Models are your Nouns
- Ruby
- Sinatra
- Rails
- PHP
- Laravel
- CodeIgniter
- Node
- Express
- Koa
- LoopBack
- hAPI
- SailsJS
- Python
- Flask
- Django
- If models are nouns, these are verbs
- RESTful
- /nouns
- /nouns/id
- /nouns/id/action
- Each action that your models need to do
- Based on user flow from user stories
- A wireframe for EVERY page of your app
- Be specific about data points on the page
- Storyboard the user workflow
- Tools:
-
Bootstrap
-
Foundation
-
Pure
-
Skeleton
-
SASS
- Bourbon
- Black Hole
-
Flexbox
- Bulma
-
RESPONSIVE?
- Re-wireframe a mobile/responsive version
- Do you need a mobile & web scenario in your User Stories?
- Angular
- Ember
- Backbone
- Knockout
- 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
- Don't code on master
- Pick a workflow - git or github
- 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
- Download all resources you will need
- Figure out how to install them
- Are you going to use a buildtool?
- Webpack
- NPM
- Browserify
- Are you going to use a generator?
- MAKE SURE IT WORKS FOR YOU!
- Gulp vs. Grunt - Yeoman vs. Slush
- Bower
- Back-end or front-end - where to start?
- Build static pages first
- Get the CSS to work
- Decide on ID's and classes
- If building responsively, make sure it works before making it dynamic
- Responsive images?
- Start with models
- All database validations
- Figure out your callbacks
- Build in the pattern that MVC implies:
- Router
- Controller
- Model
- View
- Views can be copied from static versions of pages
- Use as many helper methods (code atomically) as you can
- Use Trello/Pivotal/JIRA
- Set due dates
- MEET THEM
- Set development targets
- MEET THEM
- Specific
- Measurable
- Achievable
- Relevant
- Time-based
- Slack
- Telegram
- HipChat
- Trello
- SMS