http://sunir.org/graphics/crystal/logo.gif I can't say much about this project yet, but its essential goal is to track ''who owns things.'' It will ask the community-at-large to update it with news of acquisitions, mergers, deals, etc. I have posted preliminary source code at http://sunir.org/src/crystal"". I will update that as I progress. Once I complete this, I should be able to complete TheProgrammersBooklist quickly. You can now play with the script at http://sunir.org/apps/crystal/crystal.pl. Please don't break it. It's fragile. -- SunirShah See also * TheyRule. * [http://www.palit.com/2002_03_10_tkl_archive.asp#75003148 Kalkutta Libertarian] as an example of the social merit of tracking such quiet relationships. * http://powermap.powershares.com/leviathan/ * http://corpknowpedia.org/wiki/index.php/Main_Page ---- ''January 2002...'' Are you still interested in this, Sunir? --StephenGilbert Yes. Should I be taking it more seriously? (i.e. are you going to help me? ;) -- SunirShah I can help with content and user-level testing of the software. --StephenGilbert Same for me. This sounds like a project that could turn into a very useful resource. --SebPaquet ---- '''Project diary''' * [December 21, 2000] Getting sidetracked with WikiAsSourceControlRepository. I need a good GroupWare system, and UseModWiki looks attractive. --ss * [October 17, 2000] Finished EmitEntity, EditComments, SaveComments (for now, anyway). Source posted. I should really study for my midterms. --ss * [October 14, 2000] Updated the prototype template. It now has a comments section, a ''table'' of relationships, some edit links, etc. I've posted it at the same link as below. --ss * [October 13, 2000] Drew the logo. Mostly done a prototype output template: http://sunir.org/meatball/CrystalPalace/prototype.html --ss * [September 18, 2000] I've posted the latest and greatest streaming Element code. As a bonus, the Serialize module has been extracted and generalized. --ss * [September 13, 2000] The first goal is to create a decent persistent object graph in Perl. If this is too difficult, I might switch to a Smalltalk image hacked out of the Swiki codebase. Or I might just switch to a relational database. --ss ---- '''Task list''' * Find similar entities. * Descriptions. * Full index. * GenerateStaticPages * Edit {Description, News, Relationships} * Save {Description, News, Relationships} * parseWiki{comments, description} * Create new entity * Conflict recovery. * Display ''Thank You.'' message (to verify the save was made). * Put http://sunir.org/apps/crystal/crystal.pl inside of a Wiki:NamedConstant. ---- '''Midway''' * Display existing entity ---- '''Done''' * Object database: store, load. * Create relationships between entities. * Logo * Create prototype template * Edit {comments} * Save {comments} * Generate template from crystal.pl * Conflict detection. ---- '''Bugs''' * When saving the comments, the redirect doesn't change the URL in my browser. ** If earlier in the session when you saved that form it went to a given URL, MSIE4 will cache that URL and go there instead of where the Location redirect says to. Close IE and reopen it. ---- By the way, if you want to see basically what the file format of the object database is, here is a (not-so-good) example: '''Crystal_20Palace.tpb'''
{Entity}
    Crystal%20Palace
    
    [relationships]
    [/relationships]
    #editstamps#
        7
    #/editstamps#
    This%20is%20a%20useless%20comment.
{/Entity}
This is for an object of class Entity which has the attributes name, type, and comments which aggregate data structures relationships (an array) and editstamps (a hash). Bonus question: Can anyone guess why the extension is .tpb? :TheProgrammersBooklist? ;-) Cookies for you! ---- Still interested in my having a crack at this, Sunir? -- ChrisPurcell : Of course. I'm not smart enough to do this myself, but you are. -- SunirShah I was envisaging setting it up on a PeriPeri-deviant, using the existing MetadataSyntax to add information. That means making an ontology of sorts, and since I'm not sure what you were aiming for, I can't do that by myself. So, starting simple, here's something that should fit in: * BillGates was ChiefExecutiveOfficer of MicroSoft between '''' and January 2000 * SteveBallmer has been ChiefExecutiveOfficer of MicroSoft since January 2000 To add a company-job-position then, one makes a new page describing (at a minimum) ''company'', ''person'', ''job title'', and '''dc:coverage'''. * BritishAerospace and MarconiElectronicSystems merged to form BAESystems * MotorolaInc will spin off FreescaleSemiconductor, sometime in 2004 A merger/split/spin-off needs ''original'' and ''resulting'' companies, and a '''dc:date'''. Putting all these on their own pages allows one to gossip about them (cite references, et cetera) in the right place. The RDF engine will handle the implications, and preserve Wiki:OnceAndOnlyOnce. What do you think? -- ChrisPurcell I'm not convinced an objective ontology makes a lot of sense, but more like an OpenCoding system. -- SunirShah