Log (rss)

02.09.2024 // Homecoming + Logging

Bogotá, Colombia

Today is our first full day back in Bogotá and this is my first log entry for Comma Directory. Today, I want to reflect a bit on how I got here, both literally and metaphorically.

We had a rough trip back from Sasaima, Cundinamarca. Two buses with aggressive drivers, getting dropped off in an unfamiliar part of the city, and then a taxi driver who fell asleep at the stop light (wishing him safety and rest). These are the realities of traveling and living in Colombia, and even more so for most Colombians living day to day, struggling to survive.

For years, my family undertook this pilgrimage from Bogotá to Sasaima, and under much rougher conditions than we did. And despite of it all, visiting my great-grandparents’ farm was one of the familiy's happiest moments of the year, for as long as it lasted.

Landscape with mountains, sky and a cemetery in the foreground.
Fig 1. View of the cemetery in Sasaima, Cundinamarca.

I had never been to Sasaima before, by the time I was born the voyages had ceased, my great-grandfather had already passed away.

Being able to finally go to a place that meant so much to everyone and that I have heard about since childhood was very special. Eating almojabanas at the town square, going to the plaza (market) for lunch, hiking through the surrounding mountains, eating fresh mandarinas on the trail, and meeting kind people who love their town and are proud of the land—it was a wonderful parenthesis, a welcomed contrast from the grittiness of Bogotá.

But even with all its pollution, the crime, the poverty, and the painful memories embedded into these mountains, coming back to Bogotá is coming back home. This month, I’ll leave Bogotá again and I am not sure exactly when I’ll be back—like so many of the other times I've departed, but it never stops being painful. I am excited about what is to come, it is beyond my wildest dreams, life that is. It has been that way during the past ten years. Full of new beginnings, new opportunities, but those beginnings always come paired with goodbyes and (hopefully) see you laters. A "see you later" is always an act of faith, and I am by nature faithless.

I see logging as more than a recollection of important events or thoughts, but as a way to digest and accept that duality, so integral to life. Whether one travels or not, we are all constantly starting and ending. Moments, books, trips, meals, tasks, conversations.

A book and a journal on a bed in a wooden interior.
Fig 2. My latest read and the Rey Naranjo "Small Bibliographic Log" in Santa Inés, Sasaima.

Before Comma Directory I have been logging in journals, the analog way. However, I rarely keep my journals around and I almost never have wanted to re-read my entries. Too self-conscious of my own writing, unfettered and unedited. However, recently I have made the effort to keep and complete the same journal, and also keep two additional analog logs on books and films. These logs are from the Rey Naranjo Editorial House, which is part of Bogotá’s very vibrant artistic scene. Their design is quite nice, they are compact and portable, and there’s a bit of humor and character infused into them. I’ve also managed to keep an agenda for the first time, which I bought at the beginning of the year in Oaxaca, that has also served as a nice writing space. More on writing next time.

- Andrea

28.08.2024 // Social Apps with Email

Bogotá, Colombia

Email combined with isync makes it is possible to access email offline and have it synced on a regular interval.

I looked around for options to build a shared TODO list with Andrea and sometimes the best solution is that which is right in front of you. All the local solutions that I have used in the past made sharing difficult, and neither one of us wanted to sign up for some third-party service nor download an app just for TODO items. Then I started thinking a few days ago about how I have always shared links with myself in the past, which was through email.

Well, thanks to fastmail's web filters, I was able to set up a specific email address that Andrea and I could use to share TODO items between each other. All emails sent to that email address end up in my TODO inbox. How do I share TODO items? Well, just add Andrea on CC and then it's done. No sign-up to a new service needed. When the item is complete, I just reply done and then my email rule will automatically drag it to my Done archive.

Similarly, I use this as my social bookmarking service. I have a special email address and a email rule so that when that address receives links from the right people, those links end up automatically in my links archive.

These two solutions work cross-device as well. All my devices have email so sharing across BSD, iOS, and Android becomes trivial. All of them support email.

