Syntactic Vinegar



Syntactic Vinegar is the personal blog of Ben Vinegar.

The term “syntactic vinegar” was coined by Rubyist David Heinemeier Hanson in 2006, intended to be the opposite of “syntactic sugar”.

Good design lies not only in emphasizing the proper, but de-emphasizing the improper too. Just as we can sprinkle syntactic sugar across a certain style or approach to promote its use, we can add syntactic vinegar to discourage it as well. It’s more sparingly used, but that makes it no less important.

Sprinkle syntactic sugar to encourage. Then, make that which is uncommon, that which is suspicious, into an ugly structure. If the programmer truly needs it, the bitter taste of the vinegar will not be a deterrent. But if she doesn’t, you did your best to reel her back from an unnecessary off-road excursion.