#+TITLE: Sixth - system for data storage, computation, exploration and interaction
------
-- [[http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz][download latest snapshot]]
-
-- This program is free software; you can redistribute it and/or modify it under
- the terms of version 3 of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public License]] or later as
- published by the Free Software Foundation.
-
-- Program author:
- - Svjatoslav Agejenko
- - Homepage: http://svjatoslav.eu
- - Email: mailto://svjatoslav@svjatoslav.eu
-
-- [[http://svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]]
-
* (document settings) :noexport:
** use dark style for TWBS-HTML exporter
-#+HTML_HEAD: <link href="https://bootswatch.com/darkly/bootstrap.min.css" rel="stylesheet">
-#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/js/bootstrap.min.js"></script>"
+#+HTML_HEAD: <link href="https://bootswatch.com/3/darkly/bootstrap.min.css" rel="stylesheet">
+#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+#+HTML_HEAD: <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.min.js"></script>
#+HTML_HEAD: <style type="text/css">
#+HTML_HEAD: footer {background-color: #111 !important;}
#+HTML_HEAD: pre {background-color: #111; color: #ccc;}
#+HTML_HEAD: </style>
-* Current status
-There is nothing useful for regular people yet.
+* General
+- This program is free software: you can redistribute it and/or modify
+ it under the terms of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public License]] as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+- Program author:
+ - Svjatoslav Agejenko
+ - Homepage: https://svjatoslav.eu
+ - Email: mailto://svjatoslav@svjatoslav.eu
-Sixth is presently in research / prototyping and ideas collecting phase. Some
-working parts are already implemented:
+- [[https://www.svjatoslav.eu/projects/][Other software projects hosted at svjatoslav.eu]]
+** Source code
++ Note - Sixth is currently empty parent/shell project. You can find
+ working code under [[id:52dbbf4c-2ef4-42a6-8331-ad006b6a52ae][sub-projects]].
-+ Sub projects:
- - [[http://www2.svjatoslav.eu/gitbrowse/sixth-data/doc/index.html][First layer of storage: Simple persistent key-value map.]]
+- [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz][Download latest snapshot in TAR GZ format]]
- - [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d/doc/index.html][In software, pure Java realtime 3D rendering engine.]]
- - [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d-demos/doc/index.html][3D engine demos]]
+- [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=summary][Browse Git repository online]]
-* Vision
-- A tool to amplify human ability.
+- Clone Git repository using command:
+ : git clone https://www2.svjatoslav.eu/git/sixth.git
+* Vision - A tool to amplify human ability
+ :PROPERTIES:
+ :ID: 1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f
+ :END:
+Idea is to design all encompassing, flexible and powerful virtual
+environment where I can live in and very efficiently do all my
+computing tasks enjoyably and with playful ease.
-- Properly visualizes and immerses user in completely various forms of
- information and provides intuitive and powerful ways to explore,
- interact and manipulate it with fast feedback loop to immediately
- see results.
+[[id:c19c5a3b-dfb0-4f7f-961c-a387b925669f][See extensible, programmable computing environment examples]]. In each
+case you can install or develop plugins/extensions for every purpose
+imaginable.
-#+BEGIN_QUOTE
-“Virtual reality holds the key to the evolution of the human mind”
-Dr. Lawrence Angelo, The Lawnmower Man (1992)
-#+END_QUOTE
+I would like to create better general purpose environment with the
+following properties:
-* Feature ideas to implement/incorporate in the future
-- Semantic networks / knowledge trees.
- - Is able to use natural language for knowledge mining and question answering.
- This could potentially lead to self aware artificial intelligence. Because
- of [[http://en.wikipedia.org/wiki/Three_Laws_of_Robotics]["Three laws safe"]] design, there is nothing that can go wrong.
++ Makes lots of complex data intuitive to:
+ - explore, understand
+ - manipulate and compute on
-- Become an alternative to KDE, Gnome, Canonical Unity or similar desktop user
- interfaces.
++ Extensively relying on:
+ - [[https://www3.svjatoslav.eu/projects/sixth-3d/][Realtime 3D graphics]] with immediate feedback loop.
-- Become an open source scientific computing engine of structured data as an
- alternative to proprietary Wolfram Alpha.
+ #+BEGIN_QUOTE
+ “Virtual reality holds the key to the evolution of the human mind”
+ Dr. Lawrence Angelo, The Lawnmower Man (1992)
+ #+END_QUOTE
-- Become an open source solution for unstructured knowledge extraction and
- processing, similar to IBM Watson.
++ [[https://www3.svjatoslav.eu/projects/sixth-data/][Flexible and distributed computation and data storage]].
-- P2P (Peer to peer) distributed computation system.
++ Cross device:
+ + Easily switch and/or combine computers to work seamlessly on any
+ tasks.
-* Technical capabilities to have
-Perfect computing system must have advanced data visualization,
-storage, transmission and computation capabilities.
+ + User interface, data, software, running proceses and available
+ computing power is not contained or limited by boundaries of any
+ single device.
-There are LOTS of existing cool technical ideas and solutions for each
-challenge. It's really hard to pick the best. Here is a small list to
-evaluate.
-** Computing
-Efficient distributed computing is required.
+** Extensible, programmable computing environment examples
+ :PROPERTIES:
+ :ID: c19c5a3b-dfb0-4f7f-961c-a387b925669f
+ :END:
++ [[https://www.johndcook.com/blog/2008/04/27/one-program-to-rule-them-all/][GNU Emacs]] - At the heart, Emacs is text editor on top of Lisp
+ runtime. Data storage and computation can be done in [[https://www.defmacro.org/ramblings/lisp.html][Lisp]]. Emacs
+ provides text buffers that can be used to build GUI.
-Possible solutions:
-+ MapReduce algorithm.
-+ LLVM.
-+ Julia programming language.
-+ ...
-** Networking
-P2P secure, fast and reliable networking is required.
++ [[https://www.eclipse.org/ide/][Eclipse IDE]] - In essence [[https://en.wikipedia.org/wiki/OSGi][OSGi]] platform with a text
+ editor. Computation done in java. Eclipse provides integration,
+ runtime and GUI platform.
-Possible solutions:
++ [[https://en.wikipedia.org/wiki/IBM_Notes][IBM Notes/Domino]] - Custom database engine, software development
+ platform, GUI editor, computation can be done in Java and
+ LotusScript.
-+ I2P: https://geti2p.net/en/
-+ GNUnet: https://gnunet.org/
-+ FreeNet
-+ ...
++ [[https://en.wikipedia.org/wiki/ABAP][SAP ABAP]] - Custom database engine, runtime, GUI platform,
+ development environment and programming language.
+* Current status
++ Formulated high-level [[id:1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f][vision / goal]].
+
++ In the process of implementing some of [[id:52dbbf4c-2ef4-42a6-8331-ad006b6a52ae][building blocks]].
+
++ System is nowhere near complete (given magnitude of effort required
+ and my free time available). Contributions welcome ! :)
+* Architecture / components
+ :PROPERTIES:
+ :ID: 52dbbf4c-2ef4-42a6-8331-ad006b6a52ae
+ :END:
++ [[https://www3.svjatoslav.eu/projects/sixth/][Sixth]] - Parent project.
+ + [[https://www3.svjatoslav.eu/projects/sixth-data/][Sixth Data]] - Data storage and computation engine.
+ + [[https://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D]] - 3D engine - for user interface and data visualization.
+ + [[https://www3.svjatoslav.eu/projects/sixth-3d-demos/][Sixth 3D engine demos]] - Demonstration of Sixth 3D engine capabilities.
+* Computation ideas
++ Program - stored instructions for execution by computer.
+
++ Process - Currently running program.
+ + Process is self contained. Has a full copy of program code and
+ every dependent library.
+
+ + Memory used by processes is content addressed/deduplicated at
+ low level in the system.
+
+ + This allows:
+ + Upgrading software installed in the system without breaking
+ already running processes.
+
+ + Easier migration of running processes between physical
+ computers.
+
+ + Possibility to suspend/resume arbitrary processes to permament
+ storage.
+
+ + Possibility checkpoint/revert running process.
+
+ + Possibility to clone/branch running process.
+
+* Frequently Given Answers
+- Why such name ?
+ - In short: it's just a number.
+ - Many years ago inspired by the ideas of [[https://en.wikipedia.org/wiki/Forth_(programming_language)][Forth (programming
+ language)]] I decided to create my own implementation [[https://www3.svjatoslav.eu/projects/fifth/][Fifth]]
+ (computing/programming environment).
+ - Then I realized I miss type safe object oriented capabilities. So
+ I updated the name to Sixth and switched to Java.