Okay, good morning everyone.
My name is Arthur.
I'm an assistant professor in Lyon, France.
I'm here today to acquaint you with a little program called COSMA.
I'm going to present the design choices behind it,
touching on mostly two points.
It's going to be a short presentation.
The architecture of the program,
which may interest you if you're working on interactive publications.
And the features, which may interest you if you're a scientist
or working with scientific data,
and you have information management needs.
So that should be every scientist.
I'm presenting on behalf of the team,
and first and foremost, my developer colleague, Guillaume,
who is not here because he's on hiatus for a very happy family reason.
And also my senior researcher colleagues who have a lot of knowledge
and research colleagues who have advised us on the design of the application
since the beginning.
Okay, COSMA came as part of a research program on Paul Hôtelé.
I'm very happy to be mentioning Hôtelé here
because he was born and died in Brussels.
He was a famous Belgian figure.
He was a pioneer of knowledge organization.
He's recognized today as a precursor to information science.
He was a pacifist, an internationalist, a feminist.
He had also some flaws.
He was a utopian.
He had some sometimes a bit dated views on topics,
but he's a very interesting figure.
He's the one who popularized the word documentation, so that's that.
His main idea, Hôtelé, was to go beyond the book.
What he wanted to do was extract all facts from publications
and sort of organize them into universal encyclopedia.
The idea was that universal access to knowledge would bring peace.
That was the utopia.
He worked all his life on tools to achieve this,
including bibliography, classification schemes, index cards, and so on.
There's a museum dedicated to him in Belgium, in Mons,
so if you're in Belgium for a few days, I encourage you to go and visit it.
So in 2018-2019, we worked on a map of Hôtelé's professional network.
It was our take on an idea that had been done before,
which was to combine a graph view and also a card view,
so like a little index card with metadata,
but the note that you're currently selecting in the graph.
And one day I asked Leone, can you make that for my research notes?
Because at the time I was accumulating files that looked a bit like this,
a bunch of plain text files with notes on specific things.
These aren't actually my notes.
I just borrowed Andy Matousiak's note for this presentation.
Andy Matousiak is a researcher who's working on tools for thought,
non-linear writing, etc.
The idea is that you have files which reference each other with links, internal links,
just like in a wiki, double brackets around the title or an identifier,
if you prefer using an identifier.
And so what Guillaume made is that he designed a prototype
which became eventually COSMA, which renders these files into an HTML file.
So yet another graph application,
after all the graph applications that we've seen in the previous presentation about Giffy Lite.
So this is an HTML file which contains a graph view.
The rendering of each file in HTML and also a few navigational tools,
an index, a small search box, etc.
This could be anything.
It could be any kind of knowledge base.
It could be a glossary of terms.
It could be a network of people, of concepts, of events.
Really it doesn't matter.
It's like a commonplace book or wiki or a zettelkasten,
if you're familiar with that word.
Even a mind map to some extent.
Conceptually it's a bit like that.
What distinguishes COSMA is that we have, well, the architecture
and the fact that we designed it around scientific writing needs.
So I'm going to describe briefly the architecture point
and then I'll describe the features a little bit more.
So it's purely a visualization program.
You cannot edit data with it.
It just reads plain text files.
And most of the features are actually located in the exports.
So this is actually COSMA.
It's a command line application.
And you use it to generate these HTML files.
If you're familiar with Tiddly wiki, it's a bit like that.
So it's a single HTML file which contains everything except Tiddly wiki.
You can edit the data.
This is read only.
So it's less like a web application and more like a sort of augmented document.
You can share this file, obviously.
It's just an HTML file and people can open it in their browser.
And the idea was that I was familiar with software like Jaffee
and I always wanted to be able to share graph visualizations with colleagues
or students, but not as static images, but as interactive things.
And there are lots more options now that exist to do this.
We just did this for little markdown files.
So that's the brief point about architecture.
The features, as I mentioned, they're related to information management needs.
Everything is designed to encourage knowledge organizations.
So categorizing things, classifying, indexing, tagging, relating things to one another.
It's basically a memory aid, actually.
It's not for graph analysis.
It's more for network synthesis, so to assemble document graphs about things.
And the way it encourages knowledge organization is to provide a few features
that reward this knowledge work.
So, for example, if you assign types to your notes, colors will appear
and you will have filters to modify the display.
So you can toggle, for example, one type.
Here I've toggled the inside type, which was in orange.
And it also and mostly encourages link-based knowledge organizations.
So that's using links in the way you're describing the relations with things.
And the way it rewards that is to provide contextualized backlinks.
So that's the thing that's at the bottom right here.
These are the incoming links.
So you see here where this note has been cited, and most importantly,
how it's been cited because you have the context, the surrounding paragraph that's here.
So that's a contextualized backlinks.
Not an idea that we invented, we just borrowed it from actually web pioneers.
It's been going around for a long time.
And in recent years, there's been a wave of tools for thought text editors
in which you can create little notes, link them together, organize them,
and they pretty much all have this feature.
We just wanted a way to have it for scientific writing and also to be able to share it easily.
Now the big thing that we did is we have the same feature, but for citations.
So if you're working with bibliographic data, so you have maybe a raw JSON file,
maybe more likely you're working with a reference manager like Zotero, N-node, Mandalay, etc.
And if you're in your notes, your citing works.
So for example, here on the right, I'm quoting the two references that you can see are stored in the file on the left.
Well, Cosma will generate a bibliographic note, that's the dark gray one here.
I haven't created a text file for this note, it's been generated automatically.
And most importantly, it will show me the backlinks as well for the citations.
So I can see where I've been citing which work and how in which context.
I want to close on the idea of network synthesis very quickly in my dissertation.
What I argue is that linking the simple act of relating two things to one another in hypertext,
it's a knowledge organization process.
So that expression is actually a thing in knowledge organization literature.
It's classifying, indexing, tagging, basically any process that you do that organizes knowledge.
And linking is a way to do a lot of that.
Linking could be a way to index, to classify, to tag, to assign things to others.
And most importantly to compose with links you can express new ideas, just like Lego.
If you have a note on a concept and a note on another concept,
and you just bring the two together in a sentence, this relates to that because this,
this becomes a new idea, you express it in a new note, and that's ideation, the basic process of research.
I'm going to skip very quickly all these examples that I had added because it'd be fun if there were some time for questions.
And just to say that this process of synthesizing knowledge, this is why I titled the presentation Tool for Network Synthesis.
Obviously in the process of research the first step is analysis.
You start with an object, a phenomenon, and you start, and you try to decompose it to see the fundamental building blocks.
But the goal is to take those fundamental units and sort of mash them together again to produce new things.
And this tool is just that, it's just a tool to help with this process of knowledge synthesis,
which is to assemble and expand over time these little document graphs.
I'm saying document graphs because there's the expression knowledge graph.
Knowledge graph is usually a set of descriptions in a database,
and these are just little documents, so hence the word document graph.
Right, I'm going to hand here, and if you have any questions.
Thank you.
Do we have any questions in the room? We have four minutes.
A question about using graph-based and markdown-based, I don't think it improves the blocks or the accident.
So the question was can we use this application to visualize nodes that would have been created with applications such as Obsidian or Luxik.
A colleague actually wrote a little Obsidian to Cosma Converter because we have a data format which is close but not quite the same as Obsidian.
Obviously you have to have a YAML header, the links have to be a certain way, etc.
So there is a converter for, if you have nodes written with Obsidian, there's a converter out there to transform them into the format.
I don't know that there's such a thing for Luxik.
It's possible because it's just plain text, markdown, YAML, it's very easy to write, I think, a custom parser and convert it.
Do you have time for one more question?
Thanks for an interesting presentation.
At all I'd really like to use in combination with Obsidian.
I was wondering about the format of the nodes.
You mentioned Zetl-Caston, which has a specific format and way of linking.
There's permanent nodes, there's every node.
Could you elaborate a bit on that, on what type of nodes would work well in this, not a synthesis, a way that you would use?
Yeah, a repeating question.
What type of format would be ideal to work with Cosma since there are many formats out there at Zetl-Caston?
The type of nodes.
Oh, the type of nodes.
Atomic nodes.
I've shown Andy Matushek's notes, he writes a lot about evergreen nodes and the principles behind evergreen nodes,
things should be atomic, densely linked, and the titles of the nodes should describe one thing and maybe work almost like APIs.
It could be a sentence that describes the idea.
So that's the best sort of mental model.
It's less suited for a daily log, for instance, than for a sort of conceptual knowledge base, again, where you try to relate events, concepts, people, etc.
I hope I was clear.
Thank you so much.