Added computation ideas
[sixth.git] / doc / index.org
index e166a98..c537d4d 100644 (file)
@@ -12,7 +12,7 @@
   - Homepage: http://svjatoslav.eu
   - Email: mailto://svjatoslav@svjatoslav.eu
 
-- [[http://svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]]
+- [[http://www.svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]]
 
 * (document settings) :noexport:
 ** use dark style for TWBS-HTML exporter
 #+HTML_HEAD:   pre {background-color: #111; color: #ccc;}
 #+HTML_HEAD: </style>
 
-* Current status
-There is nothing useful for regular people yet.
-
-Sixth is presently in research / prototyping and ideas collecting phase. Some
-working parts are already implemented:
-
-
-+ Sub projects:
-  - [[http://www2.svjatoslav.eu/gitbrowse/sixth-data/doc/index.html][First layer of storage: Simple persistent key-value map.]]
-
-  - [[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]]
+* Vision - A tool to amplify human ability
+  :PROPERTIES:
+  :ID:       1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f
+  :END:
+#+BEGIN_VERSE
+Makes lots of complex data intuitive to:
+  - explore, understand
+  - manipulate and compute on
 
-* Vision
-- A tool to amplify human ability.
+by extensively relying on:
+  - [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d/doc/index.html][realtime 3D graphics]] with immediate feedback loop
+  - [[http://www2.svjatoslav.eu/gitbrowse/sixth-data/doc/index.html][flexible and distributed computation and data storage]]
+#+END_VERSE
 
-- 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.
 
 #+BEGIN_QUOTE
 “Virtual reality holds the key to the evolution of the human mind”
 Dr. Lawrence Angelo, The Lawnmower Man (1992)
 #+END_QUOTE
 
-* 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.
+* Current status
++ Formulated high-level [[id:1f4e1c17-d25f-4d92-aa9b-5785f1d86f4f][vision / goal]].
+
++ In the process of implementing some of building blocks:
+  - [[http://www2.svjatoslav.eu/gitbrowse/sixth-data/doc/index.html][Data storage engine.]]
+
+  - [[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]]
+
++ System is nowhere near complete (given magnitude of effort required
+  and my free time available). Contributions welcome ! :)
 
-- Become an alternative to KDE, Gnome, Canonical Unity or similar desktop user
-  interfaces.
+* Computation ideas
++ Program - stored instructions for execution by computer.
 
-- Become an open source scientific computing engine of structured data as an
-  alternative to proprietary Wolfram Alpha.
++ Process - Currently running program.
+  + Process is self contained. Has a full copy of program code and
+    every dependent library.
 
-- Become an open source solution for unstructured knowledge extraction and
-  processing, similar to IBM Watson.
+    + Memory used by processes is content addressed/deduplicated at
+      low level in the system.
 
-- P2P (Peer to peer) distributed computation system.
+    + This allows:
+      + Upgrading software installed in the system without breaking
+        already running processes.
 
-* Technical capabilities to have
-Perfect computing system must have advanced data visualization,
-storage, transmission and computation capabilities.
+      + Easier migration of running processes between physical
+        computers.
 
-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.
+      + Possibility to suspend/resume arbitrary processes to permament
+        storage.
 
-Possible solutions:
-+ MapReduce algorithm.
-+ LLVM.
-+ Julia programming language.
-+ ...
-** Networking
-P2P secure, fast and reliable networking is required.
+      + Possibility checkpoint/revert running process.
 
-Possible solutions:
+      + Possibility to clone/branch running process.
 
-+ I2P: https://geti2p.net/en/
-+ GNUnet: https://gnunet.org/
-+ FreeNet
-+ ...
+* 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 [[http://www2.svjatoslav.eu/gitbrowse/fifth/doc/index.html][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.