Open For Business Follow Up

After my ‘Open For Business‘ post, I had several conversations out of band.

A few people responded with ‘we feel your pain’.

That’s not really the point I was trying to make. This quarter is the best quarter Reductive Labs has ever had for revenue, and next quarter looks like it will be a even better as people both realize the value of Puppet automation and are seeking better ROI from their budgets.

Any new skill is going to come with some clumsy missteps as you are learning, and sales is a skill. We are technologists learning to run a business, and sales is part of it. Frankly, we offer a great value for where we are in the market and I don’t know who I feel worse for, the enterprise sales guys who are offering to buy each others licenses, the IT managers who are buying stuff their admins won’t be able to use or those admins. So while it might be a little painful in the ‘here we go again’ sense, that is really just part of the sales process, but not anywhere near as painful as this. (sorry, that was probably indulgent)

Another comment is that Puppet might be perceived as not being ‘Enterprise Ready’. Perception is reality, and some people still argue Ruby isn’t ready. Rails, not ready… How about Windows? Anyone ever read the bugs open against Oracle 10g? The fact is Puppet has several very successful implementations in Fortune 100 companies.  Whatcha gonna do?

With big companies, the discussion sometimes breakdown when we get to culture and process. The problem isn’t the technology per se, it’s the fact that there are vertically and horizontally splintered fiefdoms running around vying for power and pride. Every group wants to do things their way. When the X application group has segregated systems from the Y application group isn’t so bad, but if the X group has to submit tickets to the monitoring group to find out what is happening on their own machines, implementing a centralized management solution becomes really difficult to navigate from the bottom up.

Maybe you should stop when it hurts?

Maybe you should stop when it hurts?

Sometimes, I just want to tap out to the stupid.

(That was probably indulgent too…)


That does look painful…

Go ‘Enterprise’ go…

