Asynchronous JavaScript for synchronous people