>>>>> "Sanjai" == Sanjai Narain <[EMAIL PROTECTED]> writes:

  Sanjai> Logic-based languages are great for expressing complex
  Sanjai> constraints arising in system administration. However, it is
  Sanjai> also considered axiomatic that system administrators will
  Sanjai> never use such languages. The reason given is that they
  Sanjai> require too much mathematical training. I would like to
  Sanjai> challenge this view. What is so hard about logic? Everyone
  Sanjai> knows Boolean constraints. First-order logic is simply
  Sanjai> Boolean logic + quantifiers. This is adequate for specifying
  Sanjai> a very large class of constraints. If system administrators
  Sanjai> can handle complexities of procedural languages like Perl,
  Sanjai> then surely a declarative language like FOL should be a
  Sanjai> breeze, shouldn't it? In particular, I think we should stop
  Sanjai> trying hard to sweep FOL under the rug of GUIs. Even if we
  Sanjai> could create a GUI in which one could express all of FOL, it
  Sanjai> would be so cumbersome that it would be much easier to use
  Sanjai> text. What do you think? 

Well, I disagree about the issue with FOL. It isn't so much that FOL
is hard, rather, that there can be substantial semantic distance
between the specification and results. The larger this distance is,
the less intuitive the system is. The other factor that has bearing on
this issue is the lack of uniform global knowledge about large
environments. We've had serious issues with previous generations of
tools where seemingly localized changes had far-ranging results. In
most environments, there is one lead who knows most of the details,
but others usually deal with particular subsystems or
architectures. All of the folks with more localized knowledge are far
more likely to make changes that affect the environment (and hence
other admins) in unexpected ways. 

Another aspect of this equation is fear; gaining trust in any new tool
is hard and time consuming. The more abstract and powerful the tool
is, the longer and harder this process is. 

At the same time, we have a boolean logic engine in the core of
bcfg2. This has made the tool harder for some users to understand
initially, but there have been a few things that we've been able to do
to speed the process along. We've added diagnostic tools that expose
specification results to admins in a sandboxed environment and tools
that show misconfiguration/reconfiguration patterns when things go
wrong. I am not sure if these would be sufficient were we to extend
the bcfg2 internal system to FOL from boolean logic; we would have to
try it and see...
 -nld
_______________________________________________
lssconf-discuss mailing list
lssconf-discuss@inf.ed.ac.uk
http://lists.inf.ed.ac.uk/mailman/listinfo/lssconf-discuss

Reply via email to