- It is more important to have a standard than what the standard is.
- ‘use strict’ in JavaScript.
- jslint
- jQuery
- Throw objects not strings as exceptions in JavaScript:
throw { 'name': 'MyException', 'message': 'Something went wrong', 'code': 500, 'previous': e // Nested exception. }
- Controllers should be super-skinny (because they are hard to test).
- HTML5
- Only read querystring and post body in the controller.
- Say *why* you did something in the commit message, don’t just describe what you did.
- The first line of a commit message should be a short standalone message.
- Err on the side of verbosity in commit messages.
- Don’t form HTML in JavaScript strings.
- Good internationalization is hard (ICU?).
- Run the tests before pushing.
- Automate deployment.
- Keep markup as semantic as possible.
- Code review is a priority.
- LESS
- SMACSS
- Responsive Design
- Backbone
- Automatically pull dependencies in, don’t add them to the repo.
- Don’t store artifacts generated by the build process alongside the source code.
- git
- Unit tests
- The unit tests should run *fast* and offline.
- Send the right HTTP response code.
- JSON