Lactic acid bacteria (LAB) fight competing Gram-positive microorganisms by secreting anti-microbial peptides called bacteriocins. Peptide bacteriocins are usually divided into lantibiotics (class I) and non-lantibiotics (class II), the latter being the main topic of this review. During the past decade many of these bacteriocins have been isolated and characterized, and elements of the genetic mechanisms behind bacteriocin production have been unravelled. Bacteriocins often have a narrow inhibitory spectrum, and are normally most active towards closely related bacteria likely to occur in the same ecological niche. Lactic acid bacteria seem to compensate for these narrow inhibitory spectra by producing several bacteriocins belonging to different classes and having different inhibitory spectra. The latter may also help in counteracting the possible development of resistance mechanisms in target organisms. In many strains, bacteriocin production is controlled in a cell-density dependent manner, using a secreted peptide-pheromone for quorum-sensing. The sensing of its own growth, which is likely to be comparable to that of related species, enables the producing organism to switch on bacteriocin production at times when competition for nutrients is likely to become more severe. Although today a lot is known about LAB bacteriocins and the regulation of their production, several fundamental questions remain to be solved. These include questions regarding mechanisms of immunity and resistance, as well as the molecular basis of target-cell specificity.