Kungsgeten / org-brain

Org-mode wiki + concept-mapping
MIT License
1.72k stars 102 forks source link

Fine level/detailed network on sentence or paragraph level? (triple prefix technique) #303

Open michaelsjackson opened 4 years ago

michaelsjackson commented 4 years ago

Not sure how useful it would be, but I have a feeling should be somehow cool as well, here the idea.

Creating a second level, deeper level or fine level networking/concept mapping directly inside a single .org file, within the text! Not between org-files (so not the first lines tags, as is currently in the org-files), not between headers (right now using the ids), but between any free sentences or paragraphs.

Something like what is used in twitter I guess, but a bit more advanced, it gets the brain style.

tag would be friend tags, can be written anywhere within the sentence, or after the sentence or after the paragraph. You could show ok directly this sentence or paragraph should be connected somewhere else, well to all other places which will contain #tag as well, could be found out later with grepping for #tag , if wanted, at some point in future.

Then the other two variants, going into parent and child directions.

§tag would go into parent direction from the concept (entry) tag.

@tag would go into child direction from the concept (entry) tag.

tag would go into friend direction from the concept (entry) tag.

To sum up: Later using 3 greps on each text/org file, we could collect those extra "fine level network connections", and visualize those as well, somehow using a different color maybe, so we see the difference, plus obvz could use a similar technique some other line type or border colors maybe.

The advantage would be clear, add your network connections easily by adding quickly those prefixes ( # or § or @ ) but not disturbing normal brain, as nothing would change, but one day, if you would want to see those relationships as well, you could do so, with the help of a few more grepping functions collecting the information for you.

Imagine after some source code block you could use something like: #rust_concept_example or more generally #programminglanguage_concept_example, another example with java: #java_constructor_example

Later if you would want to collect all java constructor examples, you could grep for #java_constructor_example

How would you do it now? Above you could even add into source code: //#java_constructor_example

The main idea is, you modify the original information minimally, just a tiny specific tag in sentence, or after sentence/paragraph, meaning minimal distraction to you while doing something else maybe, and collect them at later time in future, when you say, hey I had a few cool examples here and there.

Does this all make any sense? Useful, maybe or less so? Comments, below. Just wanted to share those thoughts, before they are forgotten again. Thanks in advance.

Let me give it a name, maybe: triple prefix technique

benjaminwd commented 4 years ago

Tangential to this, I've found myself wanting to make rows in org tables directly linkable in brain as parent's children, etc.

Kungsgeten commented 4 years ago

It sounds like it could be useful, even though I don't quite understand how I would use it :) I think Roam Research does something like this by default, "bullet list items" are the elements which things link to. I don't quite understand how the suggestion would work though. Say that I have an entry like this:

* Headline

This is the first paragraph about #birds.

This second paragraph shows where the §money comes from.

The third one has @information about a lot of stuff.

My understanding of the idea is that birds, money and information would mean nothing to the Headline entry? They are simply part of the entry text? birds, money and information are a special kind of entry which can not have text or resources (since they have no permanent location, but maybe this could be fixed in some kind of special way). The first paragraph would be a friend of birds, the second would be a parent of money and the third would be a child of information?

How would these relationships look if you visualize birds for instance? The paragraph have no title. Or would it simply show a relationship back to Headline, since that is the entry where #birds was written?

michaelsjackson commented 4 years ago

Yes, as the smallest adressable chunk is 'Headline' in above example, we can link only to it.

I am not sure myself, but somehow, using those triple prefixes to establish immediate connections to those terms or entries.

headline -- is friend of -- birds headline -- is parent of -- money headline -- is child of -- information

But ok, this is not simplifying things, maybe we should forget all these ideas again. This does not fit to KISS principle.

You can close it again. For historic reasons it can stay here, in case we find a better use case in future for this kind of stuff. What I could imagine in future, " a paragraph splitting feature", creating from a single text multiple sub entries, but backlinking them into the original, thus replacing the original with its linked forms, then usings those smaller chunks to link directly to birds, money and information. But again, not sure how and where this would be useful.