Words I dislike – Policy

A while back, I wrote about how I disliked the word "Robustness" because it's meaning was so vague.

Another word that I dislike (for similar reasons) is "Policy".  As I mentioned in my "We've RI'ed" post, I was asked to work on the "audio policy" infrastructure for Windows.

The problem is that nobody knows (or knew) what "policy" means.  Some of the commenters on the previous post thought it had something to do with DRM (it doesn't).  On the other hand, the DRM system does have something called policies (they're content protection policies).

Is "audio policy" the same thing as a group policy (a mechanism for applying system configuration in a domain)? Nope.

What about power management - they have "policies" as well.  So does terminal services, so does TCP/IP.

In fact, almost every part of the system has something that's called "policy".  In fact, a brief search of the Windows sources comes up with well over 5000 files with the word "policy" in them.  Now a lot of them have to do with settings that are managed via group policies, and a bunch of them come from test code, but there are still a lot of pieces of Windows that use things called "policy".  MSDN searches return hundreds and hundreds of pages for the word "policy".

The root of my problem with the word "policy" is that it's almost impossible to have a conversation with someone and use the word - unless you lay out the ground rules ahead of time, it's really easy for people to get confused, especially if you're talking to someone from another team.

Whenever I talk about the policy engine, if I'm talking to someone on my immediate team, they usually know what I'm talking about.  But as soon as I talk to someone on another team (even someone just down the hall), I have to spend 5 minutes describing what the policy engine does.

Because the word has been used in so many contexts, for so many different things, it has essentially lost all meaning.

Comments (11)

Cancel reply

  1. Anonymous says:

    So what does it mean in the context of your "policy engine" 🙂

  2. Anonymous says:

    Policy – of or having to do with police

  3. Anonymous says:

    Policy in itself is a word that needs context to be useful.

    From Dictionary.com: A plan or course of action, as of a government, political party, or business, intended to influence and determine decisions, actions, and other matters.

    Perhaps it isn’t that the word lost it’s meaning, but rather that it never had the kind of meaning that you’re implying it had in the first place?

  4. John, in almost everything I write, the context is as a Windows developer.

    And the problem with "policy" is that it needs to be scoped so tightly that it cannot be used in a meaningful way.

  5. Anonymous says:

    Maybe teams need to get more creative about their names… Instead of calling it a policy engine why not for example SWACB (Small+Wide Audio Content Broadcast) — I have no idea what you’re developing but as you can see it isn’t hard to create an original name…

    The only time I would use the term policy is when I am writing something that is *used* by third parties to set up a policy… Like when an outside source writes the policy and you are the method to facilitate that action. Then it is correct.

  6. Anonymous says:

    I read your blog regularly and I understand your background, but I still believe it is within the nature of the word that it must be scoped. Can you give me an example of where the word policy is used, as a Windows developer, that it does not indicate something "intended to influence and determine decisions, actions, and other matters"? I can’t think of any.

    Perhaps it could be that refering to something as a "policy engine" would be like refering to Windows as a "software package". You may be correct to call it that, but you are not being specific enough for certain audiences.

  7. John,

    Maybe the problem here is that the common usage of the english language omits the qualifiers. So NT security people talk about policy with the implicit assumption that they’re talking about group policies.

    The NT QOS people refer to policy without referencing that it’s the QOS policy.

    There’s an internal tool called "policheck" which is intended to ensure that "policies" are checked. But the word is used without context.

  8. Anonymous says:

    We just need to add the scope resolution operator, umm I mean *punctuation* to the English language!



    Now sure this is a bit long, so just throw a “using namespace Software::Win32” directive on all your writing and at the being of all conversations. Since I’m sure we all agree it’s safe to say “Problem SOLVED!”

    (would the period, slash, or backslash work better, hmmm maybe…?)

  9. Anonymous says:

    The problem with using namespace is that if I reference Larry’s blog, then Software::Win32 would pollute my global namespace…


    I must avoid making geek jokes.

  10. Anonymous says:

    So Audio policy, sounds like a "Do not disturb" system. "Do not allow MSN messenger to make inane sounds in the middle of my fullscreen Powerpoint presentation" or "If I’m watching a movie don’t notify me of incoming email" that sort of thing?

    I think theres is already too much metadata in Windows, and its too difficult to keep all these settings in sync across multiple personal machines.

  11. Anonymous says:

    It’s no worse than "options" or "settings" and everyone has to use those words anyway. If you decide to use a different word instead (or abuse a word that used to have a completely different meaning) then it won’t help this issue, it will only transfer the issue to the new word. Don’t bother trying; "policy" is fine.

Skip to main content