Project-based learning and task-based language teaching: Similarities and differences