in programming

Fast, Cheap, Good

“Tradeoffs: Fast, Cheap, Good – Pick Two.”

That saying is usually depicted with a triangle – each edge or point of the triangle has one of the words on it. Kind of a binary (or ternary?) thing:

  • You can have Fast and Cheap, but it’ll be lousy.
  • You can have Fast and Good, but it’ll be expensive.
  • You can have Cheap and Good, but it’ll take a long time.

The simple Pick Two decision implies that your project will be lousy, expensive or will never be completed in the first place – in other words, a failure. I think the choice is not that simple – nor should it be.

Vivid Media has a nifty interactive slider graphic that is more realistic than the Pick Two scheme (and it’s so much cooler than a plain ol’ triangle, too).
Each Fast, Cheap and Good slider moves a bit up or down as the other sliders are moved – it’s not strictly an ON/OFF relationship. There is more granularity than simply “fast or slow,” “cheap or expensive,” and “good or lousy.” These degrees of choice should be considered as a continuum of interrelated options – I think this is a much better way of thinking about the “What are the tradeoffs?” question.

Edit: has some interesting comments on “good.”

Write a Comment