11. A non-transitory computer-readable storage medium including instructions that, when executed by a processing unit, cause the processing unit to provide help content related to a software application to a user, by performing the steps of: receiving textual input related to a first software application from a first user and comprising help content; receiving first contextual information associated with the first user and related to the first software application; storing, via a processor, the textual input and the first contextual information in a first discussion element; transmitting the first discussion element to a server machine for processing; receiving second contextual information associated with the first user and related to the first software application; transmitting the second contextual information to the server machine; receiving a plurality of discussion elements from the server machine based on the second contextual information, wherein each discussion element included in the plurality of discussion elements stores textual input related to the first software application and contextual information having a measure of correlation to the second contextual information; and causing the textual input stored in at least one discussion element included in the plurality of discussion elements to be displayed to the first user based on a relevance score associated with the at least one discussion element, wherein the relevance score is based on the measure of correlation between the second contextual information and the contextual information stored in the at least one discussion element.
11. A non-transitory computer-readable storage medium including instructions that, when executed by a processing unit, cause the processing unit to provide help content related to a software application to a user, by performing the steps of: receiving textual input related to a first software application from a first user and comprising help content; receiving first contextual information associated with the first user and related to the first software application; storing, via a processor, the textual input and the first contextual information in a first discussion element; transmitting the first discussion element to a server machine for processing; receiving second contextual information associated with the first user and related to the first software application; transmitting the second contextual information to the server machine; receiving a plurality of discussion elements from the server machine based on the second contextual information, wherein each discussion element included in the plurality of discussion elements stores textual input related to the first software application and contextual information having a measure of correlation to the second contextual information; and causing the textual input stored in at least one discussion element included in the plurality of discussion elements to be displayed to the first user based on a relevance score associated with the at least one discussion element, wherein the relevance score is based on the measure of correlation between the second contextual information and the contextual information stored in the at least one discussion element. 19. The non-transitory computer-readable storage medium of claim 11 , further comprising: receiving a textual query from a second user; determining a measure of correlation between the textual input stored in the first discussion element and the textual query; and based on the measure of correlation, determining that contents of the first discussion element should be displayed to the second user.