Category Archives: Ruby

Mountain West Ruby Conference

Rocky Mountain High

Rocky Mountain High

I’m definitely looking forward to Mountain West Ruby Conference. Last year was most excellent, and this year I’m presenting. Puppet, clouds, live demo, no net, should be a good time…

MWRC is a single track regional conference, but it brings in some of the biggest names in the Ruby world. (maybe we can get Matz to come next year) Sharing the stage with some of these guys is an honor and a privilege, if not a little intimidating. And if last year was any indication, even the guys you haven’t heard of will be awesome.  I can’t recommend this conference highly enough.

Pat Eyler of On Ruby is one of the organizers and just posted an interview with me. He is interviewing other speakers as a lead up to the conference, so keep an eye out.

Use your powers for Awesome!!!

Use your powers for Awesome!!!


More Puppet Stories

These are my slides from RubyConf.  They are mostly images, so I’ll talk you through them (maybe not what I said at RubyConf, but in the same spirit)

I love that Escher’esque image of interlocking puppets (the Puppet logo is an abstraction of that). That was just there for something interesting during my 30 second introduction.

If you were at Mountain West Ruby Conference last year, then those next slides mostly make sense, if not, then you should be there this year.

The next 4 slides are about the different mindsets between developers and sysadmins.  I also like to point out how software changed when it isn’t shipped on CDs. If you are working on a web applications, particularly of any scale, any turbulent disharmony between these two tribes is going to cost you.  I also admit that I’ve solved problems with ‘chmod 777’ so there isn’t any doubt which tribe I came from.

Yay, Puppet, Yay, Ruby, these next slides I talk about what the Puppet project is, that it is all in Ruby, that Puppet, like Ruby, is a passion project driven.

Then the inquisitor… great tools are opinionated. Ruby on Rails is opinionated. Puppet is opinionated. When you, or your project, resonate with those opinions those tools will make you happy. If you don’t or can’t, you might think those tools hate you. Sometimes you should rethink what you are trying to do, and sometimes you might need a different tool.

Then the sysadmin slides, into Luke’s story, that most sysadmins don’t see any problems, other than the fact that most organizations are afraid to touch their machines and shudder at the thought of having to rebuild anything significant in the production environment.

This is an image of the internet, a couple years old now, but I think it is a stunning picture and gives a sense of the scale.

The obligatory cloud slide… minimizes your hardware headaches, but multiplies your configurations.

And how do people handle all those configurations?  Ahh yeah, the meat cloud…

But really most sys admins do the same work… not just over and over, but from..organization to organization..

Now back to Luke… can cfengine… and wanting something better… way better…

And some of the people using Puppet… and we want to make Puppet like a gun in a knife fight… Pub by 4… and a quick overview of why puppet has this effect

Little slide about portability and then how once these configurations are generalized, people can share them

Then a bunch of slides showing parallels between puppet code and common sysadmin task of installing, configuring and starting services.

Perspectives was a little reflection about how much stuff is in Puppet and what to show Rubyists at a conference.

I decided to show an example of a simple Type and Provider, first explaining a bit about the model and idempotence, then finally how you can use that in the Puppet language. Code code code…

Talk about other tools and where/why you might use other tools.  Not everything is a nail.

Puppet’s Open Community

And what’s Next?

Perfunctory Introduction

I should welcome myself to web 2.0 or something. . .

Some people might consider me somewhat a technologist but that is misleading and superficial, at least in my opinion.

I’m fairly decent with technical things and thankfully that has allowed me play with some really cool stuff and to cash some checks to feed my family, but I have other interests and abilities involving art, communication, culture, athletics, food and the human condition just to start the list that extends into the horizon.

I think that makes me better at technology, but maybe it just keeps me from being bored

Living in Salt Lake City has also given me the opportunity to absorb Agile software development philosophy and practice from close to the source. Alistair Cockburn‘s Agile Roundtable is an excellent resource for anyone who wants to drink from a well of creative insight. I’ve also been influenced by the local XP community, specifically Zhon Johansen.

I’ve recently dedicated myself to building a life for my family around an Open Source software project called Puppet. (crazy, I know) Puppet was conceived and written primarily by Luke Kanies, after working for years as an operational sysadmin and then as a system automation consultant. I believe Puppet represents a significant step forward in system management. I am not alone.

Puppet is written in Ruby, which is a pleasure to read and write, at least after years of primarily C++ and Java. (with a smattering of bash, python, perl, tcl, matlab and javascript thrown in for good measure) Ruby (and Puppet) also awoke a latent interest in functional languages and declarative constructs.

This blog will capture my thoughts and observations, my trials and tribulations, both past and present, concerning how technology and people come together to create value and opportunity. Maybe it will be useful or amusing to someone else. . .

Sometimes I might just rant 😉

%d bloggers like this: