#### [[Codex]]
---
The [[Codex]] is an application intended to be a mental operating system for the [[Knowledge Worker]].
There are a variety of features possible in the editor that allow for a completely unique take on annotations, visualization, linking, and fundamental units of work.
In the back end there is a [[Neo4j]] graph database. This allows for non traditional methods of association between entities beyond tabular [[Relational Databases]] one might access with [[T-SQL]].
<center>
<iframe width="560" height="315" src="https://www.youtube.com/embed/-G8YmRJ__Q0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</center>
[presentation of some of the basic features](https://neo4j.com/blog/building-graph-history-codex/?ref=social-blog)
Some of the unique features of this editor that will revolutionize [[Knowledge Work]] are:
- Changes are character index independent
- Instead of [[xml]] markup to describe for formatting of text such as **bold** or *italic* but if you needed several items overlayed?
- ![[Pasted image 20210201230610.png]]
- ![[Pasted image 20210201230616.png]]
- What if you wanted to associate something BETWEEN the text characters?
- ![[Pasted image 20210201230541.png]]
- Standoff properties stored separate from the content which is no longer marked up with [[xml]], [[markdown]], or any form of formatting, it is pure human readable plain text
- ![[Pasted image 20210201231133.png]]
- This allows for collaborative live editing without the need for version control like [[git]] or [[DevLog/Notes/Processed/GitHub]] since we're using standoff properties and a [[Neo4j]] database.
- ![[#^29eace]]
- With the way that the standoff properties and annotations of text are set up we are able to link entities to the text dynamically and reference in text "Davinci too his brothers"
- in this instance we link `Davinci` to `His` because he's the subject so we can dynamically link the `Davinci` entity to other pieces of text (`His`) and actually query for when that entity `Davinci` come up in a text even if it's referenced as `His`.
- This means that you can query by those entities not just a simple pattern match with [[Regular Expressions]] or fuzzy searching like with tools such as [[fzf]].
- Another facet of [[Codex]] is a heavy emphasis on a more graphical approach to [[Knowledge Work]].
- Where text files, videos, images, and what every you want to have is just a window in the workspace and a node in the graph
- With these windows/nodes you can drag them around the screen, order them, organize them
- and have taxonomy around how you organize these visual elements spatially in the workspace.
- [[Codex]] is treating the windows like a primitive datatype akin to a 32bit Integer in [[C++]]
- If windows are a primitive data type, then the workspace is a data structure
- This opens possibilities of what we can do with these items as a data structure is a fundamental part of a program/application
- With standoff properties, entity relations, Windows as a primitive data type, and workspace as a data structure
- We can take it further by taking *snapshots* of a workspace
- Say you have 3 windows open
- 3 entities, [[Odin|Óðinn]], [[Thor|ᚦor]], and [[Freyr]]
- You want to have them on a single workspace snapshot
- You open a new workspace snapshot and start doing a lot of research on [[Freyr]]
- you want to see everything related to [[Freyr]] but within a particular context
- with the 2 workspaces you now have you can actually run queries based on the entities, the window primitive data type, and the visual elements **PROXIMITY**
- This might look like this narrative form of a query:
- `Show me all information related to freyr on this other workspace that is within 300px of Odin`
- and then taking the output of that query and *piping* it to another workspace/snapshot like [[Unix]] [[CLI Tools]]
- this is something i've never heard of before.
- Taking into account and utilizing "physical" proximity of data/windows/nodes/elements into your query
- This has massive applications for those with need for more [[Visual Learning]] methods^[[[GUI v.s. terminal apps humans are visual creatures]]] like those with [[Attention deficit hyperactivity disorder]]
- The graph based operating system (*Model first, markup after*) instead of hierarchical folders is the [[Map Of Content|MOC]] of *"operating systems"*
---
Tags:
[[Knowledge Economy]] - [[Knowledge Formation]] - [[Personal Knowledge Management]]
Reference:
Related:
- [[Roam Research]]
- [[Z/Obsidian]]
---
> On the left, we have a Text node, which for the most part just contains the raw text. Then, we have a Standoff property node, which contains, as I mentioned, a start index, an end index and a type. It has a few other properties, such as attributes and so on, which are essentially optional properties.
> <br>
> We can see a relationship between the text and the standoff property, a simple one of ownership. The text has a standoff property, and we can also see that the standoff property can refer to something else.
> <br>
> In my system, I have a node called an agent, which is the term I use to indicate any kind of entity – a person, place, concept, whatever you like. On the right of the graph, we can see that Standoff can optionally refer to an agent. Once we get into the agent, we’re getting into the graph metamodel.
^29eace