Kermit Snelson has some interesting thoughts about what identity means here. Then he closes with this:
My intention here is simply to suggest that the ambiguous word “identity” may be slowing down leading-edge discussions just as the ambiguous word “free” once did, and that it may be time once again to introduce some useful terminological distinctions.
In other words, let’s have another terminology fight.
Back when I was blogging at TalkBMC I posted some thoughts which spelled out exactly why I won’t be participating in terminology debates. I thought I should repost them on my new blog. So here are my debate opt out reasons from one year, one employer, and too many terminology debates in the past, reprinted in their entirety.
Reprinted from TalkBMC:
There is an interesting debate going on between Paul Madsen and Ben Laurie about whether “Liberty is User Centric”. Paul argues that the discussion is pointless because there is no agreed upon definition of what “User Centric” means. That got me thinking about the comment that Kim Cameron made at his DEC 2007 keynote about there being no agreement about what SOA means. He suggests a new term “Legonic” which I really like, and blogged about here. Unfortunately I fear Legonic will prove to be as hard to define as SOA in the end. So there are some interesting questions that are generating a lot of debate at the moment, like:
What is User Centric?
What does it mean to use an SOA?
What constitutes an Identity?
What is reputation, and how do we measure it?
Ultimately these questions won’t matter. That’s not to say that they don’t matter today. They obviously do matter to a lot of people. What I am saying is that they won’t matter 5 years from now. By then the industry will have settled on best practices that either incorporated these concepts in a way that everyone understands, or they will have been discarded onto the dust bin of history to join FORTRAN, the Fifth Gen Computing System (FGCS) Project, Object databases, and CORBA.
Developers below a certain age probably won’t believe that there was ever an argument about whether Java was on OO language or not. When I used to write code in object orient Lisp on a Xerox 1108 AI workstation, the OO community used to have fierce battles over questions about what OO meant, and whether a specific language was object oriented. These debates fueled a Cambrian Explosion of alternative OO programming languages. There was the good, the bad, and Object Oriented Cobol. Eventually the industry matured to the point where there are a few accepted standard OO languages (Java, C++, C#, and VB.NET) and best practices about how to do OO development. Some of these best practices are even adhered to at times.
Somewhere a bearded warrior from OO battles gone by will emerge from his office, like the apocryphal post WWII Japanese soldier emerging from the jungle who never learned the war was over. He will shake his fist at the sky in impotent rage and shout: “How dare he say Java is object oriented! It doesn’t even have multiple inheritance, let alone mix-ins! The arrogant fool! My Comp Sci class will write a paper on that this weekend and woe to the student that misses these critical points!”
But tenured Achilles will fight alone for the rest of the world has moved on. Likewise in a few years we will have moved past the identity and SOA terminology debates. We will have a set of accepted standards and best practices for what is adopted and will have forgotten about what isn’t.
Why am I writing this? I don’t believe that this year’s terminology war will cease. I simple want to express why I will be a conscientious objector to the terminology wars. I’ve seen this fight before and I want no part in it. Don’t say “Lay on MacDuff”, for I have already cried “Hold, enough!”