2. A method for creating a curriculum unit in a learning management system comprising the steps of: creating, at a computer server, in the learning management system at least one programmed project associated with the curriculum unit, the programmed project comprising: a) at least one instruction set specifying at least one rule capable of reacting differently to different inputs; and b) at least one executable, social network-based learning object having at least one associated attributes wherein the at least one rule is capable of reacting dynamically to inputs adapted to the rule for controlling the at least one attribute associated with the object and triggering an event based on the at least one attribute associated with the object or other inputs and wherein the at least one instruction set specifies a manner of use in which the at least one executable, social network-based learning object can be executed; setting, at the computer server, the properties for the curriculum unit in the learning management system; creating, at the computer server, at least one state for the at least one programmed project; retrieving, at the computer server, the instruction set independently from the executable, social network-based learning object and determining at least one event for the at least one state in the learning management system based on the at least one rule and the at least one retrieved instruction set; and defining, at the computer server, at least one role of at least one participant in the learning management system with respect to the curriculum unit.
4. The method of claim 2 further comprising adding another project associated to the curriculum unit in the learning management system.