[xen-tools] Re: More changes

Steve Kemp steve at steve.org.uk
Thu Sep 6 16:15:55 CEST 2007


On Thu Sep 06, 2007 at 06:39:18 -0700, C.J. Adams-Collier wrote:

> I understand where you are coming from.  However, the code is
> currently a good start, but it is not ready for production in terms of
> unit test coverage, extensibility, modularization, maintainability,
> documentation, and others. 

  A.  Yes.

  B.  No - it is in use in production already ... ;)

> This is what I am referring to when I recommend making the software
> extensible.

  I certainly agree that extensibility is a good thing, and I'd
 say that I've added all the types of hooks that people have asked
 for.

  Certainly there is room for more customization, ideally without
 having to write code, but at the same time its worth noting that
 everything that has been asked for has already been added...

> >
> >   Sure.  My objection is that the fact the code is in perl is
> >  irrelevent to 99% of users, it is an implementation detail.
> >
> >   People install the software because they want to create new
> >  xen guests easily.  So ultimately they only need 'make install',
> >  and probably 97% of them don't touch anything else.
> 
> Why do users need a make install?  99.9% of users will be installing
> this software via their distribution's installation mechanism.  The
> only folks who look at this source package will be those interested in
> extending or packaging it for a third party vendor.

  People do install from source, though I accept and expect more
 will use their distro's packages.

> Yes, all of these features could be re-written just for this project.
> It would, however,  be at the cost of complexity of your code,
> divergence from a standard implementation and loss of the support of
> the community of Moose users.  I advise you not to fall into the trap
> of re-implementing something that is already done elegantly and tested
> by hoards of users.  We do this at work all the time to the tune of...
> well... far too much time, energy, and money.
> 
> http://en.wikipedia.org/wiki/Not_Invented_Here#In_the_free_software_community

  In the general case that sounds true.  In this specific example I
 think you're overstating the case for "perfect" software.  I know
 there are likely to be bugs present, but most of the code I'm happy
 with.

  I'd expect that even with OO use the same will remain the case.
 Unit coverage is a good thing, documentation is a good thing, but
 I'm not going to sacrifice the way that I'm used to working to
 make sure that we have pre/post-conditions, assertions every 
 other line of code, for example!

> >   That just seems alien to the way I think about and read perl.  It's
> >  too much like magic, and not enough like simple to modify and extend
> >  for me.
> 
> I see where you're coming from.  It took me a while to become
> comfortable with it as well.  But if you read it a few times, you'll
> see that it is syntactic sugar around a common mechanism.  Consider
> this instead:
> 
> my %logpathDef =
>   (
>      is         => 'ro',
>      isa       => 'Str',
>      default => '/var/log/xen-tools',
>   );
> 
> has( 'logpath', %logpathDef );

  That's slightly neater.

> >   I'm 60/40 against at the moment to be honest.  But at the same
> >  time I don't want you to stop sending code..
> 
> Heh.  There's the rub, eh?  Maybe it would help if I gathered a list
> of interesting projects using Moose and asked the authors to give a
> list of reasons they decided to use it?

  I think that would be mostly irrelevent.  The reason they chose it
 is because they want to.  The reason I must agree to use it is because
 you want to contribute code and you want to use it!

  The code that is present can stay, and if you want to add more code
 using Moose I will, reluctantly, accept it.  But I think I will
 probably need a cluebat before I start writing in that style so
 patience is appreciated.

  If you have more patches feel free to submit them to me/the list.

  If you get another one past me then I'll be happy to give you
 commit access - and I'll really try to get the config parsing
 stuff migrated today.  I got tied up in other things yesterday
 evening :(


Steve
-- 





More information about the xen-tools-discuss mailing list