Best Practices For Asynchronous Learning