Devopsdays 2009

Every day, in every country in the developed world, I.T. fails us. People fume over failed bank transactions, travel bookings, and supermarket transactions. Most of the I.T industry seem be focussed on apportioning blame instead of resolving the problems.

I blame Sun.

I think that the split between Unix Systems Administrators and Developers Who Write Stuff That Runs on Unix began in the second half of the 1990s when two things happened:

  • Java emerged as a viable cross-platform language.
  • Windows got a little better as a development environment.

Before you knew it, developers were learning to write Java code on PC’s that ran Windows. Then they went and got jobs. It probably seemed easier to let the developers stick with using Windows to write code on, because you could Write Once and Run Anywhere.

They had no clue how to deploy the code that they’d written.
So they got other people in to help them, who didn’t write code but knew their way around systems.

All this happened to a backdrop of the .COM boom: when we had no decent middleware available for free, and needed systems administrators to deploy prototypical web applications and their prototypical web frameworks onto all those Sun servers.

What are we left with? Millions of people who strongly identify as developers and only write software in an IDE. They are given no incentive to take responsibility for deploying, testing, or (in some cases) even maintaining the code that they write. There’s another large number of people who do the things that the first group of people don’t. Some people in the first group aren’t aware that there’s a problem. Most of the people in the second are. It’s not any one groups’ fault: we just need to recognize where we are and move on.

Devopsdays: you’re not alone

Note: I have a backlog of posts from both DevOpsDays and ScaleCamp. This is just one of them.


7 thoughts on “Devopsdays 2009

  1. John Allspaw says:

    While I agree with you on this point you’ve made, there’s plenty of blame to go around, including the antagonistic approaches that systems (ops) people have taken, stereotypically.

    I will also blame the culture that came from the same attitudes that led to the creation of “Bastard Operator From Hell”, or BOFH. To be clear, it’s definitely *not* Simon Travaglia’s fault, because I’m sure he only made a caricature of what was already an established archetype.

    What I mean is: operations people are just as much to blame for the “Us Versus Them” defensiveness that pervades the industry as the developers are.

  2. admin says:

    Thanks for the comment. I might update the post to make it clear that I’m not saying that developers were the cause of this split. I’m guessing at the causes, and trying to spell out the effect. It used to be an acceptable career path to go from systems administrator to developer. That doesn’t seem to work the same away anymore.

    I’ve seen both developers and operations people engage in destructive conflict. As Ronnie Biggs and Sex Pistols sang, No One is Innocent.

  3. It’s really true: Whenever a developer works on a different OS as the one where the app will finally run, there’ll be issues. I really try to make the development environment as similar to production as possible: same OS, same Ruby gem versions etc. As much as I value the freedom to choose your OS of choice on your own desktop, the issues of doing so are worse for me.

  4. Jason Dixon says:

    At $DAYJOB we require devs to have a working understanding of the layers underneath, and ops to have some engineering experience. DBAs have a little of both. Everyone has their particular strengths, but look at the stack as a holistic effort. Beyond affecting productivity, this has an acute effect security as well:

    I don’t know where the blame lies, but we’re doing our part to correct it. Thanks for the good post.

  5. Jason Dixon says:

    s/effect security/effect on security/;

  6. Kief says:

    I’m not sure Sun and Java are to blame, given that I see the same disconnect in the .NET world. It’s a bit different, because .NET developers *think* they know how to deploy their applications, because they’re able to deploy to their own Windows box, and can deploy to a Windows Server box the same way, so what more is there to know? I had an aggravating conversation with a senior .NET developer who could not understand why I would want to serve static content from a different set of servers than the ones running the CMS.

    I think these really are different skillsets, each is a deep topic to master. People with the natural inclination across both areas are rare, much less those who actively develop their knowledge across both.

  7. […] &#183 Tagged deployment, operations, Point2, systems, testing A couple of posts relating to development/ops gaps, and access control reminded me how very far we have come with our environments over the past few […]

Comments are closed.

%d bloggers like this: