Nominalist or Realist? Mentalistic or Conceptualistic?

Anytime I start thinking deeply about meaning and context and communication, I begin to look about me for guidance and reassurance. A lot of really smart people have spent a long time thinking about and debating what these things are and how they work. Hoping that someone else will provide some map through this ongoing discussion, I keep looking. Unfortunately, the more broadly I search, the more I am led to the conclusion that a lot of the discussion has fallen into the trap of endless “splitting of hairs”.

This is not to say that these arguments aren’t important, and that the points being made aren’t valid. I am nowhere near being “read in” sufficiently to actually have an opinion on them. The one observation I’ll make about the larger discussion is that I think the terminology has gotten away from itself (but perhaps this is just an observation by a naive someone outside of the context).

I feel frutsrated in that I’m trying to consider the ideas of those who’ve spent more time on aspects of this than I. But because of the apparent need to differentiate one’s ideas from another’s, this invention of terminology has made large parts of the discussion nearly opaque to me, and therefore  ultimately of limited utility to my purposes. The shear volume of references to arguments and counter-arguments has intimidated me beyond measure, as I realize that to form my own opinion from the broader philosophical discussion will require years of reading.

A case in point is highlighted by this excerpt from a book I was pointed to by someone on a separate discussion page (David Blair’s book Wittgenstein, Language and Information: “Back to the Rough Ground!”). In the span of two or three paragraphs, while I got the basic drift, I find myself confronted with three competing schools of thought on meaning:

Nominalists: who appear to think all language is “names”

Realists: who appear to think there are “universal” ideas outside of anybody’s mental conception (I think I missed the point on this one)

Mentalistics/Conceptualistics: who appear to think (taking the stated criticism of the view as a valid description) that meaning is closely held and private to a person.

I have to admit, of the three (and I don’t know that these are really all mutually exclusive from this short passage), that the mentalist view is probably closer to my own opinion. However, before declaring my allegiance to any particular school of thought or philosophical category, it appears I have a lot more reading to do.

So instead of trying to align myself formally with a pre-defined family of philosophical ideas, I think I’ll just continue to state my own case here for what I think these things are.

I know software development, that’s my angle into the discussion, having been writing software for nearly three decades. Software development is in fact less of an individual philosophical endeavor, and in my mind is much more influenced by social and cultural factors. They key question and the thing I find fascination with, however, is right at the threshold between how the rigidity of the software application interacts with the fluidity of the social environment in which it is designed and used.

The reason philosophy, and in particular philosophy of language, comes into play is that the development of the software application is entirely dependent on capturing and codifying the intended user community’s shared conception of reality. This “conception” is something larger than the individual thoughts of a single person, but represents the communicaton of all members of the community, hence it really should be considered an “act of language.”

This is why I place so much focus here on what I call “context”. The creation and maintenance of context by humans, how it shapes the terminology and symbols, the projected simulation or model of reality that it constrains and enforces, these are the things that I feel drive any software development.

Placing context first, then what I consider “terminology” comes next. This is the set of key ideas or concepts within the context. The most interesting (to me) of the examples of terminology within a context fall into two categories. First are the ones that are truly idiosynchratic coins-of-phrase which, if considered by anyone outside of the context  would never invoke the concept assigned within the context.

Second are the concepts which are so idiosynchratic to the context and complex that they cannot be summed up by a single term. (See my case study regarding selection of terminology at the IRS). These are particularly difficult to accomodate when writing software due to the multitude of terms coined and lengthy descriptions necessary to differentiate and identify them. In other words, there are some concepts in some contexts that cannot be named, or which have taken on names with little obvious connection to a general (external) discussion.

While I think I am probably not in the “nominalist” camp, does this make me a “realist”? a “mentalistic”? a “conceptualistic”?  I don’t know. I guess only further reading and continuing to elucidate my own ideas here will be able to determine that.

The Context Continuum

So my previous post about the “Origins of a Context” was grossly simplistic. That is however, a good way to get a basic idea out there. Obviously there are many complex factors and layers of influence that affect the extent and content of a context.

