This post originated from an RSS feed registered with Ruby Buzz
by Andrew Johnson.
Original Post: Simplicity via Complexity
Feed Title: Simple things ...
Feed URL: http://www.siaris.net/index.cgi/index.rss
Feed Description: On programming, problem solving, and communication.
…If you aim to dispense with method, learn
method …If you aim at facility, work hard …If you aim
for simplicity, master complexity — Lu Ch’ai
(Wang Kai), [chinese painter, ca 17 century]
The economy and simplicity of traditional oriental painting is not arrived
at by squinting at the subject in order to blur or filter out the
complexity — subjects are studied in detail (with both eye and mind).
The simplicity and elegance are distilled from the far side of that
process.
Consider the tale/fable of the gentleman who entered a well known chinese
painter’s shop and described a painting he would like to have
painted. The painter talked the painting over with him over a cup of tea,
thought for a few minutes and said he could do such a painting but he
wouldn’t have it ready for a year. The gentleman frowned at such a
delay, but this painter came highly recommended, so he paid a downpayment
and left the shop.
A year passed and the gentleman returns and asks the painter if his
painting is ready. Without a word, the painter rolls out a new length of
rice paper, grinds some fresh ink, and proceeds to paint the picture before
the gentleman’s very eyes. In a few minutes he is finished. The
gentleman is stunned, and quite impressed that this picture, painted in
just a few minutes, captured exactly what he had wanted. "Don’t
get me wrong", the gentleman spoke, "the painting is exquisite.
But it took you less time to paint than we spent drinking tea a year ago,
could you not have found the few minutes needed to paint it any
sooner?"
The painter went to a cupboard and retrieved a large box full of hundreds
of discarded versions of the masterpiece now drying on the table.
"Which of these", the painter replied, "would you have
wished to have sooner?"
Well, there may be as many versions of this fable as there were discarded
paintings in the box, and, Damn, could that painter estimate a project
or what!? But project estimation isn’t my point. Try this one:
I would not give a fig for the simplicity this side of
complexity, but I would give my life for the simplicity on the other
side of complexity. — Justice Oliver Wendell Holmes
(1809-1894)
I think we can all recognize a certain Truth in these quotes that applies
to any human activity — and certainly to software development.
Getting over the complexity divide takes work. You can’t just skirt
around it, and you shouldn’t fear it.
Behind complexity, there is always simplicity to be
revealed. Inside simplicity, there is always complexity to be discovered.
— Gang Yu