with demo from my BDD talk