This could be further extended with interfaces that operate on the isync directory. You could then have TODO apps that use email as a backend, and what is nice is that people would not need to download an app to operate on it, so it would be a form of "progressive enhancement".

- Marc

28.08.2024 // Offline Website Documentation

Bogotá, Colombia

On most browsers, you can easily download and print a PDF version of a website for offline use by using Ctrl+P.

With that, you can save and render the PDF with Zathura or Mupdf. I discovered that my undervolted laptop actually struggles with Zathura for PDF rendering, however Mupdf renders the PDFs instantaneously.

However, another technique that might be nicer is to save the website page as Web Page (HTML only) and then convert it to a more readable plain-text format. That way it is much easier to search through your documentation using grep or other Unix tools.

Terminal window displaying readable
documentation.
Fig 1. Rendering documentation readable from the terminal.

To do so Pandoc can be used to to convert it to a Markdown page.

pandoc my-site.html --to markdown_strict -o my-site.md

Markdown is not necessarily the most readable format though, so with some extra help of lowdown, we can produce terminal-readable documentation.

NO_COLOR=true lowdown -tterm -o my-site.txt

With the power of Unix, we can pipe these commands together:

pandoc my-site.html --to markdown_strict |\
> NO_COLOR=true lowdown -tterm -o my-file.txt

Then we can read it with less

cat my-file.txt | less -R

- Marc

25.08.2024 // Personal Database with Recutils

Bogotá, Colombia

I have begun using recutils to build a database of what I have read, watched and also for storing references on how to do things.

The tool has a decent amount of utilities for querying data and its simple formatting means that even if recutils one day stops working, it would be trivial for me to build my own replacement.

Recutils collection including L'etranger by Albert Camus and Ishmael by Daniel Quinn.
Fig 1. Editing recfiles in Kakoune.

The usage becomes simple. To find all FreeBSD specific information, I can simply run the recsel -q freebsd ~/refs.rec and I will find all my Freebsd related references. I made an alias of it so I just have to type refs freebsd.

Three recfile rows shown on terminal: Backlight/brightness, Listing devices on Freebsd, blocking websites. Includes instruction
Fig 2. Output of running refs freebsd.

- Marc

25.08.2024 // Gymnastics Rings

Bogotá, Colombia

Working out remotely can be challenging. When the gym is far away, staying in shape is a goal that can easily be sidelined.

To work out regularly and everywhere, I carry my favorite set of exercise equipment, the Gymnastics rings.

Wooden gymnastics rings lying on the ground
Fig 1. Gymnastics rings.

These rings can be used anywhere you have a tree or bar to hang them up on, and enables you to perform a complete upper-body pull workout, which is hard to do without any form of equipment.

After 8 months, starting from scratch, I was able to unlock the ring muscle up with the help of a personal trainer.

Crude drawing of 3 steps for performing a muscle up.
Fig 2. The three steps of a muscle-up.

Over time, I have transitioned over to exercising on my own. These days I follow the training programs sold by fitnessfaqs. I find his marketing to be a bit like snake oil, flashy, but the concepts he teaches are legit and the programs were recommended by my trainer. Though it should be said that these workouts should be supplemented with some of your own reading, as his training programs can be a bit light on theory.

On Reunion island, I found a tree next to a small lake where I could hang up the rings, do my exercises and then jump into the lake and swim for a bit to cool myself down. On the best days the lake was completely empty.

A lush lake on Reunion Island
Fig 3. The lake on La Réunion where I would swim.

The simplicity of the wooden rings combined with being alone in nature makes it a meditative form of exercise.

- Marc

23.08.2024 // The Comma Directory Concepts Design

Bogotá, Colombia

Today, Andrea and I designed the Concepts page. Looking around at other personal wikis, our shared sentiment was that there is a lot of amazing content, but that it can be hard to navigate because of the overwhelming amount of information served in a rather flat layout.

By using a hierarchical structure, we are able to better break it down into sub-categories that are easier to navigate. The top has:

And under them there is a subcategory and finally the topic. Each log entry uses a tag underneath, so we are still able to display the same log entry in multiple topics, if necessary.

