Click here for the LISA ‘09 Wiki

September 24, 2008

LISA ‘08 Guest Blogger: Mark Burgess

Filed under: Uncategorized — anne @ 3:07 pm

We’re 7 weeks from LISA ‘08, and things are really coming together.

Today we’re kicking off the first in a series of guest blogs written by LISA tutorial instructors.

First up:  Mark Burgess discusses the latest version of Cfengine and more.

And now: Here’s Mark…

So I find myself in Amsterdam, near the Vondel park in what is clearly
the tourist part of the city. There is a mosquito in my room. What on
Earth is it doing in the middel of the city? I bet it isn’t going to
share my bill for this arty hotel Vondel with all its, well art.  I am
here in the Netherlands to hold a training course on cfengine for a
well known Dutch organization. I started a company after all these
years of arm-twisting. It seemed like the right thing to do. And I am
using my evenings to catch up on the coding of cfengine 3.

Not long to go now.

I promised myself some time ago that I would finish a substantial
version of cfengine 3 before LISA, and I have promised the users that
it will be tested and ready for production by January 2009.  I
generally keep my promises, but more than that — I cannot fail to
deliver when cfengine 3 itself is all about keeping promises, promises
about system states, promises about behaviour and promises about
knowledge.

The past few months have been hectic for me but spiced with real
excitement.  I decided last year that academia and all of its
government regulated money has been moving in the wrong direction for
me.  I fall naturally into the role of a scientist, not a bureaucrat
but governments are turning research into a paper trail. It is a
conspiracy to transform thinking men and women into mediocre blue
collar workers, who are paid to deliver homework reports to people who
judge research by whether it follows an ISO 9000 quality assurance
plan. I’m sorry, that is just wrong. I need to get back to something
real. Let me out.

I believe in research. It’s just creativity — well, at least in my
naive mind. I believe in theory and abstraction with a passion that
few people really share. I also believe in turning these powerful
thinking-tools into powerful practical tools, but increasingly people
of higher wisdom seem to say no to powerful thinking and yes to cheap
fixes. Governments are turning academics into bureaucrats and I was not
made for that mold.

Enough papers, I said. Enough conferences, trying to persuade
sceptical researchers about how to solve the key problems. If I have
to write a quota of papers every year, when will I ever find the time
to actually do something? Why not just solve the problems and show ‘em?

Well, I have spent the past five years thinking about all of the
criticisms that have been levelled against configuration management
tools and it dawned on me that I know the answers well enough. The
criticisms have all be justified, but the interim solutions have
not. I still recall Andrew Hume telling me in 2003 at the
configuration management workshop: “You realize this is all your fault
for starting this discussion.” Well, I am happy to take responsibility
for starting a field of research, but I am not so happy with all of
the so-called “next generation cfengines” that have been coming out.
You have to recall what The People told Henry Ford when he was talking
about solving the transport problem: “what we need is more horses — none
of your fancy pants inventions”. Hmm.

My solution? Go back to theory, abstraction and modelling. Put away
the coding gloves for a while until I know how to do something
better. Simpler. Anyone can make something different. The next
generation has to be simpler and still more powerful. Well…

Back in Oslo again, catching up on my teaching and how my colleagues
are getting on at the cfengine company. I managed to meet my friend,
professor of logic Jan Bergstra from Amsterdam in the evenings of my
visit wrote a draft paper together about promises. Looking at my
notes, it reminds me that I originally conceived of the idea of
promise theory precisely to solve these questions about configuration
management — as the only model that could describe the way that
cfengine’s autonomous maintenence works (that is, without throwing all of the
important properties of cfengine away with the bath water). After 5
years of working on promises, I realized last year that I knew how to
make the “next generation cfengine”. The real thing.

So I’m back to coding.  As I work on cfengine 3, I find myself growing
embarrassed about all the cfengines that have come before. Well, it is
difficult to say that they weren’t the best that I could do at the
time. I didn’t deliberately make something inferior and yet cfengine 3
is potentially so far ahead of any of previous version that it makes
me want to rewrite history and bury the others in the sand.

Cfengine 3 can already do things that no other system can currently
approach and I am not even close to running out of ideas for the
future. The time for its development has never been richer. And now I
have a plan for protect myself from academic funding time-wasters and
get back to where I need to be: out there, close to the people and
environments using these things.  People might have scoffed at my
harping on about “promises” and even “promise theory” for the past few
years, but it has paid off. Thanks to that work, all of the problems
with cfengine 2 have been addressed and in a way that both simplifies
and extends. This is about as exciting as research gets.

My mind wanders back to LISA 2004 where Aeleen Frisch and I presented
the initial ideas for cfengine 3 at the BoF, but it took too long to
get me started. Too many burdens.  The ideas we worked on together
during Aeleen’s visit to Oslo were not far off but there were still
details to be worked out. Now all the pieces are in place and more. I
am lucky to have all these amazing cfengine user around me, sharing
their experiences, teaching me about the problems and trusting me to
do what I do well. I am still learning and finding new ways to
understand this. It’s research, innit?

So, now it is time to give back to the users. I am ready to share my
solution for cfengine 3. There will be a BoF and two tutorials. I can
show new technology and enhanced practices. I can unveil something
smaller but more wide-ranging, simpler but more powerful, and
something that is generically extensible — in other words a real
investment for the future.

Yep. Looking forward to LISA this year.

Mark is a  Professor of Network and System Administration at Oslo University College, Norway (a member of the EMANICS Network of Excellence). He is the author of the configuration management system Cfengine and of several books and many papers on the topic, including the SAGE Short Topics booklet A System Engineer’s Guide to Host Configuration and Maintenance Using Cfengine, coauthored with Æleen Frisch.

Find out more about Mark’s classes:

Integrating Cfengine into Organizational Service Management (New!) and Cfengine 3 (New!)

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

You must be logged in to post a comment.

Powered by WordPress