A user level on a Joomla site with access only to the front end. Publishers have permission to write, edit, and publish site content.

A Joomla extension that displays the results of a survey conducted on your site.

A plugin is a kind of Joomla! extension. Plugins provide functions which are associated with trigger events. Joomla provides a set of core plugin events, but any extension can fire (custom) events. When a particular event occurs, all plugin functions of the type associated with the event are executed in sequence. This is a powerful way of extending the functionality of the Joomla! Platform. It also offers extension developers a way to allow other extensions to respond to their actions, making extensions extensible.

The Joomla! plugin architecture follows the Observer design pattern. The JPlugin class provides the means to register custom plugin code with core or custom events. The JDispatcher class (JEventDispatcher in Joomla 3.x) is an event handler which calls all plugins registered for a particular event, when that event is triggered.

Reference: http://docs.joomla.org/Glossary

jdoc statements are included in every Joomla template and indicate where the output from other parts of Joomla or its extensions should be positioned in the overall web page. A typical jdoc statement looks like this:

<jdoc:include type="component" />

See the jdoc statements article for more information.