opening it up with Common Lisp

Favorite weblogs

Lisp Related

Bill Clementson

Finding Lisp


Planet Lisp



Talking Points Memo

This Modern World

Working for Change

Other home


Recent Readings

Book review: Darwinia
Reviewed: Friday, August 11, 2006

Summer reading: Spin
Reviewed: Saturday, August 5, 2006

Reviewed: Tuesday, July 18, 2006

the Omnivoire's Delimma
Reviewed: Wednesday, July 12, 2006

the Golem's Eye
Reviewed: Wednesday, May 31, 2006


simple, complex, reliable?
Tuesday, May 24, 2005

From Joel on Software:

The way to write really reliable code is to try to use simple tools that take into account typical human frailty, not complex tools with hidden side effects and leaky abstractions that assume an infallible programmer.

Joel uses this as an argument not to use, for example, objects, macros, AOP, etc.

On the other hand, Grady Booch says:

In the presence of essential complexity, establishing simplicity in one part of a system requires trading off complexity in another.

They're both right. (And no, I'm not to going to quote Einstein and his simple but no simpler thang). Anyone that mucked with CLOS has found themselves in the method combination now-what-methods-exactly-are-getting-called morass. That's not, I think, an argument against method combination. It may be an argument for establishing conventions and for not using method-combination willy nilly (the every problem a nail syndrome).

We can't make complexity go away. The goal is to find the right abstractions (even when they leak) so that complexity is managed. This takes skill and time and training (more than 21 days!) and I'm pretty sure that complete avoidance is a bad idea.


Home | About | Quotes | Recent | Archives

Copyright -- Gary Warren King, 2004 - 2006