One way to look at context is as a continuum from the very small to the very large. This “size” measurement is a reflection of the number of people who share the context, not necessarily the size of the population of concepts and symbols within it.

As I’ve said in other places, a context is defined by its membership first, and its content second.

Hence, by my definition, the smallest context is defined by a single human being. That person would create contexts of a private nature: mementos of their life and personal mnemonics. If the person were artistic, they might create art and artifacts of personal importance. These personal symbols would remain private until the person shares them with someone else.

As soon as they have been shared, even if only with one other person, these artifacts take on additional meaning and become community symbols. Once they have been placed into a larger community, further refinement and re-enforcement of the symbol becomes a community activity. For the original “artist”, their conception can take on a life of its own, and they may lose control over it.

As more and more people become aware of a symbol, the broader the context becomes. But in addition, the symbol itself will begin to change its meaning, either becoming much more generic and broad, or tightening up to some exclusively minimized idea. As soon as this happens (and it happens almost immediately after it begins to be shared) correct interpretation of the symbol must, by definition, take into account which context’s version of the symbol is being considered. Other writers have referred to this issue as one of identifying the “situational” meaning of the symbol, while others talk about the symbol’s “frame”. In my mind these are the same thing as what I’m calling “context”.

So what does this continuum of contexts look like? I’ve drawn a first draft diagram of the smooth transition from personal symbol to the “semiosphere”. It identifies the types and relative sizes of contexts and presents some of the names of their various features. It also shows where in the continuum various types of study and research fall.

I make no claims of absolute accuracy here, and invite comments from experts in these fields (and any others who want to project onto my template).


Continuum of Context from Single Person to Semiosphere

Continuum of Context from Single Person to Semiosphere


Different Contexts Use Different Signs

The following is an excerpt from one of my permanent pages.

Photo of an Actual Stop Sign In Its Normal Context

Photo of an Actual Stop Sign In Its Normal Context

In the Context defined for “driving a car in the United States,” a particularly shaped, painted metal plate attached to a wooden post which has been planted in the ground at the intersection of two roads and facing toward oncoming vehicles represents the concept of a command to the oncoming motorist to “stop” their vehicle when they reach the intersection.

However, a similarly colored and shaped object, say a computer bitmap of a drawing of a “stop sign”, not only is represented by a different Syntactic Medium, it exists in an entirely different context (perhaps one that is not obviously recognized by the casual observer).


Cartoon Drawing of a Stop Sign
Cartoon Drawing of a Stop Sign

If this computer bitmap “stop sign” were to be displayed on a large computer monitor, and this computer monitor was used to replace the wood and metal Stop Sign, even if placed in the same position and orientation as the more typical structure, it is not certain that every driver would recognize the validity of the new Syntactic Medium, which could lead to accidents! This example should give the reader a clear understanding of how a Context constrains and defines the physical structures that are permitted to represent the concepts it contains.


For simplicity sake, let’s consider that Meaning, in the ultimate sense of the term, has NO STRUCTURE. In actual fact, it has been proposed that each human being will contain some physical characteristics which may ultimately be recognized as the structure of meaning within their heads. However, it is my opinion that whatever turns out to be that structure, there will be no commonality of the specific structures for similar concepts in two different people’s brains. So while individual human’s brain structures may be replicable after we reach the “Singularity”, they most likely will not be directly translatable. (In other words, I think there will never be a time when two humans can read the information in each other’s heads.) Each brain structure will have developed in similar fashions, but under the mathematical and physical laws of Chaos theory. In other words, each individual brain will be as unique unto itself as a snowflake.

January 26, 2007

The Origin of a Context

On this blog and in the writings of many other people through history, the idea of “context” as a component of the definition, interpretation and usage of symbols plays a large role. Be it called “situational” or “cultural” or any of a number of sometimes more and sometimes less academic notions, context provides the key (just as a cipher is a key to an encryption code) to interpreting any message. Without knowing the context, many messages will be uninterpretable, or even worse, unrecognizable.

But what is “context” really? Where does it come from? Here is my decidedly informal discription.


