[Catalyst] Re: using Plugin::Singleton and testing

Matt S Trout dbix-class at trout.me.uk
Sat Nov 18 18:53:24 GMT 2006


Daniel McBrearty wrote:
> You generally design systems with initial constraints in mind.

*sigh*

Perhaps, but ideally you codify as few of these in as required assumptions as 
well. Not doing that tends to mean that you end up in a situation where if one 
of your assumptions turns out to be incorrect ("640k should be enough for 
anybody") or if one of your assumptions is incorrect in a new use to which you 
want to put your application ("I wonder if I can re-use my Catalyst handler to 
power an IRC bot") then you end up spannered.

Avoiding making assumptions where not absolutely necessary is also how you get 
emergent properties out of systems - people have done some awesome things with 
DBIx::Class that worked not because I even remotely foresaw they might do it, 
but simply because I did my best not to rule out anything unless I *really* 
had to.

Of course, in a single-purpose application this isn't nearly so important as 
in library/systems dev, but food for thought nonetheless


-- 
      Matt S Trout       Offering custom development, consultancy and support
   Technical Director    contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd.  mst (at) shadowcatsystems.co.uk for more information

+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +



More information about the Catalyst mailing list