Compare commits

...

9 Commits

Author SHA1 Message Date
vilmibm 626b0c3219 bugfixes 2024-05-19 22:16:07 +00:00
vilmibm 53ba526ca2 add draft 2024-05-19 22:08:35 +00:00
vilmibm 36816074e3 implement RSS, some cleanup 2024-05-19 22:08:16 +00:00
vilmibm 8ed4d2bc15 add drafts area 2023-08-31 20:51:22 +00:00
vilmibm 7f79835d6d minor 2023-08-31 20:51:11 +00:00
vilmibm 6c30371874 add some links 2023-08-31 19:46:51 +00:00
vilmibm 0fa68c18ce add blackout post 2023-08-31 19:43:54 +00:00
vilmibm d375c045d1 new post 2023-08-31 19:43:47 +00:00
vilmibm 3412874f84 wiki link 2023-04-13 19:30:34 +00:00
13 changed files with 150 additions and 19 deletions

View File

@ -0,0 +1,8 @@
pubdate:
title: On Leaving GitHub
slug: leaving-github
summary: being reflections on my departure from GitHub
I worked for GitHub from 2018 until August 2023. It was my longest tenure at any company and, for a time, the most satisfying job I've ever had.
When I started at GitHub the idea of it being acquired was alien to me. I knew GitHub as a proudly independent company that made a lot of its own money by virtue of being useful. It put enterprise needs low on the priority list and focused on the day to day experience of people using GitHub for open source work. Internal chaos

12
feed.tmpl.xml 100644
View File

@ -0,0 +1,12 @@
<?xml version="1.0"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>the web log of vilmibm</title>
<link>https://tilde.town/~vilmibm/blog</link>
<description>the personal blog of tilde.town admin, poet, programmer vilmibm</description>
<language>en-us</language>
<webMaster>vilmibm@pm.me (vilmibm)</webMaster>
<managingEditor>vilmibm@pm.me (vilmibm)</managingEditor>
<generator>https://git.tilde.town/vilmibm/blog</generator>
<atom:link href="https://tilde.town/~vilmibm/blog/feed.xml" rel="self" type="application/rss+xml" />

View File

