Map

Colour scheme--Caddy Colour scheme--System configuration Caddy--Decentralisation Caddy--Daily open-source software guide System configuration--Caddy System configuration--About Sounds & Melodies--Making music on Linux Sounds & Melodies--Music Transcribing Making music on Linux--Custom synth Making music on Linux--Custom sequencer Music Transcribing--Making music on Linux Music Transcribing--Luthier Listening--Travel Listening--2022's Devlog Travel--The Ławka Initiative Travel--Excellent Words 2022's Devlog--2023's Devlog 2022's Devlog--2024's Devlog Reading--Cosmic Horror Reading--How to think Cosmic Horror--2023's Devlog Cosmic Horror--Paintings How to think--Cosmic Horror How to think--The Waiting room The Ławka Initiative--The word *Bączek* The Ławka Initiative--Excellent Words The word *Bączek*--Travel The word *Bączek*--Reading Excellent Words--Cosmic Horror Excellent Words--The word *Bączek* Registry-based search engine--Bookmarks Registry-based search engine--Map Bookmarks--Decentralisation Bookmarks--Website experience Map--How to think Map--Bookmarks The Waiting room--Reading The Waiting room--Cosmic Horror 2023's Devlog--Movies/shows 2023's Devlog--About 2024's Devlog--Listening 2024's Devlog--About Movies/shows--Reading Movies/shows--Cosmic Horror About--Colour scheme About--2022's Devlog Paintings--The word *Bączek* Paintings--Excellent Words Decentralisation--Colour scheme Decentralisation--Software alternatives Daily open-source software guide--Decentralisation Daily open-source software guide--Software alternatives Custom synth--Custom sequencer Custom synth--Luthier Custom sequencer--Luthier Custom sequencer--GPU Synth Luthier--Resources on audio & DSP Luthier--GPU Synth Exocortex--How to think Exocortex--Map Contact--Colour scheme Contact--Caddy Website experience--Registry-based search engine Website experience--Map Piano--Sounds & Melodies Piano--Music Transcribing NixOs--System configuration NixOs--About Resources on audio & DSP--Custom synth Resources on audio & DSP--Rust GPU Synth--Custom synth GPU Synth--Resources on audio & DSP Content creation workflow--Decentralisation Content creation workflow--Daily open-source software guide Software alternatives--Colour scheme Software alternatives--System configuration Rust--Music Transcribing Rust--Luthier Colour scheme Colour scheme Caddy Caddy System configuration System configuration Sounds & Melodies Sounds & Melodies Making music on Linux Making music on Linux Music Transcribing Music Transcribing Listening Listening Travel Travel 2022's Devlog 2022's Devlog Reading Reading Cosmic Horror Cosmic Horror How to think How to think ! The Ławka Initiative The Ławka Initiative The word *Bączek* The word *Bączek* Excellent Words Excellent Words Registry-based search engine Registry-based search engine Bookmarks Bookmarks Map Map The Waiting room The Waiting room ! 2023's Devlog 2023's Devlog 2024's Devlog 2024's Devlog ! Movies/shows Movies/shows About About Paintings Paintings Decentralisation Decentralisation Daily open-source software guide Daily open- source software guide Custom synth Custom synth Custom sequencer Custom sequencer Luthier Luthier Exocortex Exocortex Contact Contact Website experience Website experience Piano Piano NixOs NixOs Resources on audio & DSP Resources on audio & DSP GPU Synth GPU Synth Content creation workflow Content creation workflow Software alternatives Software alternatives Rust Rust
*Note*: you can click on each page, all nodes are links!

This is an automatically generated graph containing all pages on my websites, along with the connections calculated using sentence embeddings. If you're interested, you can read the source code.

How is this thing generated?

  1. All of the posts are fed through an embeddings generator, I'm using the Sentence Transformers Python library.
  2. The embeddings are passed to UMAP, a dimensionality reduction algorithm, which takes in multi-dimensional embeddings and projects it down to a 2D representation, which can be drawn as a graph. The projection is done so that the high-level "structure" of the data is preserved.
  3. I'm connecting each post with its top 2 nearest posts (using more clutters up the map).
  4. graphviz renders the graph and outputs it as an SVG file.

A much better description on Simon Willison's blog.

Future plans

  1. Make this thing look more "map-alike", whatever that might mean.
  2. Experiment with text clusterisation & dimensionality reduction algorithms, such as:
    • tSNE
    • K-means clustering
    • UMAP
    • Latent Dirichlet allocation
    • DBSCAN
  3. Add #tags.
  4. Introduce color-coding and other visual markers, allowing viewers to make sense of the data based on different metrics:
    • Post tags
    • Links to/from other posts
    • Links outside (to the netsphere)
    • Other connections generated by NLP
  5. Check out KagiSearch/vectordb