Subject: Re: Nagging Naggum
From: Erik Naggum <>
Date: Sat, 05 Jan 2002 12:29:42 GMT
Newsgroups: comp.lang.lisp
Message-ID: <>

* Brad Knotwell <>
| Trying to be delicate, I'd suggest the 1 in 20 number drops a bit if the
| error of their ways is pointed out diplomatically.  If I were lost in the
| Swiss Alps and wishing for a cask of brandy, I'll grab it more eagerly
| from a smiling St. Bernard than I will a growling Rottweiler.

  You, too, seem to make the mistake of believing that I start these
  fights.  I do not.  If you take the time to be fair in your judgment,
  which you have not up to now, you will discover that I _am_ polite to
  people when pointing out factual errors, etc.  _This_ is what blows some
  people's mind if they were not specifically prepared to be wrong on that
  particular point.

  Do you consider the fact that you exhibit a severe case of prejudice as a
  problem?  If not, could you explain how you think to me and tell me how
  your response is possible unless you actually believe that I attack
  people out of the blue?  If you do believe that, what _facts_ could alter
  your "impression" when _fact_ did not enter into it to to begin with?
| I'm probably not invested enough, but I don't get why things often get
| so exercised on c.l.l.


| Maybe I over-estimate the viability of the Common Lisp community or the
| specification, but I don't see how public fighting (and a fine scrap it
| was, eh, Seamus) over something like protects the Common Lisp community
| or the standard.

  Do you think fights in Congress, in the media, etc, over the wide-ranging
  anti-terrorist bills protects the freedom of Americans?  Have you seen
  how nasty those fights got?  I am a nice little puppy compared to those
  who have (in my view, rightfully) compared some of the measures to a
  giant step towards a police state, with "the only way to protect our
  freedom is to destroy it" as a line invoked several times.  These are not
  simple little things like programming languages, but policies that affect
  billions of people, ultimately, trillions of tax dollars, etc.

  Have you learned that an important war was fought in North America over
  the freedom of certain people?  Do you think they would have been better
  off if that war had not been fought?  Etc.

  We have a company among us who exhibits an extremely ambivalent attitude
  towards the standard, with at least one very vocal employee who spends
  his time writing code in a style that predates Common Lisp the Language
  from 1984, possibly even the start of that standardization effort,
  because he wrote a Lisp system even longer ago.  He argues that people
  should not use some parts of the standard and rejects code offered to him
  that does, because he has invented something else that he did not even
  publish either specification or source code to for _months_, even while
  publishing code using it.  Precisely what you allude to in your "why
  can't we all get along"-style first paragraph, _his_ attack on the users
  and creators of the standard alike in an obscure little piece grandiously
  entitled "Lisp Coding Standard" was simply _vicious_ and so hostile to
  those it was aimed at that they stopped working with him long before _he_
  erupted here on USENET accusing those who wanted the standard behavior to
  be "religious" and lots of worse things.  Calling people who made a
  standard on which his company bases its promise to deliver products to
  its customers _braindamaged_ tends to annoy people who more than anything
  want to feel good about giving them their their money and basing their
  own livelihood on that choices.  If you call a party you do not think
  exhibits any thnking ability "braindamaged" in a debate here, that is one
  thing, but doing so on a company-sponsored web page entitled "Lisp Coding
  Standard" and leaving no room for argument means that the company has
  sanctioned his attitude towards those customers who want standard
  behavior.  This is not only an insult to very smart people around the
  world, it is suicidal by a company that has up to now been profitable
  because of its high quality product and excellent customer support.  Add
  to the "braindamage" and "religion" that I expected much more and that my
  _disappointment_ with both company and person became very pronounced
  after this.  As opposed to previously betting several hundred thousand
  dollars of my own income and several million dollars of revenue at the
  company I worked for on their product, I find myself in doubt that
  recommending their product to others or entering new projects with them
  will be good for _me_.  How hard am I willing to fight for a company that
  has a senior scientist who has called me braindamaged and religious
  because I want that company to adhere to the specification that I went to
  them to purchase a product that conformed to?  Tell me, if you hired an
  architect to draw your dream house, and loved the result, and you went to
  a contracter who said he would build it, but when delivered, it was
  different in many important ways and the contractor's chief engineer
  called the design you loved and the contractor had agreed to build
  "braindamaged" and muttered "religious" when you protest that you had
  actually entered a working relationship based on the drawings, no matter
  what anyone's _personal_ feelings about the result would be, I am hard
  pressed to see any other result than a lawsuit that the contractor would
  lose because the contractor refused to back down.  The last part is
  probably more important than anything else.  What this exercise showed,
  was that the person _and_ the company in question is not trustworthy,
  that at any time in the future, one might find that "disagreement" over
  the specification will result in a similar failure to obtain a sensible
  result.  There is already so much legal work to get into licensing with
  them that it scares people off, but when you cannot even get binding
  agreement on the specification they are supposed to implement for you,
  the amount of legal involvement to use their product _skyrockets_.  Some
  people are so inexperienced with legal matters that they do not even
  understand that a standard is a legal document.  Serious disrespect for
  vital components of the legal instruments that control the interaction
  between companies is _really_ moronic, and the inability to _understand_
  that somebody is arguing about the legal framework of contracts one might
  enter with their company, even to the point where nobody in that company
  could find it worth their time to teach him, signals a fundamental
  disregard for the common legal structure of business transactions.  In
  other words, those who _want_ legal frameworks to function properly will
  not want to deal with this company.  Who is to tell which parts of an
  entered contract they will not secretely consider "braindamaged" and you
  "religious" for wanting to adhere to and when you push it, they will not
  back down from so you have to go to court after having paid them a god-
  awful lot of money and taking a huge and costly risk of failure.  But is
  this because they had a rogue programmer who had invented his own macro?
  No.  It is because he chose to be extremely stupid about how to market
  it, accidentally showing in the process his disrespect for the standard
  and those who wrote it and agreed to it, and not realizing how bad and
  stupid this was.  It was about the annoyingly silly macro for about two
  exchanges until the underlying and _real_ feelings about the standard
  emerged.  If you still think it is about the macro, you have completely
  failed to _read_ the discussion or you have bought the rogue programmer's
  version, which was that the standard does not matter, only his personal
  likes and dislikes do, and you do not see that this is destructive in a
  setting where people hammer out a fragile agreement over many years.

  What we learned from the exercise was that some people and companies
  within out community do not value building a society upon the standard,
  but rather only on their product.  Some of us think that this modus
  operandi belongs in jail together with Bill Gates and his evil empire,
  who have made their billions on saying they implement a specification
  only to show that what they really wanted was to destroy it by tricking
  everybody to think they would continue to adhere to it, but it was at
  best a snapshot of two bodies in motion with very different momentum and
  destination with only incidental overlap in position for a short while.
  This problem has been apparent to a lot of people for a really long time
  when it comes to this company, but I thought I could trust their desire
  to work with me towards better conformance.  That trust was fragile to
  begin with, but it did not survive the frontal assault on the concept of
  standardization that their chief scientist undertook in order to defend
  his little macro.  Given the obvious difference in prioritization of a
  pretty stupid macro and the future of his company's revenue and a
  community based on a significant point of agreement, those who want the
  stupid macro can go to them, while those who want an implementation of
  the ANSI standard Common Lisp should go elsewhere.  Since their product
  cannot be used to build competing products, and _they_ reserve the right
  to determine what that means, they have in effect already departed from
  the Common Lisp community to rebuild their own from the past, before
  Common Lisp.  This would not matter to me at all if they at least had the
  basic integrity and honesty to say so, but _no_, even with a number of
  conscious deviations from the standard, they still call it Common Lisp,
  and this violates basic "truth in marketing" principles just for
  starters.  Their products does not even differ in the *features* list
  despite serious differences in features, so the standard way of
  communicating different versions is not employed, forcing people to use
  other ways to find out what kind of environment the program executes in
  that in all likelihood do not work in other implementations unless that
  code is itself protected with standard measures.  All in all, they may
  speak about the importance of conformance, but in the end, their heart is
  so far elsewhere that their conformance is only _incidental_, and with so
  many signs telling everybody that their first choice is not to conform,
  the inability to bring their rogue programmer into line becomes important
  to those who want to estimate their momentum and destination.

  It appears to me that you are simply inexperienced in public debate.
  Many people are.  Many engineers seem to believe that they do not need to
  know about politics or legal matters and some are so staggeringly
  unintelligent and ignorant and stupid that they think "politician" or
  "lawyer" is an insult because they mostly feel powerless about all the
  weird decisions they never bothered to understand how their superiors
  could make.

  All it tells more informed people is that they
  are freeloaders on the complex infrastructure known as "society" and
  cannot be expected to do the right thing unless somebody more informed
  keeps them in check with a cattle prod.  What we learned in the heated
  exchange that begain with that silly little macro was that all the
  measures available to us on USENET were insufficient to make this company
  and their rogue programmer fall into line.  That does not bode well for
  what it requires to make the company and their rogue programmer behave
  according to any _other_ instruments of agreement, either.

  However, a lot of people do not have the slightest problem dealing with
  Microsoft, either, shelling out exorbitant amounts of money for licenses
  and not knowing whether the information entrusted to their bogus binary
  formats will survive a version or how many viruses they must be prepared
  to deal with, so clearly, a lot of people are completely devoid of such
  concerns as I have about these things.  However, watching the way their
  people respond to serious criticism about their practices makes our local
  incident pales in comparison.  Microsoft's people really believe they are
  at war with their own customers and use more propaganda techniques than
  were employed by their teacher in propaganda, Joseph Goebbels, to keep
  their own customers happy with a most favorable impression of themselves
  while the rest of the world are extremely conscious of what it means that
  so many people are so easily duped by an increasingly destructive force.
  However, some of us do not deal with organized crime, terrorists, mafia,
  Microsoft, dictatorships, or companies known to defraud customers, and it
  would be very nice if we did not similarly have to avoid a company in the
  Common Lisp community just because they have a rogue programmer who is
  not smart enough to figure out the importance of legal instruments of
  agreement and how valuable it is to adhere to and respect a specification,
  but I fear that it is more than that one rogue programmer.  Finding the
  source of something like this and resecting it is not a simple task, as
  most people work very hard to conceal their true motives and objectives,
  even when it is painfully obvious to everyone else, as was the case here
  -- starting with a stupid rejection of standard features in favor of a
  silly old macro a rogue programmer refused to let go of.  Sometimes, we
  learn most about people from what they will not back down from.