To design the layout, Andrea and I started to look for inspiration. I am rather infatuated by the old lisp machines, and especially the Genera Symbolics lisp.

Old image of a Lisp Machine, portrait aspect ratio
Fig 1. Symbolics LM-2 Processing System. Source.

I love the portrait aspect ratio and the black and white look. So, I wanted the design to make an homage to its beauty.

Searching for its design elements, we came across this.

Symbolics OS Documentation with three sections
Fig 2. Symbolics Computer Documentation. Source.

Andrea and I both find it beautiful. If you head over to the Concepts section, you can see how that served as inspiration for the design. We are very happy with the result.

- Marc

23.08.2024 // Projecting Log Entries

Bogotá, Colombia

Comma Directory tries to set up a way to separate "the facts" from the interpretation of the facts. The idea is to build up a set of log entries that over time can be projected to display a unique interpretation of a given concept.

Originally inspired by event-sourced programming, this idea also has a certain resemblance to the zettelkasten method. In zettelkasten, you build up a set of atomic notes, that you then piece together to construct a novel idea.

A set of views projected to create an interpretation
Fig 1. Log entries projected to build an interpretation.

This process allows us to improve our understanding of our own thoughts and make sure that important ideas are grounded in a solid foundation. And if we get it wrong, we are able to reinterpret the information, without losing the raw source.

- Marc

23.08.2024 // AI and Anxiety

Bogotá, Colombia

When ChatGPT 3 came out, I was initially terrified how it might make my job irrelevant and all creative professions along with it.

Now I have had time to let that fear simmer for a bit, and I have changed my mind. These days, when I think about AI, I come to think about how irrelevant it is to the major problems I face. For the problems I try to solve, AI feels, at best, like a tool that can take care of some chores, and at worst, exploitative and actively harmful.

My current project is to help people live more sustainably. From that perspective, AI is an ecological disaster. At the same time, I think the way that AI removes our need to think,actively harms our public institutions. The more software I build, the more I understand the importance of understanding how things work, from the hardware to the software, in order to be able to fix it myself when something breaks. In that sense, I am skeptical of the way AI encourages us to just copy-paste without knowing what we are doing. It is like stackoverflow, but on steroids.

When I find out a picture is AI generated, I cannot help but to feel that it is about as interesting as a stock photo to me, and that makes me think that it will not be replacing art anytime soon.

These days, I feel a relief that AI actually does not help me in what I try to achieve, my initial anxiety is gone. Instead, I feel more pressure to make sure that my projects succeed so I do not end up in an organization where I am forced to use AI tools.

- Marc

22.08.2024 // Measuring Software Energy I

Bogotá, Colombia

I've been interested lately by the energy usage of software.

Since my current energy usage is invisible to me, it is hard to actually grasp just how bad the situation is. But I often am amazed at how inefficient many solutions are, they offer very little gain.

For example, to ensure that a service is always available, at my old job we had 3+ servers running in parallel, just in case one server hall gets hit by a tornado or other disasters.

Most services do not even need 99.99+% availability, they'd be fine with just two of those nines. Maybe that's what we should strive for instead?

Anyways, if we want to understand how we can do better, it is good to understand the energy footprint right now.

After some investigation I came by websitecarbon.com, which is extremely easy to use and gives some rough estimations. It estimates the cost of:

It links to Sustainable web design: Estimating digital emissions which I will need to take a closer look at.

I also asked a Permacomputing groupif they had any recommendations. Almost immediately I was recommended a few tools for measuring energy usage:

Excited to dive deeper into these resources and see how I can better understand and optimize.

- Marc

20.08.2024 // Search-Driven Development

Bogotá, Colombia

I listened to a podcast recently, the Corercusive episode on the birth of Unix with Brian Kirnighan. An interesting point made during the talk was that software development today is more about looking up information rather than building something with your own intuition. You search the answer for each query, a.k.a. stackoverflow-driven development.

I have started valuing more the software that does not require that, where you can read the manual and then understand how to use the programming language.

- Marc