Sharp sigmoidal transitions of transcription in response to morphogenetic gradients are often involved in the generation of boundaries during development. Here we explore two simple models of transcription that generate sigmoidal outputs. Specifically, we analyse the case of a promoter responding to a single type of activator. We then consider a model where an activator and an inhibitor, distributed as two gradients with opposite slopes, act competitively on the same promoter. This system can produce a sharper response than that obtained with a promoter with the same number of binding sites responding to a similar gradient of activator alone. We also explore how these systems buffer the effect of variations in the dosage of the morphogens. Our results highlight how non-linearities can be a source of robustness and the crucial role of the inhibitor in the generation of a sharp and robust response.