On preparing students for distributed software development with a synchronous, collaborative development platform