Articulating design decisions: communicate with stakeholders, keep your sanity, and deliver the best user experience