1. A computer-implemented method comprising: receiving, with one or more processors, a request from a first device to transmit media from the first device for presentation on a second device; routing, with the one or more processors, the media from the first device to the second device; determining, with the one or more processors, that a presenter is different from an author of the media; in response to routing the media to the second device, logging a device usage entry that includes a unique identifier for the presenter, a unique identifier for the author of the media, a unique identifier for the second device, and a unique identifier referring to the media; determining an event; identifying audience members at the event; determining which audience members participated in the event; determining, with the one or more processors, one or more keywords relating to content in the media, wherein the one or more keywords relating to the content in the media includes content provided by the audience members that participated in the event; determining a first score for the presenter based on a number of times that the presenter has given a presentation including the one or more keywords; determining a second score for the author based on a number of times the one or more keywords appear in the media; generating an index that includes the one or more keywords and the unique identifier referring to the media; and updating, with the one or more processors, a first user profile associated with the unique identifier for the presenter to include a first indication of a presenter expert level based on the one or more keywords, the first score, and a first score threshold, and updating a second user profile associated with the unique identifier for the author to include a second indication of an author expert level based on the one or more keywords, the second score, and a second score threshold.