Two people thinking their own thoughts meet for the first time

A conversation starts and one tells a story.

The other listens, interpreting silently what she hears into her own experiences.

She then responds, reflecting what she thought she heard, but with a variation or two. 

Conversation Begins

Conversation Begins

The first person agrees with some of her response. He hadn’t at first thought of the variation, but now that she’s mentioned it, he knows she’s on to something.


Conversation Ends Context Begins

Conversation Ends Context Begins

The two part company, carrying a memory of their conversation.

When they meet again, they will reinforce and reiterate their common perceptions on the matter. This is the origin point of CONTEXT: the set of principles and concepts that the two agree about, and the shared vocabulary they have used to describe them.

NEWS FLASH: Locals Choose Different Terms for Same Thing – Soda versus Pop

In some parts of the US, carbonated beverages are called “sodas”, and in others they are called “pops”. Both terms are contractions of their original “soda pop”.

So what happened here? It begins simply with a handful of people in each location. Different people in each region get tired of using the full phrase “soda pop”. They start speaking in a short hand with their friends or neighbors, and soon everyone around them is doing the same thing. This is how context works: group of people experiencing the same things communicating. Over time, they coin terms and colloquialisms to make their communication faster and more efficient. Some of these are simply contractions of compound terms. Others may start out as names of specific examples, or perhaps descriptive metaphors or euphemisms that suddenly take on a life of their own.

The point is that different contexts end up with different contractions, slang, etc. for the same things. Over time, this usage spreads out among the local population to become a regionalism. Given enough time and geographic separation, I imagine, this is how dialects arise, and how languages split off from dialects.

Context Switching: Image and Identity

Prof. Lindsay Clark responded to a comment I made on her blog by describing her thoughts about the differences between self image, self identity and social identity.

If I may try to separate her concepts a little, I think that “self identity” I might define loosely as the “meaning I want to project to the world about who I am”. In other words, its the information I want to share, the things I want the world to think about me. 

I might consider that “self image” be defined as “what I think I mean to myself alone”. This being private, I would tend to keep a lot more of my interior personna to myself than I try to project. 

Leaving “social identity” to be defined as “what others think I represent or stand for (or, the meaning of me in the world)”. This would be the amalgamation of “messages received” not necessarily the messages I intended to send.

And while I think there would be strong relationships and hopefully a good bit of overlap among these three sets, they are necessarily not the same things.

The teenager example Prof. Clark chose is a good one because it shows these ideas in microcosm. She wrote:

The artifacts of this tend to be personal and may not be able to be recognized by anyone else. (e.g. a teenager who keeps the bottle cap from the soda he was drinking when he had his first kiss)….

The individual may consciously or unconsciously try to affect that perception through symbolic artifacts. (e.g. a teenager who displays a poster of the latest hit band in his locker). These artifacts, for obvious reasons, tend to be social symbols which are recognized by all people of that social group.

Here is an annotated short story in the voice of an imagined teenager to illustrate how I have made distinctions amongst these terms. My apologies to the professor if this is not exactly what she had in mind…

I have a poster of my favorite singer because I really am a fan of music, and music is an important aspect of who I am. Having that poster reminds me of how much I like music (self image). I put the poster in my locker because I want to tell my friends a message about how much I like music, and in particular how much I like my favorite singer (self identity). But this backfired on me because my peers and cohorts think my favorite singer is (fill in the negative connotation here) “babyish” and now my classmates think I am definitely the same (social identity).

If we take the poster itself and consider it as just a, what I call, “syntactic medium” (quickly, this is something that can be used to carry a projected meaning or concept), we can see there are three different meanings depending on the point of view and situation (context).

In my private context (the dialog I have with myself) I am excited, enthused and my sense of self is re-energized when I see my poster.

In the hallway at school, my friends (cohort context) see the poster and are reminded that I really like the singer. They may not like them as much, but being my friends, they have received the message that this singer is important to me (that I enjoy them), and they may now be on the lookout for other souvenirs of that artist on my behalf.

But in the larger high school environment (community context), my poster has now caused some of the disdain my peers hold for the singer to have been transferred onto me. Oh well, at least my friends understand me…

What I like about this story is that it also illustrates how easily we humans can shift from one context to another seemlessly. In the span of three sentences, our teenager can express what that one symbol represents in three different contexts.

As a software developer, I can tell you how miraculous that talent of ours is, because software cannot do it! Software (at least as the world currently develops it) would necessarily only understand one of the three contexts.

Software Applications As Perception

“The agent has a scheme of individuation whereby it carves the world up into manageable pieces.”                    K. Devlin, “Situation Theory and Situation Semantics”, whitepaper, 2004, Stanford University.

A software application creates and stores repeated examples of symbols defined within the context of a particular human endeavor, representing a perceived conceptual reality, and encoded into signs using electro-magnetic syntactic media. While the software may be linked through automated sensors to an external environment, it is dependent on human perception and translation to capture and create these symbols. Business applications are almost entirely dependent on human perception to recognize events and observations. That said, while the original “perceptions” are made by human agents, the software, by virtue of the automation of the capture of these perceptions, can be said to “perceive” such events (although this should be considered a metaphor).

Application design is in large part the crystallization of a particular set of perceptions of the world for purposes of providing a regular, repeatable mechanism to record a set of like events and occurrences (data). In essence, the things important to be perceived (concepts) either for their regularity or their utility by some human endeavor (context) will determine the data structures (signs) that will be established, and therefore the data (symbols) that can be recorded by the software system.

The aspects important to the recognition and/or use of these repeated events (e.g., the inferences and conclusions to be derived from their occurence) determines the features or qualities and relationships that the application will record.

Good application design anticipates the questions that might be usefully asked about a situation, but it also limits the information to be collected to certain essentials. This is done purposefully because of the fundamental requirement that the attributes collected must be perceived and then encoded into the symbology within the limited power of automated perceptual systems (relative to human perceptual channels).

In other words, because a human is often the PERCEIVER for an application, the application is dependent on the mental and physical activity of the person to capture (encode) the events. In this role, while the human may perceive a wealth of information, the limits of practicality imposed by the human-computer interface (HCI) guarantees that the application will record only a tiny subset of the possible information.

This does not pose any particular problem, per se (except in creating a brittleness in the software in the face of future contextual change), but just illustrates further how the context of the application is more significantly constrained than either the perceived reality or even the boundaries formed from the limits of human discourse of the event. This inequality can be represented by this naive formulation:

Μ(Ac) << Μ(Hc)

The meaning contained in the Application A defined by the context c is much less than the meaning (information) contained in the Human H perception of the context.

It is important also to note that:

Μ(Ac) is a subset of Μ(Hc)

The meaning contained in the Application A is a subset of the meaning contained in the Human H.

No aspect of the application will contain more information than what the human can perceive. This is not to imply that the humans will necessarily be consciously aware of the information within the application. There are whole classes of applications which are intended to collect information otherwise imperceptible to the human directly. In this manner, applications may act as augmentations of human perceptual abilities. But these applications do not of themselves create new conceptions of reality posteriori to their development, but rather are designed explicitly to search for and recognize (perceive) specific events beyond the perception of natural human senses. Even in these situations, the software can only recognize and record symbols representing the subset of possible measurements/features that their human designers have defined for them.

Hence, while software applications may be said to perceive the world, they are limited to the perceptions chosen a priori by their human designers.

EXAMPLE: Syntactic Medium in an Anchor State

Just what is an “Anchor State“? An example will explain this better.

Take an “extract-transform-load” (ETL) process in a Data Warehouse application that copies data from one system (a database) to another based on some criteria. In particular, the example organization needs to capture customer’s names for use in a business intelligence application measuring the success of marketing mass-mailings. An ETL process will be defined (in terms used within the Metamorphic Modeling convention) as a transformation from a source Anchor State (source) to a target Anchor State(target). The syntactic medium of the source application contains a table called “EMPLOYEE”. This data structure has been co-opted by the user organization to include customer information. The organization has chosen to use this table to represent customers since it is the only data structure available in their system that associates a person’s name to an address, telephone number and e-mail account, and it has no other means of recording this information about its customers.

 The source Anchor State has been constrained, therefore, to the “EMPLOYEE” data structure, and to the set of symbols within that medium which represent customers. That same medium, in a different Anchor State, may have been constrained to the set of “managers”.

 So, how does the ETL process recognize the set of symbols within the “EMPLOYEE” data structure that represent customers? The user organization realized that the application containing this data structure also contained a table called “EMPLOYEETYPE” which contains user-defined codes for defining types of employees. This table’s primary key is a coded value stored in a field named “EMPTYPE”, which also appears as a foreign key reference in the “EMPLOYEE” table. The organization decided to create a symbol, namely a code in this EMPLOYEETYPE table to represent the “customer type”. Then, whenever they want to record information about a customer in the EMPLOYEE table, they assign this code value to the “EMPTYPE” column on the row representing this customer.

 The following figure depicts a portion of an “Entity Relation Diagram” which defines the “EMPLOYEE” and “EMPLOYEETYPE” tables in this application. It also shows a subset of the values contained within the “EMPLOYEETYPE” table, as defined by this organization.

Example Employee Table Data Model

Example Employee Table Data Model

As can be seen in the figure, there are actually three different “EMPLOYEETYPE” codes defined to represent the concept of “customer”. These are EMP_TYPE values 5, 6, and 7, representing “Customers”, “Premier Customers” (which the organization has defined as important customers), and “Good Customers”. Asside from the “business practice” that these three types can be used to differentiate “customers” from other types of entities, there is nothing intrinsic to the structures that indicates this. Hence, from an application standpoint, all types are equal and will be manipulated in the same way.

 From the point of view of the ETL under development, however, the significance of the usage of these three codes is critical to its proper operation. The source Anchor State for the ETL is defined as the set of raw symbols within the “EMPLOYEE” table that have one of the “customer” type code values in their corresponding EMPTYPE column. For this ETL (transformation), the EMPTYPE column and its values represent the semantic marker for “customer” in this source Anchor State. The Anchor State therefore consists of the data structures, “EMPLOYEE” and “EMPLOYEETYPE”, and the constraint that only the rows of the “EMPLOYEE” table where the EMP_TYPE value is 5, 6, or 7 define what the ETL should consider to be “customers”.


All pages are Copyright (C) 2004, 2009 by Geoffrey A. Howe
All Rights Are Reserved

Software as Semantic Choice

When I design a new software system, I have to choose what parts of reality matter enough to capture in the data (data is little bits of information stored symbollically and in great repetitive quantities). I can’t capture the entirety of reality symbollically, software is another example in life of having to divide an analog reality into discrete named chunks, choosing some and leaving others unmentioned.

This immediately sets the system up for future “failure” because at some point, other aspects of the same reality will become important. This is what in artificial intelligence is called “brittleness”. A quality which bedeviled the expert system movement and kept it from becoming a mainstream phenomenon. This is also a built in constraint on semantic web work, but I’ll leave that for another post.

Taking the example of quantum physics research as an example, there’d be no point in writing one application to capture both the speed and position of a quantum particle in a database, because as we all know, only one or the other data points is available to us to measure at one time. Thus we choose to capture the one that’s important to our study, and we ignore the other.

This is why a picture is worth a thousand words: because it is an analog of reality and captures details that can remain unnamed until needed at a future time.

This is also why we say that in communication we must “negotiate reality”. We must agree together (software developer and software user) what parts of reality matter, and how those parts are named, recognized, and interact.

In reading a recent thread on Library Science, it sounds like in the “indexing and abstracting” problem (used to set up a searchable space for finding relevant documents), a choice has to be made on what we think the searcher will most likely bring with him in order to find the information they seek. But by virtue of making one choice, we necessarily eliminate other choices we might have made which may have supported other seekers better.

This is an interesting parallel, and I must assume that I’ll find more as this dialog continues.

%d bloggers like this: