fbpx
dirtSimple.orgwhat stands in the way, becomes the way

I’m just not evil enough

In the past couple of years I’ve been working hard to improve my capacity for evil, but it seems I’m not very good at it.

Now, before you get the wrong idea, I should probably clarify that I mean evil in the technical sense of the word, not the moral sense. To the hacker, that which does not support the highest potential of a thing is called evil. Thus, to run a business in a way that is less efficient, yet more profitable, is often considered evil by a hacker. In the hacker’s way of thinking, it is evil to maximize profit at the expense of efficiency and good taste, if one could have those other things and still make some profit.

And yet, this view can be just as shortsighted as the view that looks only to profit. The hacker ethic of telling the truth, the whole truth, and nothing but, is often counter to the hacker’s own ends. The hacker in me wants to tell people about the problems and the issues I see, as well as the solutions I already know and understand. The hacker in me wants to help people overcome the issues that face them now, and that I know will face them later.

But the politician in me knows that, with few exceptions, telling the truth doesn’t actually work. If you don’t see the problem, the solution I offer has no value. I’ve realized this intellectually for several years, ever since my presentation on the RIPP model (as implemented in ZPatterns) at a Python conference. I gave a well-attended talk, that left most people puzzled, but had half a dozen people raving afterwards about how important the RIPP solutions were. It wasn’t actually until today, however, that I realized the real problem was not that people hadn’t experienced the problems that caused Ty and I to develop RIPP.

No, the problem was, and is, much more subtle. People did and do experience the problems solved by the RIPP model, and the problems that are solved by many other advances in the state of the art since then. However, they do not always perceive them as problems! Instead, they tend to view architectural problems simply as unavoidable aspects of their work. (In much the same way, for example, as Java developers often overlook Pythonic ways of doing things, because they don’t expect there to be easier ways than what they already know.)

Douglas Englebart, who led the development of the first word processor in the 1960’s, tried to explain what word processing would be like to people who had never used a word processor. “Imagine a pencil,” he would say. (I’m paraphrasing liberally here, by the way.) “Now imagine tying that pencil to a brick, so that to write you have to move not just the pencil, but the brick as well. That’s actually what using your current tools is like. Now, imagine that you untie the brick. That’s what using a word processor is like.”

In essence, an astonishingly large number of developers are coding with bricks tied to their pencils. This is not, as I previously thought, because the developers in question lack smarts or an ability to get things done. Instead, I realized today, through conversations with some very bright, skilled developers, that the real issue is very simply that they never thought to look for a way to untie the brick, because to them, the unbelievable amounts of tedious, backbreaking labor they are doing is normal.

From my point of view, of course, their efforts verge on the insane and or suicidal – and they would be for me personally. But that is not the case for them; it’s just business as usual.

So, this creates a bit of a conflict for me. An ethical dilemna, to some extent. If I am honest about my perception of the extra effort they are “investing”, I run the risk of appearing nitpicky, patronizing, or even insulting. I mean, if you tell somebody they have a brick tied to their pencil, they might feel stupid, no matter how hard you try to avoid implying that, and despite the fact that you don’t actually think that they are.

Equally bad is the possibility that, once I’ve pointed out the brick, they may not believe it’s really a brick, or that it really can be untied. They may think I’m making mountains out of molehills, or even refuse to acknowledge the brick because to do so would in their eyes be admitting that they overlooked the brick before.

But neither of these is the real ethical dilemna for me. The real dilemna is that I would be more likely to be able to help them, if I first lied to them! That is, if I first won their trust, and then gradually taught, politicked, and manipulated them over time to accomplish the results that would make things easier for them.

(Of course, by lied, I don’t actually mean telling untruths. I mean simply, concealing my real opinions about things, and taking the effort to put positive spins on things instead of negative ones. This is not actually lying, but for someone as compulsively honest as I am, it feels like lying.)

Now, if I were actually making progress at being “evil”, this should have been a snap for me. I could simply say all the right things to make them want to hire me, and keep my trap shut about “big picture” issues until after I was in a position to do something about them (or not).

And if I were actually able to be Evil with a capital E, I could probably rationalize not even trying to help them improve their process. After all, they would be so much more impressed when I worked miracles, then. And so what if their project doesn’t work out? I’d still get paid, so why should I care?

But the fundamental “problem” is this: I do care. I frankly don’t know how not to care. Trying not to care was one of the hardest things I ever had to do at Verio, and I sure as hell don’t want to have to do it again.

On the other hand, if I commit to this project, and I do care, then it will be really hard to stop going around trying to get people to take the bricks off their pencils. Currently, in working on PEAK in a pure open-source mode, I don’t have this as an issue because I don’t depend on anybody else’s output to achieve my goals. And, conversely, when I talk to people about architecture and design, it’s in a context where they’ve already asked me for my input. That is, they’ve noticed that there is a brick on their pencil and believe I may be able to tell them how to untie it.

Tomorrow I’ll be meeting with more of the team. I don’t know yet if I will continue pointing out bricks, or simply switch to “sales mode” and convince them… No. I actually do know that I won’t switch to sales mode. These people may not be my team now, but they will be later. My goal must not be, cannot be, to help them against their will. If what I have to offer isn’t valued now, my actual contribution won’t be valued later.

And, in a subtle irony, if I were to “dumb myself down” to be accepted, this is far more patronizing – at least in my opinion – than to try to offer a hand up. Because the offer of a hand up, means that I respect their abilities enough to believe that they can, and should, operate at my level. On the other hand, taking the sales tack would mean that I think that they’re incapable of improving.

