[Date Prev] [Date Next] [Thread Prev] [Thread Next] Indexes: Main | Date | Thread | Author

[ba-ohs-talk] Towards an OHS Manifesto

Heady subject, what?
Probably longish. Sorry    (01)

I just read http://www.technos.net/journal/volume8/4rawlins.htm
an interview with Gregory J. E. Rawlins.  I'm going to quote a bit from it, 
then use that as a point of departure in which I will claim (again) that 
Education is the prime OHS use case.  I will then outline my thoughts (as 
of today) on some steps towards an OHS that satisfies that prime use 
case.  In some sense, the notion of a HyperScope will emerge somewhere in 
this diatribe.    (02)

Quotation from the interview (context: he is talking about books he wrote 
_before_ the Web was invented):    (03)

"Imagine if ten years ago some wild-eyed dreamer had said that one day we 
would have hundreds of millions of people directly communicating with each 
other. No middleman. No controlling corporation. No monopolistic fees. No 
artificial constraints. No government. We're betting that people really 
will want to take charge of their own computers and have things done their 
way. And we're betting that the results will be astounding. So, ultimately, 
we work on KnownSpace because we hope that one day, ten years from now, 
maybe, there will be a gigantic computational network of towering 
complexity, mostly working for the betterment of humanity, we hope, and 
somewhere, deep at the core, is some version of what we originally slaved 
to produce. A seed."    (04)

By now, you have seen the connection between this quote and some of my 
earlier posts.  Specifically, the KnownSpace (Java, Apache license) project 
presented at http://www.knownspace.org and elsewhere on the web.    (05)

Let me start with a brief discussion of KnownSpace as it now 
exists.  KnownSpace uses biological metaphors to create a software 
environment where actors can perform actions on entities.  Entities are 
chunks of information.  Actors are called "simpletons" -- tiny bits of code 
that do stuff, like download web pages, build links, cluster entities, and 
so forth.  It all sounds like the Unix environment in which tiny bits of 
code are "piped" together.  A neural net metaphor exists and is based on 
the ability for actors and entities to subscribe to "events".  Thus, some 
bit of information being added to the "pool" might provoke responses from 
other actors, and so forth.    (06)

The system includes several kinds of capabilities that I think to be highly 
valuable.  For instance, one should ask if KnownSpace can "read" entities 
and try to make sense of them, perhaps in the context of user 
interests.  KnownSpace includes a chunk of code for doing Latent Semantic 
Analysis.  At this writing, I have no idea how to invoke it, but I know 
that it will be of great value real soon now.    (07)

I could go on -- KnownSpace is rather powerful -- but let me continue with 
thoughts on a manifesto.    (08)

There exists another project I have spoken about: Greenstone, which, at 
this moment, is busy archiving and analyzing web pages on evolutionary 
epistemology that I wish to study for purposes of some soon-to-start PhD 
research.  Greenstone http://www.greenstone.org/english/home.html (c, perl, 
etc, GPL license) has the capability to suck up and index entire web sites, 
an entire hard disk, whatever.  It creates XML documents (akin to iFile 
documents ala HyperScope) based on documents it imports.  It then indexes 
those for rapid keyword search.  Greenstone appears to do other things, 
like n-gram analysis, and more, but I haven't taken the time to explore 
those capabilities yet.  As well, there is reported to be a Corba 
interface, meaning that one can converse with greenstone without having to 
compile against it (running up against license issues).    (09)

I can see a blending of KnownSpace and Greenstone in an appropriate 
system.  Greenstone sucks up everything in sight, builds an index and 
intermediate archive (XML files).  Each added file becomes food for 
KnownSpace to meld into its pool.    (010)

To make all of this work, I am thinking about two changes to KnownSpace:
     Moving the Pool class to one I call PersistentPool, which will use a 
database (rather than a flatfile representation of the Java Class 
itself).  Databases of interest include various RDBMS systems (MySQL, 
PostgreSql), and Xindice (apache).
     Moving the event structure to a coordination structure, based on David 
Gelernter's Linda architecture (e.g. IBM:TSpaces, Sun:JavaSpaces, my 
homegrown coordinator package from Nexist).    (011)

Moving to a coordination structure means that the coordination engine can, 
itself, be web based such that activities now going on within KnownSpace 
can now be spread about to many other computers.  Moving to a database 
structure now means that we can perform versioning, locking, transaction 
support, and so forth.  In the end, I suspect that something akin to Lee 
Iverson's NODAL, or a Grove-like structure will replace the persistent 
structure now envisioned.    (012)

Within all of this work, HyperScope, itself, is of great importance. 
<note>what follows is my interpretation</note> HyperScope is Douglas 
Engelbart's vision for a kind of interface that renders all documents 
viewable by a user, and viewable in a user-prescribed way.  In some sense, 
KnownSpace moves in that direction given that it shows relationships among 
documents within user-prescribed contexts.  I suspect that a HyperScope 
would add the ability to transpose a document into a user-prescribed view 
specification to the KnownSpace capabilities.  I further suspect that 
Greenstone creates a kind of intermediate file from which, using XSLT 
templates for page rendering, page displays can be viewer-prescribed.    (013)

Now, to the *primary use case*, Education.    (014)

As a fan of constructivist learning theory, I am strongly attracted to the 
mix of technologies outlined above.  First, the HyperScope allows learners 
to create their own "learning space" by defining the way they can view and 
manipulate information.  Second, KnownSpace allows learners to manipulate 
contexts to suit their own needs -- greatly akin to the "Information In 
Place" concept created by Jim Spohrer.  Add to that the ability to suck up 
and manipulate vast quantities of information using Greenstone and you now 
have what I like to think of as a Personal Learning Space <note>one that I 
want to have myself!</note>.    (015)

Now, add to this mix, the power of D3E http://d3e.open.ac.uk/ -- Digital 
Document Discourse Environment -- and you have even more grist for the 
KnownSpace mill.  And, you have an online learning center where learners 
can come together to discuss/argue about new contributions to their 
information space.    (016)

Put all that together, and you have the specification for an OHS <note>my 
opinion</note> that satisfies <note>at least for me!</note> a real need in 
the arena called Education.    (017)

My plans for implementation:
I have already begun looking at an API for tying everything 
together.  That's my Nexist project -- 
http://www.thinkalong.com/Nexist.  At the same time, I have Greenstone 
already hard at work on my computer.  I plan to put together a Linux box 
with Greenstone and KnownSpace together and alone, working continuously.  I 
have begun to write PersistentPool for KnownSpace, and I already have a 
Linda-like engine in Nexist that I might eventually work into KnownSpace to 
replace much of the event propagation structure: artifacts in KnownSpace 
would subscribe to the Linda engine rather than register themselves with 
others artifacts in KnownSpace itself.    (018)

Lastly, I am working with several others to create a learning consortium 
that would develop and exploit these and other ideas in an on-line 
international learning portal.    (019)

A Manifesto?  Yup.  Time to write one.  I think it must start with a 
thorough examination of the HyperScope itself, cast, of course, in many 
lights, one of which I am trying to do here.    (020)

Enough said for now.    (021)

Happy New Year!
Jack    (022)