4 responses to “Open For Business Follow Up

  • Hans van der Made

    Sales 101:

    * Don’t call the customer stupid or suggest that their way of doing things is making them “lose”. They’re bigger, better known, and you want their money, so why so judgemental?

    * There’s a reason these companies are the way they are and it’s short-sighted to think they’re stupid and you’re smart, unless you really really understand them.

    * Right now, the great value of Puppet isn’t that visible for non-technical people. Tech people don’t call the shots, business people do, and they think in dollars, or job security for that matter 🙂

    * Puppet is not self-contained (i.e. “needs Ruby”) and its installer isn’t for the faint of heart. There are several ways to install it and all have their pros and cons. Having a sure-fire installation/update method could help here, especially with some branding, logo, etc.

    * Documentation looks splintered and the search function always seems to return the more obscure references first. There’s no clear distinction between the “authorised”, “reference” documentation and visitor comments, etc. The Solaris documentation at may be a bit too structured, but it’s a good example of well-structured documentation.

    Last but not least: keep up the good work, it’s much appreciated!



    • stochasticresonance

      Thanks Hans,

      The problem is I don’t just want their money. If that was the case, everything would be easier. I really want people to solve problems and be happy.

      And I agree that the value of Puppet isn’t visible for non-technical people… yet. I think that’s why Puppet does better in organizations with technical management.

      One of the first red flags is when you have a conference call with 16 people on the other side. Talk to any one of them individually and they are intelligent, but explain why they can’t do the ‘right’ thing because of some process or another group.

      Usually when someone is explaining why they can’t do X (where X = be smarter), the reason is not because they can’t do X, the reason is an accumulation of decisions that have built up like layers of sediment, each one adding to what was exposed by the lower layer and doing X would require revisiting everything. Sometimes they say things like, ‘I try to make suggestions but they disappear into a black hole’. It’s not that any one individual isn’t smart, it is the calcified processes and internal communication which makes the organization collectively sub-optimal. Fixing what is essentially a form of ‘debt’ requires paying back the principle through a combination of technical and social engineering. The alternative is to forever pay the growing interest. Paying the principle takes discipline and you can’t pay something with nothing. When you are accustomed to the pain (or removed from it in ‘management’), the perceived pain and uncertainty of change prevent it from happening.

      Addressing these fundamental issues is the difference between IT being a cost center or a competitive advantage.

      Puppet not being self contained is an interesting point. I just take for granted that this is the Unix model for managing dependencies. Do you really think it would be better to bundle everything together? I’ll give it more thought, but I don’t see how this is more complicated than managing anything else with modern package managers. I’d love to explore this idea if you have more comments.

      Puppet documentation definitely could use an overhaul of content and organization, and your point is well taken. Again, this is an accreted solution, which is definitely costing us until it is fixed. Not to make excuses, this is on the list of projects. That being said, the documentation is enough for many people to solve real infrastructure problems, but I agree that it isn’t quite awesome (which is where I want to set the bar).

      Broken gets fixed, but crappy lasts forever… C’est la vie

      Sometimes this is all about getting outside perspectives. For example, a marriage counselor may be able to help a lot of people, but she may be unable to actualize her own advice or assess her own relationship with clarity. Such is the human condition…

      Thanks again for the insights and encouragement.


  • hvm

    Hi Andrew,

    Thanks for the extensive explanation. I recognize your description, unfortunately, and I’m well aware that change takes a lot of effort in larger organizations. You could also consider this the price of stability, as changing course also has its price.

    Maybe teaming up with professional consultants could help, if they could talk to people at the right level?

    The self-contained thing would attract Mac users, I think, but isn’t for everyone of course. It is important however, to have a safe route to deploy puppet in a particular environment and to know what happens after an upgrade. This isn’t news for you and I’m sure lots of time and effort are spent testing compatibility. However, remarks like: “The current opencsw and blastwave Ruby seem OK” do not inspire the same level of confidence as “We’ve tested every new release up until N against Blastwave version X.Y and made sure it works”. On a Linux box, people obviously just want to type “apt-get upgrade” and be done with it 🙂 My point was just that people want stuff to work, keep their boxes up to date, and not have to worry about a broken Puppet installation on 50+ systems. Next time I’ll be more coherent 🙂

    I agree that the documentation that’s currently provided is useful, and “works” as is. For a new user, the next thing after getting the software running, is getting a grip on modelling, finding the proper way to describe the infrastructure, services, users, etc. There’s lots of info on types and language, and specific examples, which are all very useful, but it requires quite a bit of effort before you get the feeling that you’ve read enough to be able to do the “Right Thing”. As with any language, there are many ways to do things and I’m one of those guys who wants to do it right the first time 🙂 In the end, I do not want to perform any manual labor on Puppet maintained boxes, after installation. In my case, on Solaris, this means configuring the global zone, create filesystems, deploy non global zones, run Puppet, configure services, create users, etc. Should all be possible, but finding the right way to describe it, without getting in the way of myself eventually, will take a lot more reading of snippets of documentation 🙂

    Awesome is where the bar is at, indeed, so I guess we’ll have to carry the burden 🙂 One thing I’ve learned from the Agile guys, though, is that resources are limited. Excellent documentation means less bugfixes, new features, etc. Keeping things at “acceptable for now”, doing the work where the actual pain is, and iterating over changing priority lists isn’t too bad I guess.

    Take care,


  • Rams

    Cluelessness or inability of the clued-in staff to get the right things done is sometimes an indication of a deeper level of rottenness – it’s the sign of corruption in management. Sometimes we nerds like to wish away the realities of the world with ” Never attribute to malice, what can …” etc, etc. But the sad fact is that enterprise sale is all about steak & strippers, and other wink-wink considerations with very few exceptions.

    Business = Grease .

    Did anyone read dem newspapers in the last one year ?

    No wonder folks with any iota of moral values left in them find working for companies in the enterprise and (in general) the B2B space so intolerable. Maybe we need an larger ecosystem of nerd run businesses, maybe we need more ycombinators … no easy answers here.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: