http://rdfintrospector.blogspot.com/2005/01/introspection-warts-and-all.html
Introspector : the process of Introspection, to Introspect
I am a regular reader of news.google.com, and decided to as a joke
google the news for the term "introspector". Although it was, not
found, looking for "introspect" and "introspection" got some
interesting insights into how this term was being used in everyday
journalism.
I found an interesting usage of the term to introspect that I kinda
liked,
not the fluffy idea of just "looking at your mind", although this can
apply to that as well.
It turns out that introspection is seen as some as a brutal honesty, a
valuation of your own self with a bent on the negative. It means
admitting mistakes, looking beyond the facade. It boils down to a
skeptical approach. This allows you to be critical of yourself and
promotes change when it does not cause paralysis and depression.
The point is that just looking at something is not enough, the
reflection is just feeding you with data. You also need to process this
information and feed the decision making process and eventually take
concrete action upon it.
The Sunday Times of Malta writes
"We do lack, though, an ability to meditate about ourselves, to
introspect. If there are mirrors on the walls of our conscience and
consciousness, we do not look into them much"That is an interesting
observation, we lack this ability in general, and if we have it, we
don't use it much. This implies that it is a tool or skill that has to
be learned and is not something you are born with. I think that it is
in some form a type of learned self criticism that some people carry on
to the point of paralysis. It can be painful, but it not impossible.
Any time you listen to critic from outside and then process this
criticism, then you are going through a process of introspection. In
fact, introspection is a form of taking the pain out of criticism,
because you then internalize the external critic, and identify yourself
with it, thus being able to see yourself from outside.
Now, Here is another one I liked because they connected introspection
with the negative aspects, the warts.
"Jonathan Moyo, put it this way: ÂZANU PF needs to introspect a little
and see itself warts and all. ...""Now, here is the concept of brutal
truth. Seeing your own failures and accepting them.
Then I decided to search for this expression, "see itself warts and
all".
Now, Here is a definition of the role of journalism that uses that
term, warts and all, and has a reference to a mirror.
"The role of journalism is to hold up a mirror to society so it can see
itself, warts and all. The role of journalism is to shine a light on
all sides of an issue as fairly and objectively as possible so people
can make up their own minds."Here is another one, about a guy who
creates learning organizations
"I care about learning in organizations. I want to help organizations
create processes, structures,
and cultures that support learning and change."This is also an
important factor in the introspector project, the aspect of learning.He
goes on "My work puts a mirror in front of the organization so that it
can see itself, warts and all."In the same page, Another reference to
the mirror aspect, and warts.
"....we took people through a process of reflection and feedback that
empowered them to learn and change"
I like that as well, the process of reflection and feedback makes an
inanimate object come to life.
Now, we get to the light. What is the light that shines upon the
introspector program itself? It is the light of the mind of the user of
the software. So, the introspector is a tool to allow you to shine your
mental light and see software, warts and all.
Here is an example of a somewhat mystical usage of the term
introspection talking about a diagram of the four quadrants of
spirituality :
"things like feelings, ideas, wishes, interior states, even things like
mathematics and logic, none of which can be seen running around out
there in the sensory world, but can only be accessed by looking within
by introspection, awareness, contemplation, meditation, phenomenology,
and so on. In figure 1, you can see a few representative items that you
can be aware of if you introspect your own mind or awareness or
experience things like sensations, feelings, images, symbols, concepts,
and so on, none of which can be see in the exterior world."That is kind
interesting, talking about the expression of cultural inner values
being expressed as magic. That has long been my belief that all these
belief systems are externalizations of the inner beliefs of people.
Now, we turn to hits on the act of introspection.
It turns out that some people think that George Bush is capable of
learning reflection.
"Last week was a week of introspection in Washington."
"Most notably, George W. Bush danced right up to Â but did not cross
Â the line of admitting he might have actually made a mistake during
his first term. "
ÂIn a first-term press conference, [the president] said he could not
remember any mistakes. Thursday, Bush was more reflective.
It can be that introspection is going to far, as pointed out in the
indiaexpress.com
In fact, self-introspection almost becomes self-depreciation when the
party says: ÂÂOne can take very good decisions, pass very correct
political resolutions and give fine slogans. But unless party
organizations exist and have live contacts with the masses, they will
remain only on paper.ÂÂ
Mike North writes in the chattanoogan, an article titled "In My Humble
Opinion: Reflection, Introspection, Resolution And Execution"
"I use the last week of the year for reflection, introspection, and
resolution. I encourage you to do the same. But how, practically
speaking, does one go about such a process?
You can begin by starting the new year with a journal. Reflect upon the
past year. Write down the joys, pain, successes and failures. Make a
list of the people you love, and of those that you may not care for
quite as much. Honestly assess where you are in your relationships and
career or life goals. Keep the journal all year long. It will be
invaluable come time to repeat the process next year.
The next step is introspection. Look at that list of failures. Were
they your fault, or beyond your control? What could you have done
differently? Do you deserve the credit for your successes? What about
those people with whom you don't get along? Could you do more to get
along with them? Are you where you want to be in life? If so, how do
you prepare for the next step? If not, why not?
Be frank with yourself. Make note of the things that you know need
improvement. The first part of any battle plan is a thorough analysis
of the enemy, his strengths, and his weaknesses. This is no less
important when the enemy is yourself.
Being totally honest with ourselves may be the hardest part of this
process. We tend to rationalize. This tendency is the biggest obstacle
to personal growth and improvement. The lack of self-discipline is a
problem too, but even that is easier to correct if we'll admit that
we're lazy sluggards totally lacking willpower."
Here is another example of reflection feeding decision :
âThe book has come at the right time, when I am at an age (48 years)
wherein I can reflect back about my own life and my work and also look
forward to plan my future. I have a lot more time to think, take stock
of my responsibilities and position myself in the art scenario.â
So, Reflection collects data. Introspection assigns semantics to them,
resolutions are decisions made upon them, and the execution carries
them out.
This reminds me of the scientific method, that of observation
(reflection), hypothesis (introspection and resolution),
Experimentation(Execution).
Summary
Now we get to the point of looking into the software. Software is some
form of external expression of the inner thoughts of people. The
introspector allows you reflect upon them. But in the end, the process
of introspection, the assigning of values to this reflected data is
work intensive. It requires a value system from the user. So the
introspector learns to help the user evaluate the data collected from
reflection. Then the decision making process kicks in, and the
execution.
Looking at the entire program, not looking at just the surface allows
you to really understand it. Looking at the data values used, looking
at the documentation and specification about the various parts. Looking
at the data structures, how they are used. All of this is planned as
functionality of the introspector. Only when you have a single critical
viewpoint from which you can observe the entire system will you also
have a ground to stand on and be able to change it.
I hope that you find these examples as interesting and as instructive
as I did.
Mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________
Do you Yahoo!?
Yahoo! Mail - now with 250MB free storage. Learn more.
http://info.mail.yahoo.com/mail_250

