Hey guys,

I think it's great that we're starting to have some serious interest
in open-source ColdFusion frameworks, but I think we need to keep the
KISS (Keep it Simple, Stupid!) principle closely at hand, especially
when suggesting enhancements.

As someone who's written a few frameworks, I've gone astray once or
twice and it's cost me.  Model-Glue has things that probably shouldn't
even be there (controller-based caching, anyone?).  This has cost me
"ugliness" of the API in some places, higher maintenance costs, and
some parts of the framework (the controller) being "fatter" than they
should be - all because I forgot KISS, and got wrapped up in what my
code *could do for a few* instead of what it *should do for the many.*

I get code submissions for Model-Glue on a weekly basis, and I turn
99% of them down.

I'm not trying to be mean: they're usually very good ideas and very
functional *for the person submitting them,* but it's not worth the
cost to the rest of the Model-Glue community to have to learn a new
aspect of the API for something they'll probably never use.

For a framework to be successful, I think its API needs to be kept
both as small and consistent as possible (or you get PHP).  Addition
of new functionality should be approached very cautiously.

What I like about Reactor is a lot of what I like about Model-Glue: 
you barely even need to read the manual to use it effectively, because
things just make sense (if you understand why you're using the
framework and what it provides to begin with).  The more that gets
added to it, the less true this becomes.

I'm working on Model-Glue Unity (2.0) right now, and KISS literally
keeps me awake at night.  There's something I want it to accomplish,
and while I have all the tools and the code in place, it's requiring
an extra level of complication not present in Model-Glue 1.x and it
really, really worries me.  I've spent five times as much time
thinking about how to make it easy than I have getting the thing to
work (I'll blog about that later today).

-Joe


--
Get Glued!
The Model-Glue ColdFusion Framework
http://www.model-glue.com

Reply via email to