Alas, it’s still not so cut-and-dried for me. One of the axioms of NLP is that “the meaning of a communication is the response you get”. This is sort of a fancy way of saying that the best way to communicate something is the way that gets your point across, regardless of how you think you “should” communicate it. Unfortunately, there’s no clear boundary between that concept, and the concept that the ends justify the means. Well-intentioned meddling is still meddling.

Ah, the heck with it. Whether they love me or hate me, I’m going to be who I am. If that works for them – and they can tell that it works for them – then great. The only hurdle left then, will be deciding whether they also work for me. And that’s an even more complex question for me, than any of the other questions in this post. At least I’ve spent a lot more time thinking about the ethical questions!

Join the discussion
28 comments
  • Who are “they”?

    But that’s an aside. I often think about what the path is from here to there. The past seems strewn with ideas that were ahead of their times, which is to say they didn’t make sense. “Ahead of the times” is like some oxymoron, alluding to this idea of the “times”, a vague idea similar to The Man. It’s much better to think of the idea whose time has come; there’s always a bunch of them within reach, and maybe one of them leads in the right direction. We do make leaps, consciousness and imagination frees us from complete determinism and minute incrementalism; but their are limits.

    But even though we aren’t doomed to local maximums, we still have to find a path out; through a tremendous force of charisma and determination you can make great leaps. But that’s easier said than done, and lets be honest, programmers aren’t great salesmen. So you’re asking (not rhetorical, but you personally are clearly asking in this very essay) — how else are you going to find a way to jump out of the path onto another, without going it alone? Machiavelli was (from what I understand) a well-meaning guy with little direct personal power or authority, making due with what influence he had. It’s not wrong, per se, to manipulate, at least to me; I’m an ends-justifies-the-means kind of guy.

    But then, there’s another way to achieve things which works surprisingly well: simply to ask. So you are conflicted; ask “them” how you should resolve it. Empathize with their reluctance. Explain your motivations. You want to teach them something, but they probably haven’t asked for a teacher. So don’t start with instruction, don’t start by telling them what the problem is; ask them what they think the problem is. Maybe they won’t point to the brick, but they probably have noticed how their hand tires.

    And maybe you’ll have to reconstruct all the conclusions you’ve come to, but reconstruct them collaboratively, along the same path. And that seems dishonest; after all, you know what you are trying to get at, you know it’s all a clever scheme. But it’s not really, especially if you yourself entertain the possibility that the destination is not determined.

  • Come on Phillip, you’re a leading light of the Python community, what is all this “Woe is me, I’m a genius before my time and nobody understands me” stuff?

    Ian, sorry, but your reply plays right into this self-indulgent naval-gazing.

    Pains me to say this to my hero’s but you two programming giants need to get a grip.

    Whoever “they” are, one presumes that they are capable of looking at the enormous body of public work that Phillip has already put out (PEAK), examined his writings on Software Architecture (right here in this blog!) and can come to their own conclusions on whether or not they “need a hand up”.

    If not, why would you bother working for “them”? Always assuming they want your “help” after reading your patronizing post.

    Posting anon because I fear lightning might strike me for insulting you two but someone had to say it.

  • Politics 😉
    I guess it’s more about changing company-culture.

    How many are “they”?
    I can’t imagine they all think the same..
    Start finding allies, it will take some time.
    Wait for the right moment to suggest changes,find out who does and who doesnt have an open mind

  • “””Come on Phillip, you’re a leading light of the Python community, what is all this “Woe is me, I’m a genius before my time and nobody understands me” stuff?”””

    That’s quite a projection, don’t you think?

    I was reflecting on two issues here. First, my unwillingness to manipulate people who I expect might become my peers/co-workers. Second, the interesting question of how to communicate to somebody that there’s a better way of doing something if they’re comfortable with things as they are. Where you get “woe is me” from either of those ideas, I’m not sure.

    As for navel-gazing, isn’t that the whole point of a personal blog? Just because I post lots of Python stuff here doesn’t mean that this is “Phillip’s Technical Articles” or something; in fact my next major post is likely to be an article about the life my father lived.

    If you’d prefer not to read personal essays and introspection, you should probably stick to the posts that get picked up on the Daily Python-URL.

    (Oh, crap. I just went there to get the URL so I could put a link there, and it seems they’ve linked to this article. Oh, the irony! This is certainly not a post I’d have expected to end up there, since it barely mentions Python at all, while they’ve skipped linking to many of my far more technical posts. Crap.)

    Um, anyway. I didn’t expect the Spanish Inquisition; frankly I didn’t think much of anybody would be reading this damn thing. I wrote it to sort out my thoughts; that’s what essays are *for*, after all. I guess the increasing popularity of my blog is backfiring on me a bit. I actually had an interview the following afternoon with someone who had already read it, which was also quite a shock.

  • Maybe think of it like programming a computer. You can’t just say to the computer “be a word processor”. You have to do it incrementally, step by step.

    Probably you can’t just say to your colleagues “be a smart team that see the world as I see it”. You have to figure out how you can decompose their learning into a sequence of smaller steps.

    That’s not evil. It’s pedagogy.

  • “””That’s not evil. It’s pedagogy.”””

    I know *that*. The point of this particular screed was that it seems wrong to me to practice it upon people who are going to be my teammates, as opposed to say, my customers.

    I’m well aware that this is a personal quirk of mine that has nothing to do with “rational” behavior. The point was just that there was no way I was going to change something that’s such a big part of my makeup in a short enough time to make a difference.

    Note in particular that the first sentence of the essay stated that I have been working on improving my ends-to-means connectivity for a couple of years, without much success. It stands to reason, therefore, that I wasn’t going to be able to make enough of a change overnight to make a difference in my behavior the following day.

  • The trick, I believe, is not telling someone something but instead getting them to learn it for themselves.

    Not everyone is willing to accept what they are told. More are willing to accept it if they learn it “themselves.”

    It is a technique that I have not perfected.

    And is it a lie if one holds his tongue because the other person isn’t… able or willing?

    Mike

  • I personnaly apreciate such an entry in your blog. I also like Ian Bicking’s comment about how to ask them for how they see the problem.
    In my personnal philosphy, I call it making me “one” with people. That is understanding them as much as I can. More than equality, this implies trying to live the way they live, to talk the way they talk… I think this is the start point of a real dialog. Making so, you may even discover things you hadn’t before by seeing your own ideas from a different point of view.
    Then after I thing that as both part’s engage themselves sincerly, after a while truth come’s out.
    Well, that’s quite a belief but also personnal experience in different occasions (facts allowing).
    thanks for sharing.
    Alex.

  • I can see you mean well and you have sincere respect for your coworkers. However, the tone of your post was condescending: “coding with bricks tied to their pencils”, “dumb myself down”, “operating at my level”, etc. If you feel this way when you teach people, they’ll detect it and reject you.

    You stated clearly that you respect your coworkers. A way to quickly gain their respect is to *tell* them that you respect them, giving specific reasons why you respect them. Don’t lie, of course. 😉 After you’ve shown sincere respect, they’ll be prepared to learn, and real communication (bidirectional honesty) will take place. You can do this fairly quickly, hopefully eliminating the ethical dilemma you speak of.

  • “””However, the tone of your post was condescending”””

    I can see how somebody could interpret it that way; but I find it difficult to empathize with their choice to do so. *My* reaction to somebody telling me I’ve got a brick on my pencil is going to be, “Goody! Where is it?” I’m both lazy and perfectionistic, so if there’s a better/faster/easier way to do something I’m doing, by golly I want to know about it.

    Likewise, I have no qualms about asking somebody to “dumb something down” so that I can understand it; like if I were to ask my childhood friend Dr. Johnson about D-branes and superstring theory, I’d definitely want him to dumb it down for me, until I had a chance to “operate at his level”.

    An even more relevant example would be where I asked one of the interviewers to dumb down a wxPython concept for me, although I don’t think I used that actual phrase. Still, that’s how I think about it — dumbing down the wxPython concept enough for me to get the idea, until I could operate at his level with respect to wxPython.

    Thus, I don’t see any of these phrases as being condescension, since they don’t bother me when the situation is reversed. Could they be ringed ’round with disclaimers to avoid people possibly taking offense? Sure. But life’s too short to pile up disclaimers in a personal blog, for heaven’s sakes! I also honestly didn’t expect that 1) the blog would get read in near-realtime, and 2) get put on the Daily Python-URL for an even wider audience to misinterpret. 🙂

    What’s really funny is that I’ve already been censoring my blog to leave out what I thought would be the more controversial aspects of my personal life! But I guess anything I put up on the ‘net is fair game, and so maybe I *should* create a separate “Phillip’s Technical Articles”, and make my personal blog more private.

  • > Instead, I realized today, through conversations with some
    > very bright, skilled developers, that the real issue is
    > very simply that they never thought to look for a way to
    > untie the brick, because to them, the unbelievable amounts of
    > tedious, backbreaking labor they are doing is normal.

    You know, for someone who’s obviously very bright, you can be very … naive, maybe? Though that’s probably much too strong.

    For me, it’s been almost axiomatic for a long time that most people don’t use what we perceive as better solutions (to wit, Python) mostly because they don’t know about them, or fail to realise their good points. And convincing someone they’re mistaken is hard, all you can really do is help them realize.

    Maybe this is my own programming background. I went through a period of thinking that C++ was the best possible programming language, and that languages like smalltalk were just silly. Then I realized how ridiculous this was 🙂

  • By the way, I worked for 12 years at a very idealistic-yet-practical company that definitely colored my outlook. Then I went to work for a moderately idealistic new ISP, where I hired an idealistic team and stayed for six years or so. It’s only been during the last two or three of those years that the idealism has been at all naive, as the ISP got swallowed up by larger and larger corporate entities.

    But for the bulk of my career, idealism has actually been functional behavior for me. More recently, I’ve realized that there are contexts in which it’s not functional, and that “evil” (non-idealism) is more functional in those situations. Hence, my comment at the beginning of the article that “in the past couple of years I’ve been working hard to improve my capacity for evil” — i.e., non-idealistic behavior.

  • “”” The point of this particular screed was that it seems wrong to me to practice it upon people who are going to be my teammate”””

    I don’t get it. If you *know* pedagogy != evil, why worry that there’s anything wrong with doing it to your your teammates?

  • I think you are misunderstanding something very fundamental
    here. You are stuck inside a box and you need to be looking for ways to think outside-of-the-box. Your box is this curious custom where you try to introduce a new technique by explaining the technique. Your plan involves first getting them to understand it, then getting them to agree with you, and then getting them to do it. Thus they have to go through the process of ‘I will do this thing because I believe it is good, and I believe it is good because Philip Eby gave me these excellent reasons, and I believe the reasons.’ This isn’t working and you think that you need to improve your argumentation skills. You rightly fear slipping into hucksterism, where all that counts is selling your point. At one end of this extreme, the place you see yourself travelling to, but where you do not want to go is ‘do what I say, because I said so, out of deep and personal abiding trust in me as a leader and a person.’. Any politico can do this. And this is, indeed, as you have noticed, a license to lie, or to vigorously shade the truth.

    You seem deeply committed to the explain-then-do process. Indeed you say:

    ‘ If what I have to offer isn’t valued now, my actual
    contribution won’t be valued later.’

    This is dead wrong. But in the real world, what you seem to have missed is that often people will believe your explanations only after they have tried them for themselves. So the more usual attitude is ‘only after I have shown them by my actual contribution can I expect them to understand and appreciate the arguments I am making now’. Your way, if I understand it correctly, is precisely back-to-front.

    This is part one of your jail, and, I believe the most important part. I think that your jail has some small sub-prisons based around your strongly-felt desire to be understood, a desire I think you have more than most people. This desire may be walking around in your head dressed up as a ‘desire to help other people’, and hanging out with the genuine ‘desire to help other people’ you do feel.

    At any rate, I got this terrific image of you saying ‘Listen to me! I am trying to help you!’ and chuckled. To the extent that you actually do revolutionary new work, you will have to make some sort of peace with not being understood. It goes with the territory.

    (It’s Christmas. Codespeak is down and I cannot read all of Armin’s new checkins, so I will be a bit self-indulgent and explain this in more detail.)

    The most important part of your jail is based on a insisting on ‘understand first, do later’. This is the essense of ‘education’ and produces one sort of learning. The other sort of learning, the one that the Canadian armed forces was extremely keen on, is called ‘training’. And it is based on ‘do first, understand later.’. Education requires you to go from the abstract principles out there and ‘reason down’ to your concrete experience. Training works the other way — you go from your concrete experience and ‘reason up’ to your abstract principles. At the end of a good educational or a good training experience you will end up with an understanding of some abstract principles and some concrete experience and how they relate to each other and can reason up and down all about them. This is called ‘knowing the subject matter really well’, and is the ultimate goal of education and training.

    All people, without exception unless they are suffering from some sort of brain injury or mental illness are a lot better at ‘reasoning up’ than ‘reasoning down’. So if you want results, and you have control, it is much quicker to train people than it is to educate them. Pair programming will help here, and anything that will get your people doing what it is that you want them to do. This will even have results when the problem is ‘these people have no experience with the problem I am fixing’, but you say that this is not your problem.

    But there are problems with both education and training. The first problem is that they both take time. Thus in the world, what we usually encounter are _partially trained_ and _partially educated_ people. Partially trained people understand _how_ to do useful things, but still are vague on why it is that they are good and useful. Often they have a hard time knowing that ‘now is not a particularly good time to do this thing which I know how to do exceellently’. Partially educated people, on the other hand, know how to _say_ the correct things, and generally are very well-trained at ‘how to score well on tests’ — because we train that very hard in school, but are less good at knowing how to do something. Knowing that this is exactly where your professors recommended that you use a (whatever) is not the same thing as knowing how to write one. They also are distinctly short of practical wisdom, and thus often propose solutions which are clever, but not wise.

    What is also galling, is that our educational system has a particular downside in that people who are blessed with a superior ability in memorisation can train ‘how to get good scores’ and do very well by going directly from ‘question’ to ‘memorised answer’ and skipping any part of self-training and self-analysis that produces the deeper understanding that is characteristic of ‘knowing the subject matter very well’. They don’t _know_ the subject, they only know the answers.

    And all of the above combines to produce a situation where it is very difficult to tell the difference between partially-educated people, and plain old garden variety fools.
    Indeed, one defintion of a fool is a partially-educated person who is unaware of his own educational shortcomings, but enough of that …

    All of this combines to give those of us in the real world a
    particularly dim view of miracle solutions that we haven’t
    tried ourselves. So getting us to do it, via pair-programming, is one very useful way to get your ideas in the door, and trained as well. Presenting your ideas is a very distant last-place choice.

    But if you have to influence people one-on-many, then the pair programming approach probably will not work, unless you are showing up with a large training team. Also, it is deep but slow — you usually cannot arrange things so that all your people work on examples of this precise problem all the time for the few weeks it would take for them to really train it to full understanding — they have the rest of their lives to live, full of other computing problems that need to be solved. And so you need to rush things.

    The same principles of human cognition apply, though, to designing a presentation. If you are presenting your abstract principles and then ‘reasoning down’ you are making things uneccesarily tough for your intended audience. This is the hard direction. If you present _your problems, and how your solution solved your problems_ you will do better, because it is easier to make a link between ‘the problems that Phil had’ and ‘the problems that we have’. But the best approach is to have them discuss the problems that they have — the ones that you think that they do not see as problems. You may not have time for this, though. This is more suited for a workshop than a presentation.

    I also think that you do not properly appreciate the advantages of doing things the same-old-way we have always done things. The problem is that you are seeing this from your perspective, and know that your way is better, and see only this individual comparison — my way, vs. the old bad way.

    But we’re seeing this as part of a lifetime of dealing with lots of people who have wanted lots of changes. Conservatism is simply the belief that, in general, the old ways are better than the new ways. And for many areas of life, the math works. If 90% of the time the old way is better than the new way, then a policy of ‘stick with the old’ will prosper. It may not prosper as much as ‘stick with the old unless its one of the 10% where you should change’ but that strategy requires somebody astute enough to tell when the correct 10% come by, and also that the time spent on evaluating was not time that could be better spent elsewhere. How badly would we screw up if we missed one of the 10%? Usually not very much, but sometimes, enough to put us out of business. How badly would we screw up if we moved, but on one of the 90% of the times when we shouldn’t? ditto. Plus — we’re busy with _all_ of our problems, not just this one.

    So if you come by with the absolute best solution to a problem that we have, but is ranked 150th on the priority list of the problems we have we would like to solve, then you are correct, but wasting our time regardless. Come back when you have an _important_ problem of ours to solve …

    Unless you are involved with meaningful, frank discussions with others, you will have no way to know what their priority list looks like. And this is sensitive information, which they may not want to tell you. Chances are their biggest problem is also embarassing.

    It is also particularly dangerous to embark on new directions lead by people who say

    ‘In the hacker’s way of thinking, it is evil to maximize
    profit at the expense of efficiency and good taste, if
    one could have those other things and still make some
    profit.’

    ‘Is Phil is about to make us go to enormous expense now, and a maintainability nightmare _later_ out of some desire for better aesthetics that will eventually bankrupt the company?’ People who say things like this get the ‘possibly intelligent fool, beware’ tag.

    All of this lines up to make people say that ‘the old way of doing things is good enough for us. Your way may be better, but we actually aren’t technically skilled enough or experienced enough to judge that. Your way may have all sorts of defects and downsides, and we just cannot take the risk of missing them. And, after all, if your way is so good, why isn’t it the industry standard (or the company standard) way of doing things _already_? Why is this suspicious new pioneering opportunity showing up in our laps?’?

    I hear things like this all the time. So, in the light of all of this, whom do you need to find, in your audience, to convince to go do things your radical new way?

    You need a leader, with some authority, who is not risk-adverse, who believes that his judgement is the equal or the superior to the rest of the people in this business, and the courage to act on his belief. Then you have to convince this person that your solution works and is valuable, a good opportunity. Then he can order such a change.

    Such people exist, but they are nearly all entrepreneurs. They are the CEOs and CTOs of small startups. Some of them are consultants. Some of them are academics, and you can find some in well-run government agencies. Where you do not find them is as managers in the sort of large corporate place I think you are describing, where you are making your pitch, except at the Executive level. Middle-management is where they do not fit in, and what is worse, they don’t _value_ fitting in, and so they leave such places to go their own way.

    Thus you will find that your argument is tailored for the sort of person you are least likely to find. You need a new approach.

    The best way, I have found, is to ask the organisation to provide an example of a problem that you think your new approach fixes. Then get them to loan you some people. And what is ideal is if they give you and your team some small, self-contained problem that demonstrates the more widespread problem. Then you build the really cool solution your way, and come back in a few weeks, to demonstrate it as cool, with those members of their organisation that they loaned you for the experiment already somewhat trained in ‘Phil’s cool way of doing things’, eager to use it for a more substantial problem.

    But if you are trying to sell them on a whole new architecture, then this may be hard for you.

    By the way, you write:

    Equally bad is the possibility that, once I’ve pointed
    out the brick, they may not believe it’s really a brick,
    or that it really can be untied. They may think I’m
    making mountains out of molehills, or even refuse to
    acknowledge the brick because to do so would in their
    eyes be admitting that they overlooked the brick before.

    This is revealing of how your mind works. When you fail to get your idea across, and when people disagree with you, one of the first ideas you reach for is ‘what is wrong with them that makes them not admit that I am right?’ Stop doing this. It
    promotes you to the top of the queue of ‘people it is not worth having conversations with, no matter how brilliant they are’.

    And I think this is part of the point your NLP- expert was trying to make when he or she said or wrote:

    “the meaning of a communication is the response you get”.

    (something that I disagree with).

    It is not just ‘a fancy way of saying that the best way to communicate something is the way that gets your point across’, though it does imply that if you _don’t_ get your point across, then your communication has been deeply unsatisfying
    for you, because what you are trying to accomplish is ‘getting your point across’. On the other hand, if I say something stupid, and you crack up, and roll around on the floor laughing, then you may have found the conversation as satisfying as it gets, while I may be reaching new heights in frustration.

    So I think that the ‘meaning’ your NLP expert was trying to get across is ‘Stop blaming your audience when they fail to respond in the ways you expected/hoped’. But then, I disagree with this premise of NLP, and actually think that sentences have meanings, independent of responses. So of course I would say something like that. I think you misunderstand, which run counter to the assertion ‘there are no misunderstandings, only reactions you didn’t anticipate or desire’. Thus I disagree with the NLP statement, but only people who agree with me that that particular statement has meaning independent of the reaction I got, _can_ disagree. Shades of the ‘liars paradox’.

    But as a training exercise, one thing I have done with people who have the ‘I blame others when my communication doesn’t work’ disease, is to have them break up into groups and try to convince/explain things to each other, while assuming ‘the reason that this person isn’t agreeing with me is because they are much brighter and smarter than I am, and see things that I don’t but are simply too kind and gentle to actually want to argue with me.’ Clearly there are limits as to what you can accomplish with this — for one thing you had better pick a topic where it is reasonable to assume that the other person could know more about than you do — but done properly this is a lot of fun.

    If you like this sort of stuff, we are supposed to be having a whole track of it at EuroPython, and you might want to attend. If there is a lot of interest, then maybe we should have some sort of a training workshop as well. I wonder how many people would be interested in this? Thus here is a plug for _training_ the skills that this article was an attempt to _educate_. And since I prefer training …. looks as if
    today gets to be self-referential and paradoxical on several levels at once.

    🙂

    But this has gone on way too long as it is. Hope some of
    it was useful, and thanks for giving me an opportunity to write.

    Happy Holidays,
    Laura Creighton

  • Hi Laura. Lots of food for thought in your post. I’ll avoid picking on you for the self-referentiality, but I do have some other comments.

    First, you took the “hacker’s view of evil” out of context. The very next sentence is “And yet, this view can be just as shortsighted as the view that looks only to profit.” This post was not about praising the hacker’s view; it was about *burying* it.

    (Indeed, I actually try to teach people that the most important software design question in a business context is, “How will this make money?”)

    “””Such people exist, but they are nearly all entrepreneurs. They are the CEOs and CTOs of small startups.”””

    In my entire working career (over twenty-one years of it), I’ve always been hired by people who meet this description, so no argument there. 🙂 So, I’m aware of my normal market, and I’m not “making this pitch” as you put it, at corporate middle management.

    I think the most illuminating aspect of your post is the distinction between (as the NLP folks call them) “chunking up” and “chunking down”. I’m extremely good at chunking up, and well aware that I’m lousy at chunking down. That is, I can easily go from the specific to the general, recognize patterns and turn them into principles. It usually takes me a lot more effort to take principles and turn them back into examples.

    “””When you fail to get your idea across, and when people disagree with you, one of the first ideas you reach for is ‘what is wrong with them that makes them not admit that I am right?”””

    Er, no. It’s worse than that, or maybe better, depending on your perspective. What I *actually* wonder is why they aren’t seeing the obvious. Me being right or them “admitting” I’m right have nothing to do with it. The “wrong with them” part of your statement is pure projection on your part, though, as it takes a lot of odd behavior from somebody before I wonder what’s “wrong” with them, and merely not noticing something isn’t “odd” enough behavior for me.

    Anyway, this is definitely releated to the part where I chunk up more easily than I chunk down; once I’ve turned something into a principle, I tend to forget how long it took *me* before that principle became “obvious”… 🙂

    The specific paragraph you were critiquing was me speculating on issues that *might* come up, but you are projecting to how I react to actual get-acrossness-failure, which is quite different. In actual conversation, when one way of explaining something doesn’t work, I try another. And another. And another. My goal is usually understanding, not necessarily agreement. If I believe someone understands what I’m saying, but disagrees with it, that’s okay by me; I don’t feel a need to pursue the issue. However, I do tend to obsess a bit on being understood.

    “””if your way is so good, why isn’t it the industry standard … _already_?”””

    Actually, most of the things I alluded to in this post are all already considered industry best practices, or at least emerging best practices. But as you’re probably aware, *typical* practices often lag behind *best* practices by a significant margin.

    The only things that weren’t such “best practices” were in the area of designing a system for simplicity on a global scale. That is, driving all implementation decisions from the use cases, rather than implementing fully independent/autonomous components… Oh wait, XP and TDD already promote that concept, so nothing revolutionary there either.

    Okay, so *all* of the “bricks” I alluded to in this post were symptoms of *not* using current industry best practices or existing, freely-available designs/knowledge/implementation.

    In other words, I actually do recommend a fairly conservative approach, if viewed in terms of industry standards and best practices. So, some of your thoughts are pretty far off the mark, although I can certainly see how what I wrote could give you the impression you got. But there’s probably nothing I’d have recommended in this case that couldn’t be found in the Pragmatic Programmer, or a good book on agile methods. (Except that I’m not sure if the Pragmatic Programmer recommends using existing standards as a way to guide or verify a design, but certainly that’s a “conservative” recommendation.)

  • Two caveats:

    First of all, if you are opposed to self-referentiality, then we are going to have a more difficult time communicating. I take communications about onesown process that are not ultimately self-referential as ‘most likely incomplete’.

    Second of all, it is difficult for me to believe that you
    really think that your intentions ‘after all, I was talking about burying the hacker mindset’ is supposed to, in any way mitigate against the fact that you have declared yourself to have, or even to _understand_ such a mindset. Being a dangerous thinker is intention-neutral.

    Is this truly news for you?

    But on to the disagreement at hand. quoting:

    The “wrong with them” part of your statement is pure
    projection on your part, though, as it takes a lot of
    odd behavior from somebody before I wonder what’s
    “wrong” with them, and merely not noticing something
    isn’t “odd” enough behavior for me.

    No, sir, I have you nailed dead-to-rights, no ‘projection’ necessary. I quote you from the article before:

    They may think I’m making mountains out of molehills,’
    or even refuse to acknowledge the brick because to
    do so would in their eyes be admitting that they
    overlooked the brick before.

    Here is Phil Eby, confidently asserting that somebody’s refusal to ‘acknowledge the brick’ is because of something going on in their head.

    You are blaming them. You stand, accusing them of refusing to
    — oh such conceit — acknowlege something, as in ‘acknowledge the reality’ rather than the more prosaic ‘agree with you’. And you have a rough and ready reason for this — ho, ho, they are in some sort of denial of reality because they do not want to admit to themselves that they overlooked the brick before.

    How very convenient for you. Plenty more convenient then entertaining the proposition that the reason they aren’t agreeing with you is that your explanation was lousy. Or
    that you were, in fact, wrong.

    About as convenient as saying that when I point out that you are blaming the other people for not agreeing with you I am ‘projecting’. You don’t know me at all, and so no deep
    personal knowledge informed that judgement. That snap judgement was based on your profoundly egotistical belief that you know why strangers to you suggest that you do things for
    reasons you do not believe is true, and that reason is the deeply condescending and resentful one that they are ‘projecting their own psychology’ onto your explanations.

    How condescendingly cowardly. It is impossible, by this theory, that people like me could get the wrong idea from what you wrote because of some defect in the way you wrote it, instead, its our own psychological defects which have determined this.

    This one does not wash.

    And it is exactly such behaviour that provokes my ‘top of
    the queue of people it is not worth having conversations with, no matter how brilliant they are’ comment. Do you have any idea how irritating this is?

    Anyway, this is definitely releated to the part where
    I chunk up more easily than I chunk down; once I’ve
    turned something into a principle, I tend to forget
    how long it took *me* before that principle became
    “obvious”… 🙂

    Well, if I have accomplished that much, then I have acheived my first modest goal.

    You take care now, and
    Happy Hollidays,

    Laura

  • “””if you are opposed to self-referentiality, then we are going to have a more difficult time communicating.”””

    That was supposed to be a friendly joke, in response to your closing remarks about self-referentiality. I probably should have included a smiley there; oh well. I have made an effort to insert more smileys in this response, to clarify the parts where I’m trying to be humorous and/or playful.

    “””Here is Phil Eby, confidently asserting that somebody’s refusal to ‘acknowledge the brick’ is because of something going on in their head.”””

    Um, if I said it “might rain tomorrow”, would that mean I was “confidently asserting” that this would happen? Come on, now. You’re also leaving out the first sentence of that paragraph, which reads:

    “Equally bad is the possibility that, once I’ve pointed out the brick, …”

    If I said, “Equally bad is the possibility that, if the world ends tomorrow, I won’t be able to pick up the laundry,” would you conclude that every time I don’t pick up the laundry, it’s because I think that the world ended? 🙂

    You’re confusing cause and effect here. I said, “if Y happens, I won’t be understood”. You’re saying, “Every time you’re not understood, you think Y is the cause,” which appears ridiculous on the face of it.

    Short of using “the meaning is the response” approach (which you’ve said you reject), I can’t attribute this apparent confusion of yours to the words I wrote. They’re right there, plain as day, with a simple literal interpretation. Abstracting the content:

    “Equally bad is the possibility that, once I’ve done X, Y may happen, or even Z [thereby thwarting my intent for doing X].”

    This simple statement reveals no way (that I can see, anyway) to conclude that whenever the author’s intent for doing X is thwarted, the author concludes that it was *because of* Y or Z. That information simply isn’t there, which means that if I were to conclude such a thing on reading the above text, I’m projecting my own thoughts or experiences onto what’s actually written there.

    I *could* hypothesize that the author would consider Y and Z as *possible* reasons why X was thwarted, but I can’t conclude that these are even things he or she would *investigate* when that happened. And, even my hypothesis is just that – a hypothesis, i.e. a projection.

    Ergo, your conclusions are projection, with no “deep personal knowledge” required on my part to reach that conclusion, because you are stating that “Y->!X” is proof that “!X->Y”, an obvious logical fallacy.

    Of course, it’s also possible that you have some new and different meaning for the words *you’re* using, such that they don’t say anything that I didn’t say. If that’s the case, you’ll have to explain them to me, if you want me to understand. 🙂

    Meanwhile, I prefer to think of it as projection, rather than thinking you don’t understand cause and effect. To my way of thinking, this is a more charitable view, because we *all* project things onto what we hear and read, so I can at least relate to that. Confusing cause and effect, I have a harder time relating to.

    All else being equal, I prefer to take the more charitable (from my perspective) point of view on someone’s statements and behavior — which is the big difference between what I’ve said here about you, and what you’ve said about me.

    You’ve called me all sorts of names that I don’t consider nice (backed up by rather suspect reasoning), and yet the only thing I previously said about you is that you projected one single, isolated, inaccurate interpretation onto what I said. Horrors! The inhuman cruelty of me, to even suggest the shadow of an implication of a slight upon your person! Heaven help you should I begin to use sarcasm as well, that will be surely be quite awful! 🙂

    Also, if I were half the things you say I am, I would probably have suggested by now that you could learn a thing or two from me about polite discourse regarding a difference of opinion. Clearly, however, your skill is far superior in this area, and there is nothing at all to be learned from my example, especially not with regard to tempering a discussion with any kind of humor whatsoever. 🙂

    My point is this: relax, I’m not attacking you. I’m more than willing to assume the best of you, even if at first you don’t seem to be willing to do the same.

  • I am actually quite relaxed, and playful. But I am not sure
    if I am up to getting this point across. The first two attempts haven’t seemed to work. Last one:

    Ok. You have been complaining that you are having difficulty getting people to recognise that they are walking about with a brick, something that you find obvious. So far, so good. But in looking at the problem, you have ocassionally strayed very far from ‘what is wrong with my argument’ and ‘what is wrong with the way I present it’ and the like and gone directly to psychological explanations of why other people cannot see the obvious.

    What you are apparantly unaware of is that the fact that you have psychological explanations close at hand can really irritate people. It irritates them when they are aware of what you are doing, and it irritates them when they don’t know why it is that you are irritating, just that you are. And a primary reason that they are irritated is that the first person who reaches for a pychological explanation for somebody else’s behaviour has suddenly staked out a claim on unassailable high ground.

    After you are done denying that your motivations are as somebody ascribed them — then what? That person who has a facility with psychological explanations can no doubt come up with an explanation for why you denied your motivations, or why you are unaware of your true motivations, and so on and so forth. Their position is secure against all argument.

    But at this point the whole discussion has been ruined. It is impossible to continue a discussion of ‘whether it is in my reasonable self interest to modify my practice and do what somebody else says’ when you believe that the other side believes that you are following your irrational self interest.

    And oldtimers at recognising this mess have a quick-and-dirty fix for these problems, which is to never have conversations with people who are glib with the psychological explanations in the first place. Ocassionally we will miss something useful, but in the long run we will be way ahead.

    Thus your belief that other people _may_ be refusing to see the obvious due to pyschological reasons has a direct effect on your effectiveness in convincing them to see things your way. And note, I said _may_. You don’t have to believe that the psychological explanation is true, or even likely. It is enough to have it at your ‘mental fingertips’. Logical proofs that since this reason is a member of the set of all possible reasons, and therefore always _may_ be the reason is beside the point.

    If people can detect that you have come up with a psychological explanation for their apparant blindness, then they may immediately lower your credibility rating to the point where you cannot convince them no matter what you do.
    If you are one of those unfortunate souls whose mind effortlessly comes up with psychological motivations and explanations, then training yourself to either not have them, or to make certain they remain undetectable in your behaviour may be difficult. But it is one factor to consider as you ponder ‘why am I not convincing them?’

    Good luck,
    Laura Creighton

  • “””But in looking at the problem, you have ocassionally strayed very far from ‘what is wrong with my argument’ and ‘what is wrong with the way I present it’ and the like and gone directly to psychological explanations of why other people cannot see the obvious.”””

    What you seem to keep missing (despite my repeated statements) is that this is my *last resort*. I normally assume that there is something wrong with either my communication or my understanding of the person’s situation, and I work diligently to discover which of those two it is. Psychological explanations aren’t something that usually even *occur* to me until after the fact, puzzling over a conversation that didn’t go well. (Like in this post, which was written late at night, long after any conversations alluded to in it.) They are certainly not “close at hand”, as you put it.

    As I keep pointing out, I prefer to think the *best* of people, until there is no choice but to think something else.

    For example, if I were to take your advice in full, I would have to conclude it would be a bad idea to talk with you, because you seem to be pretty glib with psychological explanations yourself — you’ve been attributing a lot more of them to me than I’ve even *considered* about you.

    You seem to be missing a significant irony here: you are doing to me, exactly what you are saying I shouldn’t be doing! That is, you keep framing your arguments around your vision of what’s going on in my head, and refusing to take my word for what’s going on in my own head. That is precisely the kind of disrespect that you are presumably arguing against — and that I *don’t do*. The whole freaking point of this article was my desire to treat my colleagues with respect, as I see it, and the conflict between my desire to be understood, and my desire to be useful.

    My father used to say that actions speak louder than words. You need only read the comments I’ve posted in response to you, to see what I do when I have difficulty communicating. I try different approaches, I try to understand the other person’s perspective. I don’t psychoanalyze. I don’t sit around here and speculate about your life or your motivations.

    If I had the same points to convey to you, as you have been trying to convey to me, I would most certainly phrase them as questions, possibilities, and add quite a few softeners like, “Maybe I’m being crazy, but what about…”. That is, I’d be allowing for the possibility that I was wrong — something that you don’t appear to be doing, in any of your comments so far.

    When I wrote hypothetically, I used myself as the example, (e.g. “if I were to conclude such a thing on reading the above text, I’m projecting my own thoughts”), but when you wrote hypothetically, you used *me* as the example (e.g. “the fact that you have psychological explanations close at hand”). Which of these is more respectful, do you think? Which takes more consideration of the possibility that the viewpoint might be wrong, or not apply to the reader?

  • "But the fundamental "problem" is this: I do care. I frankly don't know how not to care. Trying not to care was one of the hardest things I ever had to do at Verio, and I sure as hell don't want to have to do it again."

    I definitely relate to this. I'm an efficiency expert (maniac?) in all I do. I truly *care* about saving seconds here and there in every little thing I do throughout a day, especially when it comes to computer use. My coworkers, however, could care less.

    I've learned the hard way that until others come to appreciate the virtue of saving time and the joy that accompanies self-improvement, anything I say to them is completely wasted. The reactions will either be a dull look or a humorous attempt at redirecting the conversation.

    It's difficult for me not to care also, but knowing what I know, I'm aware that the only effect that my caring about such things with regards to others is accomplishing is hurting myself.

    I've thought along the same lines as you in terms of "coaxing" people into my perspective, but I can't make myself care that much about improving others that I would go so far as to compromise my own sincerity to do it. I guess that makes me a poor politician too 🙂

    Anyway, great post! It's nice to see another person talking about things like this.

dirtSimple.org

Menu

Stay In Touch

Follow our feeds or subscribe to get new articles by email on these topics:

  • RSS
  • RSS
  • RSS

 

Get Unstuck, FAST

Cover photo of "A Minute To Unlimit You" by PJ Eby
Skip to toolbar