/OriginalResearch

A database and suite for handling original research leads

Primary LanguagePHP

Original Research
- A database and suite for handling original research leads

* The program as stands is NOT safe for multi-user use *
* and does NOT have tests *

Design
       - database	    (currently text files)
       - classes	    (object-orientation used)
       - api		    (expose manipulation to command line)
       - automated_scripts  (relieving some manual work)
       - php files	    (manual interaction via dialog(1) and
			    shell_exec() calls to the api)
       - or.sh		    (main entry point)
       - /tmp/effort02/	    Variety files used for transferring state
       - pics/		    Pictures for the manual
       - ~/OR/scrapes/	    Raw & processed data scraped from sites
       - gexf/		    Network maps in XML form of node & edges
       - manual/	    Documentation

or.sh <project name>
Main entry point for using Original Research. The project name if not
previously used will cause new files to be written in the data
directory.

Ctrl-C to exit


/data
Project files go in here, one subdirectory each.


/data/<project>/db
The db directory contains continuing state: a number of flat files
that contained serialised objects. These are used instead of an SQL
database at this point.

- things.serialised
  The Things are entities that we're keeping data about: people,
  podcasts, etc. We also keep data about who uploaded it (only me
  at this point), timestamp of upload etc.
  The tag is a per-file unique identifier for each entity.
- automated_cribs.serialised
  Placeholder file for the moment: this data would be used to
  keep track of when was the last time that a Thing was automatically
  processed, as if it hasn't changed since, there may be no need to
  process it again.
- reviews.serialised
  As we research we might reach our own opinion on something: the
  reviews maintain those notes. We can also leave an empty review
  which merely marks the timestamp it was done.
  Reviews answer the question: when was the last time I considered X?
- links.serialised
  Two different entities might be linked: for instance Alice appeared
  in a YouTube video. The tags for Alice and the video appear
  together in this file. Data is stored as a triple: subject, predicate and
  object.


/api
  Helper files to interact with the database. Their expectation is to
  be called from the command line, and so assist in automation.


/classes
  The database is effected using object-oriented classes, and they
  reside here.


/tmp/effort02/
  Variety temporary files used to track state around between bash
  and PHP. Each file contains one tag.
  - were_looking_at	(Last tag looked at)
  - what_to_do_next	(Next tag to show)
  - break_link_from	(Tags that should have any linkage be
  - break_link_to	 removed)