- Don’t get too caught up in awesome features. Simple is always better, and you can build something impressive that does one thing well.
- Design first. Planning with user stories and wireframes before writing code means you won't get distracted changing your mind. You'll know what to build, and you can spend your time wisely by just building it.
- Don’t hesitate to write throwaway code to solve short-term problems.
- Read the docs for whatever technologies / frameworks / APIs you use.
- Write DRY code and build RESTful APIs.
- Be consistent with your code style.
- Commit early, and commit often. Don’t be afraid to break something, because you can always go back in time to a previous version. Work on feature branches to minimize risk.
- Keep user stories small and well-defined, and remember – user stories say what a user needs from your app, not what development tasks you have to tackle.
- Write well-formatted and readable code. Are you indenting consistently? Can you find the start and end of every
<div>
, curly brace, etc.? - Comment your code. Will another developer understand what's going on in each block or function? Even if it's obvious to you, explaining the what and why means someone else can pick it up and get it.
- Write pseudocode before you write actual code. It helps to think through the logic before coding the functionality.
- HackDesign (beginner's reference for thinking like a designer)
- Visual Design Hacking (a great tips-and-tricks focused video from GA's Front Row)
- Web Design for Non-Designers (another great design-related course from GA's Front Row)