- Make a drawing of your app. Simple "wireframes"
- Once you have a drawing, name the HTML elements you'll need to realize your vision
- For each HTML element ask: Why do I need this?
- This is your pseudocode
- Once we know why we need each element, think about how to implement the "Why" as a "How"
- Is there some state we need to initialize?
- Find all the 'events' (user clicks, form submit, etc) in your app. Ask one by one, "What happens when" for each of these events.
- Think about how to validate each of your steps