Build Your Own Little Memex with Babashka



  1. applied curiosity
    1. introspect, friendly ambitious nerd, visa
  2. grace, charity, joy
  3. people want to help you on your journey!

If I don’t send in a proposal, nothing will happen! I should share my journey, and what my talk will be about.

Call for papers/talks/workshops:

proposal notes 2

Literature review.

Time for doing.

Key ideas.

  1. Moldable message, moldable medium, moldbable tools. Live creation.

Talk outline. Note: I expect that I’ll need to cut scope to stick to 20 minutes, but I think I’ll keep the rough 3 part outline.

  1. Part one: Tools for thinking and the web for sharing.
  2. Part two: My learning practice
    1. Share how I approach learning a new topic
      1. Exploring my curiosity
      2. Making that curiosity explicit, and making it stick.
      3. Sticky application: journaling.
      4. Sticky application: contributing to open source (optionally what I’ve learned from contributing to Neil)
  3. Part three: Build Your Own Little Memex with Babashka
    1. Show how Clojure programmers can currently leverage Babashka and Pandoc for building and sharing their knowledge.
    2. Motivate why
    3. Invite collaborators for writing clojure+babashka libraries for making this happen.
    4. Towards a shared Clojure memex composed of tiny personal islands

Intended talk outcomes.

  1. Audience considers, perhaps wants to use Babashka to learn & share on the internet
  2. Audience sees how to make this happen using tools that already exists
  3. Audience members may consider contributing to an effort / to libraries that make it easier for Clojure programmers to build their own little memex with babashka on the Internet

talk proposal to babashka conf

In May 2022, I decided that I wanted to build my own playful place on the internet. was born. I wanted to trust my own choices completely, and make every decision according to my own sense of aesthetics. My previous web site had collapsed under its own weight, and could no longer build, becase of breaking changes in some packages that I used.

I had previously gotten interested in the personal knowledge management movement, primarily Roam Research. I wanted the best parts of Roam with publishing to the web. But I wanted total control. For a time, I explored exporting from Roam to HTML. But I quickly realized that while I loved using Roam’s outlining, it didn’t give me the control I wanted for the web.

A year ago, this effort felt like madness. Today, I feel like it’s one of the better decisions I’ve made in my life. Counted today, I’ve got 12900 lines of org-mode content:

$ cd ~/dev/teodorlu/
$ find . -iname '*.org' | xargs cat | wc -l

In comparison, my last site got less content:

$ cd ../
$ find . -iname '*.org' | xargs cat | wc -l

I sometimes quote stuff from others, and sometimes copy things around. But I’d guess about 80 % of it is words I’ve written. So something has worked out.

I want to:

  1. Share my motivation for writing on the web
  2. Share what “clicked” for me, and explore why I’ve written about 8 times as much content as I ever wrote on my old site.
  3. Share my efforts to pull out some code that can be reused, and how that’s going.

key ideas

applied curiosity: my motivation for writing.

charity, grace and joy: sharing my work with others, and how that’s going.

Other people are curious too! But the world is filled with too much information, so why should you add any more? And how should you share your work with others? My best bet per 2023-04-22: structure your work as narrow theories. In Clojure, we have a culture for writing narrow libraries. A narrow library solves one thing well with minimal dependencies, and minimal impact on your code. I want to argue that the same goes for knowledge. A good article presents and


reference collection

copy-pasted things from other places

copied from my personal journal

From Teodor’s public-personal journal, 2023-04-22

the memex is here: it is the world wide web

  1. information deserves to be free
  2. put knowledge in bite-sized definitions (theories) + motivation about why one should care about this
  3. compose bite-sized definitions with playlists – a playlist is an ordered list of links


Q: what’s the right interface for making microtheories?

Q: what’s the right interface for making knowledge playlists?

Microtheories need to be good explanations. Examples of good explanations:

it’s worthwhile to build your own little memex

a “little memex” is your own corner of knowledge. you curate the index. you create and link your nodes. you can refer to and build on other memexes, but the act building the memex is the reward in itself.

your memex should live on the web

microtheories deserve its own URL. others should be able to leverage your little memex.

your memex is composed of microtheories and knowledge playlists

a microtheory is a bite-sided deinfition, and motivation for why it matters.

a knowledge playlist is an ordered list of microtheories.

the act of building your own little memex is to explore your curiosity and journal about your experience.

  1. what are you curious about?
    1. write that question down.
    2. Breathe!
  2. find an answer
    1. write that answer down.
    2. Breathe!
  3. and an action
    1. write that action down.
    2. Breathe!
  4. Listen to yourself.
    1. Breathe.
    2. Do you want to do the action?
    3. if yes, consider doing it.


build your own little memex with babashka