Solidbox

Pending tasks in developing Solidbox.

Sensing

We want the box to detect and report how it is used. Similar to an intrusion detection system, but for regular use rather than abuse.

Detection will likely be done by pattern-matching logfiles, and reporting will be done by storing semantic web "triplets" in a local RDF store. So we need to identify what to look for, and figure out how to express the events we detect as semantic web triplets.

Install user-facing services and corresponding clients (e.g. ejabberd and gajim, mpd and ario, etc.) on your laptop or another computer, play with them, locate which log messages the services generate where for interesting high-level interactions, document the exact log strings that we want to detect, and try express a regex (Regular Expression) for each.

Maybe service configuration need to be adjusted to log all the activities we want to monitor (because normally sysadmins are more interested in abuse). When config tweaking is needed, document the minimal possible tweak for each change we need.

Collecting

We want the box to collect centrally all facts about interesting usage.

Reporting is done by storing semantic web "triplets" into a local RDF store.

We need to figure out how to express our activity facts as semantic web triplets.

Install and play with existing harvesting tools, and share e.g. to mailinglist how useful they seem to be.

For each interesting sensed activity, try express that using existing ontologies, or locally added (phantom-)ontologies.

Reasoning

We quite likely want to refine our collected knowledge base - to "shake the tree" or "squeeze" information out. Reasoning tools exist which can reveal implied knowledge, which can then be stored back into the knowledge base as explicit facts for later quick querying.

For quick introduction to the topic (or one flavor of the topic: OWL2 reasoning), try read this blog post.

Try install some of the reasoning engines, play with them, and try come up with example implied knowledge and concrete ways to have a reasoning engine re-express that as explicit facts.

Storage

Sensed and reasoned facts are stored in a triple-store (or maybe a quad-store).

Data projects

All data must be 5-star Linked Open Data (LOD) (with obvious exception of only being as open as owner permits).

A good place to browse inter-linked ontologies for LOD is <https://lov.linkeddata.es/dataset/lov/>.

Code projects

Packaging

Boxing

Communication

Our target for the box are non-technical users. Our development should attract skilled people.

Read user-facing website. If it something doesn't make sense even to you, or seems confusing or complex or irrelevant for a non-technical person, then discuss that at either our mailinglist or on irc, and (when you understand it yourself) try propose better ways to express it.

Read our wiki pages. If it something doesn't make sense even to you, or seems confusing or complex or irrelevant for relevant skilled persons, then discuss that at either our mailinglist or on irc, and (when you understand it yourself) try propose better ways to express it.

If you have special skills useful for developing Solidbox, then please do dive in!

Example: Skills in human languages other than english is helpful for translation of website and (when developed) user-facing chat dialogues.

Example: Skills in user interaction design is helpful for helping develop sensing and user-facing chat dialogues.

Community