This is the text version of :
http://rdfintrospector.blogspot.com/2005/01/n3v-n-triple-vectoran-efficient-memory.html
Happy new year!
I have finally gotten around to start unifying the ideas of ice cubes
and rdf.
The ice cube idea was to use a binary matrix representation of the
graph as a N*N cube of data.
RDF/ntriples is based on making statements of triples that describe the
graph.
I have today, built a new binary representation of the ntriples format.
It is based on the idea of representing each uri as an index into a
vector. This index should be as compact as possible, so we can exploit
the cache of the computer.
This gets into the area of linear algebra, and the tools lapack will be
interesting, and ScaLAPACK
provides a distributed processing mechanism for it. I will have to
write more about that in the future.
Basically it boils down to creating an vector of uri, and assigning
those uris an index. Optimally the index would be a perfect hashing
function.
For the introspectors gcc graphs, this index is already there, it is
the node id that was assigned during the traversal of the compiler
graph, so I just extract out that number encoded in the uri of the
node.
For the predicates, an id is assigned as a counter, first come first
serve.
The program that does this is done by the n3v_converter.pl program.
It has the following parameters :
input_uri the uri (file:foo.ntriples) to parse
map_file the map file of predicates to indexs
output_file the output file to produce
debug_file the debug file to emit
PACKFORMAT the format of the binary file
PACKFORMAT are three chars, one for the subject, predicate and object.
It is passed directly to perls pack routine, one page that documents
it is here
Here are some useful values, but it occurs to me that a fixed width
char format might be interesting as well!
C An unsigned char value.
S An unsigned short value.
(This 'short' is _exactly_ 16 bits, which may differ from
what a local C compiler calls 'short'.)
I An unsigned integer value.
(This 'integer' is _at_least_ 32 bits wide. Its exact
size depends on what a local C compiler calls 'int',
and may even be larger than the 'long' described in
the next item.)
L An unsigned long value.
(This 'long' is _exactly_ 32 bits, which may differ from
what a local C compiler calls 'long'.)The resulting packed input
file can be read directly into memory.
Here is an example program that reads the Short/Char/Short triple
stucture.
Here is the input file that is it hardwired (in terms of array size) to
read.
here is my post to rdfig/swig on the freenode irc chat
more to follow.
mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________
Do you Yahoo!?
Yahoo! Mail - You care about security. So do we.
http://promotions.yahoo.com/new_mail