Mark Burgess wrote:
>> It's hard to imagine something that can't be described in perl - or a 
>> seasoned sysadmin that doesn't already know how to do it (perhaps badly, 
>> but odds are good that 90% of the job can be done with existing CPAN 
>> modules...).   Suppose you need to work with a process that exposes its 
>> status with xml over http (increasingly common around here).  Do you 
>> have to write your own http and xml handling packages to manage it - or 
>> shell out to perl anyway?
>>
> 
> Of course you could express anything in Perl, that's not the point.
> The question is could you do everything that cfengine does in a clear way, 
> and still be
> able to understand your perl program?

I don't see how that question changes based on the underlying language. I don't 
see anything inherently clear in either case.

> Only if you were a full time programmer.
> And that is not a sysadmin's job description.

But one thing perl does very well is to allow the number of programmers 
contributing content to scale - which seems to me to be the important part if 
you want to avoid re-inventing every wheel and building things from atoms by 
yourself.  The point of using perl is that I can make an http request, parse 
the 
returned xml, and write the data to a database of my choice, only having to 
write a few lines myself.  And I can do that and other equally complicated 
things because thousands of different people have written bits of code without 
much coordination and the language permits it to all work together.  Can a 
mostly-uncoordinated set of people write different parts of a cfengine conf 
without namespace collisions?  Is there a way to track internal version 
dependencies among the parts?

> Don't make the mistake of thinking of cfengine as just a scripting language. 
> It is an
> automation framework.

Yes, but automating machines isn't particularly interesting or the main part of 
what I'd like to accomplish.  And seriously, modern systems run nearly 
unattended for years these days anyway so that's not the hard job.  What I 
really want is to facilitate what a team of specialized humans do - and I don't 
see how this part can scale unless I'm missing something.  This is what I was 
trying to ask earlier regarding different people in different roles.  How do 
the 
people who have particular application knowledge provide that code in a way 
that 
a non-programming operations scheduler can choose when a particular application 
version, which might need the corresponding cfengine conf code to manage, goes 
to a particular machine?

> And as for "seasoned sysadmins", the more seasoned they think they
> are seasoned, the more they tend to be stuck in bad habits of the past. A 
> *great* sysadmin
> is one that is constantly challenging his/her assumptions.

Yes, I'm intrigued at some of the concepts here, but some things aren't 
assumptions, they are just facts.  And I want the program to work for the 
humans, not the other way around.

-- 
    Les Mikesell
      lesmikes...@gmail.com

_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to