@ -3,6 +3,7 @@
<head>
<title>the web log of vilmibm</title>
<meta charset="UTF-8">
<link rel="alternate" type="application/rss+xml" href="feed.xml" title="the web log of vilmibm">
<style>
body {
background-color: #070e0f;

70
make.sh
View File

@ -1,7 +1,6 @@
#!/bin/bash
set -e
mkdir -p "${HOME}/public_gopher/blog" > /dev/null
mkdir -p "${HOME}/public_gemini/blog" > /dev/null
mkdir -p "${HOME}/public_html/blog" > /dev/null
@ -10,7 +9,6 @@ srcDir=$HOME/blog
postDir=$srcDir/posts
htmlIndexTmpl=$srcDir/index.tmpl.html
htmlDir=$HOME/public_html/blog
htmlIndex=$HOME/public_html/blog/index.html
gopherPath=$HOME/public_gopher/blog
@ -19,6 +17,9 @@ gopherIndex="${gopherPath}/gophermap"
geminiPath=$HOME/public_gemini/blog
geminiIndex="${geminiPath}/index.gmi"
rssIndexTmpl=$srcDir/feed.tmpl.xml
rssIndex=$HOME/public_html/blog/feed.xml
# attempt compilation
if [ ! -e "linkpost" ]
then
@ -33,7 +34,14 @@ then
cp $htmlIndex "${htmlIndex}.bak"
fi
# backup RSS feed
if [ -e "${rssIndex}" ]
then
cp $rssIndex "${rssIndex}.bak"
fi
cp $htmlIndexTmpl $htmlIndex
cp $rssIndexTmpl $rssIndex
# Remove old gopher and gemini posts
rm -f ${gopherPath}/*
@ -47,43 +55,67 @@ echo >> $gopherIndex
echo "the gemblog of vilmibm as it were" > $geminiIndex
echo >> $geminiIndex
# Initialize rss
rfc822pubDate="$(date +'%a, %d %b %Y %H:%M:%S %Z')"
printf " <pubDate>%s</pubDate>\n" "${rfc822pubDate}" >> $rssIndex
printf " <lastBuildDate>%s</lastBuildDate>\n" "${rfc822pubDate}" >> $rssIndex
cd $postDir > /dev/null
metadataKeys="pubdate:|title:|slug:|summary:"
for p in $(ls *.md | sort -r)
do
pubdate=$(grep "pubdate:" $p | sed 's/pubdate: //')
title=$(grep "title:" $p | sed 's/title: //')
slug=$(grep "slug:" $p | sed 's/slug: //' | tr -d \[:blank:\])
if [ -z "$pubdate" ] || [ -z "$title" ] || [ -z "$slug" ]
summary=$(grep "summary:" $p | sed 's/summary: //')
httpLink="https://tilde.town/~vilmibm/blog#${slug}"
if [ -z "$pubdate" ] || [ -z "$title" ] || [ -z "$slug" ] || [ -z "$summary" ]
then
echo "warning: missing at least one of: pubdate, slug, title in ${p}"
echo "warning: missing at least one of: pubdate, slug, title, summary in ${p}"
else
# HTML
echo "<div class=\"title\">" >> $htmlIndex
echo "<h2>${title}<a name=\"${slug}\"></a></h2>" >> $htmlIndex
echo "<a class=\"pubdate\" href=\"https://tilde.town/~vilmibm/blog#${slug}\">${pubdate}</a>" >> $htmlIndex
echo "</div>" >> $htmlIndex
echo "<div class=\"post\">" >> $htmlIndex
grep -v "pubdate:" $p | grep -v "title:" | grep -v "slug:" | $lp --mode "html" | pandoc -fmarkdown -thtml >> $htmlIndex
echo "</div>" >> $htmlIndex
echo "<div class=\"title\">" >> $htmlIndex
echo " <h2>${title}<a name=\"${slug}\"></a></h2>" >> $htmlIndex
echo " <a class=\"pubdate\" href=\"${httpLink}\">${pubdate}</a>" >> $htmlIndex
echo "</div>" >> $htmlIndex
echo "<div class=\"post\">" >> $htmlIndex
grep -Ev "$metadataKeys" $p | $lp --mode "html" | pandoc -fmarkdown -thtml >> $htmlIndex
echo "</div>" >> $htmlIndex
# Gopher
echo "0${title} ${slug}.txt" >> $gopherIndex
gopherPostPath="${gopherPath}/${slug}.txt"
echo "# ${title}" > $gopherPostPath
echo >> $gopherPostPath
echo "_published ${pubdate}_" >> $gopherPostPath
grep -v "pubdate:" $p | grep -v "title:" | grep -v "slug:" | $lp --mode "gopher" >> $gopherPostPath
echo "# ${title}" > $gopherPostPath
echo >> $gopherPostPath
echo "_published ${pubdate}_" >> $gopherPostPath
grep -Ev "$metadataKeys" $p | $lp --mode "gopher" >> $gopherPostPath
# Gemini
echo "=> gemini://tilde.town/~vilmibm/blog/${slug}.gmi ${title}" >> $geminiIndex
geminiPostPath="${geminiPath}/${slug}.gmi"
echo "# ${title}" > $geminiPostPath
echo >> $geminiPostPath
echo "_published ${pubdate}_" >> $geminiPostPath
grep -v "pubdate:" $p | grep -v "title:" | grep -v "slug:" | $lp --mode "gemini" >> $geminiPostPath
echo "# ${title}" > $geminiPostPath
echo >> $geminiPostPath
echo "_published ${pubdate}_" >> $geminiPostPath
grep -Ev "$metadataKeys" $p | $lp --mode "gemini" >> $geminiPostPath
# RSS
rfc822=$(date -d"$pubdate" +'%a, %d %b %Y %H:%M:%S %Z')
echo " <item>" >> $rssIndex
echo " <title>${title}</title>" >> $rssIndex
echo " <link>${httpLink}</link>" >> $rssIndex
echo " <guid>${httpLink}</guid>" >> $rssIndex
echo " <pubDate>${rfc822}</pubDate>" >> $rssIndex
echo " <description>${summary}</description>" >> $rssIndex
echo " </item>" >> $rssIndex
fi
done
# Finalize HTML
echo "</body></html>" >> $htmlIndex
# Finalize RSS
echo " </channel>" >> $rssIndex
echo "</rss>" >> $rssIndex

View File

@ -1,6 +1,7 @@
pubdate: Sat May 21 13:25:37 UTC 2022
title: new blog
slug: newblog
summary: being a post about this new blog; motivations, plans, et cetera
I made a blog. I haven't had one in years. When I did it was mostly for dream logging and poetry. I was always pretty self conscious about what I put there. I published my town `feels` posts as a "blog" for a while, but that never felt right. My `feels` content was overly personal, diaristic, and vulnerable. I used to think you could either be authentic (vulnerable to a fault) or inauthentic (crafting a personal brand), but now think often of a phrase I heard an actor use in an interview about learning to be "private in public." I interpreted that as being forthcoming with yourself in the public eye -- which we're all in, now, thanks to the internet -- but being defensive about what you share.

View File

@ -1,5 +1,6 @@
pubdate: Fri Jun 10 21:04:50 UTC 2022
title: dark steps
slug: darksteps
summary: being a nonsense jumble
taking dark steps and eating half the breadcrumbs is how i live. i no longer try to find the exit, just remember the rooms. meal time with the minotaur. the maze has it all: a trade in lunacy, nickelodeons, international coinage, soliloquies, eulogies, biscuits. when the imagery gets vivid i don't depart in death--it's just imperative to keep moving. it's imperative to keep moving and not get stuck in the windowless room that sometimes forgets its own door. there is an infinity of better rooms than that. there's the screaming room where ears can't be covered eyes can't be closed and in every direction the worst thing you ever beheld. there is the room of soft walls always yielding but never suffocating full of dry warmth and lavender. the library smelling of book mold and dark woods. the study with green glass lamps and green felt desk beds and pens and pens. the dark room where there is nothing. most critically, the foyer with the umbrella bucket and the coat pegs and the wash stand with the white marble. there's a chair in the foyer and i'll sit here when i don't know which door to open. the chair is made of wood and has a creak to it.

View File

@ -1,6 +1,7 @@
pubdate: Thu Sep 8 18:06:00 UTC 2022
title: berkeoffe
slug: berkeoffe
summary: being ruminations on coffee establishments after relocating to the bay area
i have moved to berkeley. of chief importance is finding the coffee. the following is the result of initial recon bike rides.

View File

@ -1,6 +1,7 @@
pubdate: Thu Sep 8 18:23:31 UTC 2022
title: the wall drug cinematic universe
slug: wall-drug-cinematic-universe
summary: being reflections on a hypothetical cinematic universe for wall drug
driving from chicago to berkeley we chose to go through south dakota because to my friend and me it was a mysterious, unvisited place. the wall drug signs begin soon after crossing the border on 80. i was unfamiliar, but my friend filled me in: a place that exists self-referentially. it doesn't offer services beyond that of any typical rest stop, and the draw to go there is the chance to experience what amounts to a meme (in the classical sense). in other words, a tourist trap.

View File

@ -1,6 +1,7 @@
pubdate: Sat Jan 7 02:34:49 UTC 2023
title: announcing Hermeticum (formerly tildemush)
slug: announcing-hermeticum
summary: being an announcment of a MUSH project
## tl;dr

View File

@ -1,6 +1,7 @@
pubdate: Thu Mar 31 04:37:31 UTC 2023
title: book marks
slug: bookmarks
summary: being a motley round-up of some bookmarks i found; some thoughts on computers i have owned.
I got a new computer. It's a thinkpad (x1 carbon gen10) and came with Ubuntu preinstalled. I often say this about new computers, but I really like it. I tend to get to a point when I'm mad at the new computer and then all feels lost until the next one. This one feels different; it feels like home. This is a blog post about bookmarks but first: a tour through computing disappointments from the thinkpad I had in 2010 to today:

View File

@ -1,6 +1,7 @@
pubdate: Thu Apr 13 05:06:39 UTC 2023
title: smudge
slug: smudge
summary: being an announcement of a new piece of artware.
I made a new piece of (LINK https://github.com/vilmibm/smudge software) . It's a command line piece of art.
@ -8,6 +9,8 @@ I made a new piece of (LINK https://github.com/vilmibm/smudge software) . It's a
The software accepts any number of filenames as arguments. each file is then interleaved, character by character, into a grid. the grid of characters is then ignited and the fire spreads downward. characters eventually become smoke particles that float upward and wisp away into nothing.
You can read about the practice that inspired this project on (LINK https://en.wikipedia.org/wiki/Smudging on wikipedia) .
I made this program because I wanted something I could run ritualistically. Initially, it was to run on a computer as a way to make it feel like a home. I've been using it, however, as a meditation aid. Before commiting to a potentially stressful task, I get a related text file and then watch it burn away. It's comforting and gives me some space and time to breathe.
Ritual is important. It can help nudge the brain into certain states. It can provide structure to a day or event which in turn can help focus a mind in turmoil. It provides an intentional space for reflection. I don't get much out of rituals involving physical objects, however. I think living in America my whole life has made me consider many physical goods as a form of (LINK https://www.urbandictionary.com/define.php?term=kipple kipple) . This was less true growing up when I lived in a forest since I could wander out and find a weird stick or rock or curious leaf covered in gall; but since then, even if I go out and obtain something from the natural world to use ritualistically, I am distracted by how shallow and capitalist it feels. It's also frowned on to be seen burning things in an urban environment.

View File

@ -0,0 +1,29 @@
pubdate: Fri Jul 14 04:52:12 UTC 2023
title: blackout.tilde.town
slug: blackout
summary: being an announcement of a new site for blackout poetry.
I made a new thing: a website for making blackout poetry with over nine million chunks of text extracted from Project Gutenberg. It's here at (LINK https://blackout.tilde.town blackout.tilde.town) .
(IMG https://tilde.town/~vilmibm/blackout.png a screenshot of a blackout poem that reads: the picturesque decay remains an idea of the beautiful)
Ever since (LINK https://tilde.town/~kc ~kc) posted (LINK https://tilde.town/~kc/blackout this page) I've been inspired by blackout poetry. I wanted an interface not only for doing it, but for giving me novel text to work with as well.
I used Project Gutenberg's (LINK https://gutenberg.org/policy/robot_access.html robot access instructions) to get about 12 gigabytes of compressed plaintext English language books. It translated to about 35,000 books once duplicate encodings were ignored.
(LINK https://git.tilde.town/vilmibm/gutchunk This code) , gutchunk, uncompressed the books and combed through them for what i'm calling "chunks." I was looking for meaty sections of text that would make for good blackout poetry fodder. My approach is fairly naive. I store text in a buffer until I see two newlines, then check if I have enough in the buffer; if I do, I cut a chunk. If I don't, I discard it.
To my extreme pleasure I ended up with over nine million chunks. This is all sitting in a sqlite3 database on the town and if you're reading this and are also a townie, let me know if you want access to it.
When I was working on (LINK https://github.com/vilmibm/prosaic prosaic) over the years I got a lot of junk from my sloppy parsing of gutenberg books. I was young and silly and not writing great code then. I was also afflicted with this perverse need to ingest ALL of the text into my cut-up corpora. I got a lot of cruft: chapter headings, tables of content, captions, and similar. So far I've pulled well over a hundred of my nine million chunks and they all look quite good. My simple heuristic avoided a lot of the noise that I get when running prosaic. Of course, I'm missing some text: short bits of dialogue, for example. This kind of thing would have haunted me in the past, but now knowing that mystery remains in these books feels good. I don't like finding (LINK https://tilde.town/~vilmibm/swamp the bottom of the swamp) .
If you're interested, the code for blackout.tilde.town is also up on [our gitea](https://git.tilde.town/vilmibm/blackout) .
There is no way to iterate over the chunks; you get a random one every single page load. Given the size of the ID space, this should mean an infinitesimally small chance for repeats. I wanted an experience like (LINK https://en.wikipedia.org/wiki/The_Library_of_Babel the library of babel) ; one of wandering and digging up scraps to scrawl upon.
I'm hosting this decidedly personal project on tilde.town because I felt like it was a nice fit for our community. It's also my house and I can do whatever, though I try not to have that mindset too often.
I may also make an SSH-hosted text-mode version. I haven't decided.
I've already been really pleased with the experience of making poems using the new site and hope you like it, too. Please let me know on (LINK https://tiny.tilde.website/@vilmibm mastodon) or wherever if you're making stuff with it.

View File

@ -0,0 +1,40 @@
pubdate: Thu Aug 31 19:38:25 UTC 2023
title: The MUD That's In My Mind
slug: mud-mind
summary: being an essay about mind palaces and mental health.
(content warning: suicide)
I dont know when I came across the (LINK https://en.wikipedia.org/wiki/Method_of_loci memory palace) technique but I thought it was interesting. I historically do not think of myself as a person with a “good memory” so I filed away this concept to try at some point. What ended up sticking with me and resurfacing was not the idea that a memory palace could help me memorize things but instead wonderment at the idea of building physical spaces in my head at all.
I first noticed myself creating such spaces in the early 2010s when I was groping at an understanding of my severe, suicidal depression. I had started obsessively journaling (in addition to therapy) in this detached and impersonal sense in order to see how my emotions fluctuated day to day. I started getting this notion of depression as a room I would wake up in with no windows and no doorsthe lack of escape representing my obsession with suicide as the only means of dealing with my life. Realizing based on my journal/therapy that sometimes I was *not* in the doorless room was key to treating my depression. In other wordsmy brainspace could feel inescapable and I could feel incapable of remembering that any other type of brainspace existed but if I held onto there being places outside of the doorless room as an article of faith I could weather the worst depressive episodes (nota bene: though I still have the occasional depressive episode, the worst of my depression is years behind me and I do not experience suicidal thoughts).
Years later I was struggling to explain what the inside of my head was like to a new therapist. I ended up visualizing what the experience of having my consciousness felt like as a physical space like I had done years prior with the doorless room.
I remember two distinct visualizations. One was of sitting in a massive room surrounded by ropes that led off into the darkness. The ropes would twitch and I could follow one towards some idea but I end up with a bunch of ropes in my hand I cant manage and would start dropping them. Once I drop enough I would be lost in the dark with no sense of self. The other visualization was of sitting in an armchair with a massive wall of TVs before me, all rapidly changing channels. I could try and focus on one but I would either be distracted by another or caught off guard by a channel change.
My therapist used somatic techniques to help me calm and focus; I ended up visualizing these, too. For example I would close my eyes and imagine the wall of TVs but also imagine whatever somatic distraction he had goinga candle, an aroma, a soundin my consciousness too. I would imagine looking from the TV wall away at the distraction. The effect was to be aware of the TV wall “behind” me but focusing on the somatic distraction. This was super helpful and led to my being able to calm myself on a more regular basis.
I dont remember when but at some point during the pandemic I was reflecting on how these room metaphors had helped so much with my therapy. I took stock of the various “rooms” that I had come up with and at this point was reminded of another interest of mine: (LINK https://en.wikipedia.org/wiki/Multi-user_dungeon MUDs). A MUD maps out a world in terms of “rooms” which have connections between them. So from some starting room (often called a foyer) you could go north to somewhere or east to somewhere and then so on. I dont know why but I decided to build a MUD in my head using my space visualization therapy techniques.
I started with a foyer. It has a tiled floor with black and white checkering, dark wood panel walls with red velvet padding, a rosewood hat rack, and a plain wooden chair.
North from there there is an entry hallway with a similar aesthetic. It has doors to the north, east, and west and a staircase up. The door east opens into a (LINK https://en.wikipedia.org/wiki/World_War_I#/media/File:Cheshire_Regiment_trench_Somme_1916.jpg WWI era trench). I go here in times of crisis and hunker into a dugout while artillery explodes and bullets fly overhead. To the west is the pillow room which is warm but not hot, fragrant but not reeking, and absolutely stuffed with pillows. I go here when Im allowing myself to relax.
Up the stairs is a long landing with doors along the wall. The first door is the room of constant suffering. In this room I cant close my eyes and everywhere I look is a gilded framed picture playing out the worst scenes I can imagine (like Salò x 100). I can hear an incessant, surrounding wall of screaming anguish and the harshest feedback. I dont really choose to go in here. I just find myself in here during panic attacks.
Next is the TV room, then the rope room. After that, a door opens into a glass dome I call the observation deck. Outside the glass dome is whatever Im seeing in “real” life. I go here when Im in a situation that is uncomfortable and “watch” it from behind the glass, putting myself on autopilot.
North from the entryway is another hallway with a door for the library which is just a library. I go here to review ideas and things Ive read. At the end of the hallway is a staircase down which goes to the basement of my parents house circa 2001. Its dark and wet down there and under foot are broken toys. I can hear sobbing.
Floating somewhere with no connecting doorways (something that can happen in a MUD if a door object is destroyed) is the doorless room.
I “go” into this palace a lot and it helps when Im experiencing panic, depression, or executive dysfunction. By focusing on “being” there and moving around I can start a cognitive feedback loop that affects my mood and state of being.
Recently I was having a very rough panic episode about my life and quitting my job. I went into the foyer and sat down unsure where to go. It occurred to me that I had never visualized the south “wall” of the foyer. Im always sitting in it peering north into the structure. I decided to imagine turning southward and opening the “front door” of the palace.
My imagination populated the “space” beyond the open door with an infinite swell of blue-white light that pulsated. I perceived it as my unconscious/subconscious/reactive self and saw it with a total sense of compassion and love; it was like a wild creature and I wanted to care for it. This experience really affected me and has stayed vibrant and powerful in the weeks since. It feels like it represents one of the most significant leaps forward for my daily mental health in years.
Ultimately I cant say whether all of this is a fluke of my own overactive imagination or if it has any applicability for others. I also dont know if this “technique” is what has helped me with mental health over the years or if its just a retroactive way of telling a story about my self-work with therapy, journaling, and meditation. Ive never met anyone else who has described this sort of thing but I feel like the memory palace approach to memorization must be psychologically very similar.
Addendum: I shared a draft of this with a friend and he pointed out that whatever it is Im doing, it has a lot in common with (LINK https://en.wikipedia.org/wiki/Mandala mandala techniques) .