1. A method for encouraging communication over a network between participants engaged in a learning activity, comprising the steps of: opening a communication channel over a network between the participants; presenting an objective shared by the participants that requires cooperative interaction between the participants to complete the objective; displaying content related to the objective to each participant of the learning activity; exchanging messages in real-time between the participants over the communication channel to allow the participants to progress cooperatively towards completing the objective; receiving input from one of the participants of the learning activity representing an action taken in response to the messages exchanged over the communication channel; and dynamically updating the content displayed to the participants based on the action taken by one of the participants during the learning activity to depict progress towards the objective.