Understanding the many steps for effective collaborative language projects