OSM screenshot of the Bilbao - Donostia region, showing the Gorbea national park

Mulled wine



When December comes in Germany, mulled wine is everywhere. Every town has its Christmas market, and at each of them, you´ll find several stalls that sell the cheap red plonk with a few spices and lots of sugar.

But there´s a cup of mulled wine that is especially dear to my heart. Let me tell you about it.

More than twenty years ago, living in Madrid on a student exchange program, I went to visit my friend Sebastian in Bilbao. Together, we went to spend a weekend in the Basque mountains.

Spain’s northern cost is gloriously rugged and earthy. It’s a world away from the cheap resorts full of drunk tourists on the Mediterranean coastline, and even farther from the endless expanses of plastic in the country’s south-east, where immigrants from the poorest parts of the planet work in terrible condition to supply Europe with cheap tomatoes and cucumbers.

Sebastian’s flatmates, proud Basques, knew their region very well, and supplied us with helpful hints. We set off by bus on mid-Friday, riding through a torrential downpour towards the natural park of Gorbeia. We entered the park, found a shelter to spend the night in, and roasted chicken legs in the fireplace.

Setting off on Saturday morning, we figured we had taken too much food. So we ditched some canned beans. Someone else had left a carton of red wine, and we took that in return on our hike up the mountain.

It was early May. The weather in the Biscay region changes rapidly. A sunny morning quickly became overcast, and worse. By the time we reached Gorbeia´s summit, there was a snowstorm. The wind was blowing so hard that the crucifix at the top of the mountain had horizontal icicles on it.

We clearly weren´t equipped for this sort of thing. We were cold and wet. We hadn´t even brought enough water, and it wasn´t clear when we would find any. We packed our bottles full of snow, in the hope that it would melt later, giving us a minimal supply.

Fortunately, the weather improved a bit when we hiked down the other side of the mountain. But there was a new worry. Sebastian´s flatmate had told us about a cave where we could spend the night. No need to bring a tent! He had given us a fairly good description, and pointed at our map. But as we were standing there, trousers streaked with mud, we realized that finding the cave was going to be difficult.

The forest was no doubt beautiful. Yet in our condition – tired, wet, cold, thirsty -, it started looking a tiny bit inhospitable. We searched and roamed, trying to find the cave that would give us shelter for the night. It was somewhere around here, but where?

Suddenly, Sebastian spotted a horse in the forest. To all appearances, it was just roaming free. Do they keep semi-wild horses in the Basque country? We didn’t know. We decided to take a closer look, and slowly walked towards the animal. When we were close enough, we realized that it was standing right in front of our cave!

Relieved, and with many good words for the horse (which left of its own accord), we occupied the cave and made ourselves at home. In the late afternoon of a long day, the fire we built was a wonderful source of warmth and comfort. The appearance of the horse gave the whole evening a magical air, as if we had been guided by a unicorn. We put a couple tins of ravioli on the fire, and when they were hot, we found them a meal fit for a king.

Then we recalled the carton of red wine. We poured it into one of the tins. We found an orange in our backpacks. We squeezed its juice into the wine, and threw some peel in for good measure. Then the tin went back onto the fire.

And that cup of mulled wine was the most magical I’ve ever tasted.

The night was quiet. In the morning, we were awoken by a hiker who climbed up to the cave and greeted us with “Egun on” – “good morning” in Basque. We packed our bags, and hiked the rest of the way out of the national park.

It´s been over two decades. In the meantime, Sebastian and I have grown from boys into men. We´ve found partners, had kids, built lives. We still go on mountain adventures together, and each one is magical in its own way. There’s a mutual trust that comes from hiking through a snowstorm and finding what is to all intents and purposes a unicorn.

The mulled wine at the Christmas markets? That always falls short of what my heart expects.

Making notebooks

I live my life in a bunch of different contexts. I’m a father, and a husband. I’m a professional in my job, and an amateur in a million things. I’m an outdoors person. I have little bunny rabbits in my brain that constantly hop every which way, and come up with ideas anytime they like.

Accordingly, I have too many ways of keeping track of stuff I need to remember. There’s various todo lists at work, in a plethora of tools. Some things live in email. Sure, I have a smartphone with a bunch of note-taking apps; but writing things down there takes long, and retrieving it even longer. If I recall that I put it there in the first place, that is.

That’s why I like notebooks. With blank pages. They allow me to jot down a few words; to make a quick drawing; or to write thoughts down in longer blocks. Except that I like notebooks perhaps a little too much. I’m prone to buying very nice ones, and then not using them, because I don’t feel that today’s shopping list is worthy of a place in my 25€ notebook.

So, depending on your perspective, it’s either complicated, or I have entirely too many hangups about everything. (insert whynotboth.gif) The good news is that, after too many years of mentally tying my shoelaces together in this way, I have hit upon a solution:

I make my own cheap, trashy notebooks!

A stack of 8 notebooks

This way, I can have a small, disposable notebook. I know it’s made out of common-or-garden printer paper. There’s nothing special about it. Plus, it’s so small that I can carry it everywhere in my back pocket, without even noticing it’s there. Great!

Here’s how I do it.

It’s easiest to make these things in batches. A batch takes about an hour, and will give you maybe 8 notebooks. Those tend to last me roughly a year.

Find a table with some space on it. You’ll need:

  • a bunch of printer paper
  • a couple of sheets of thicker paper, for the covers.
  • a ruler
  • a pair of scissors (if you have a paper cutting machine for some reason, that’s great. Use it.)
  • some clamps – clothespins will do fine
  • a nail
  • a hammer
  • a sturdy sewing needle
  • some thread
  • an old piece of wood as a mini workbench

OK, let’s go

  1. Cut the A4 sheets in half, and those pieces in half again. (For Europeans and everyone else using proper formats, the result is A6. For USians, it’s probably 1/34th of a football pitch by one stone or something. Who knows. Who cares.)

A5 sheets (well, really A4 sheets cut in half), clipped together, in a cutting machine

  1. Stack your new sheets. In my experience, 10 sheets are about right.

8 piles of cut sheets, some of them clamped together

  1. Now cut your cover sheets to size. If you’re making a batch of eight notebooks, you’ll want eight cover sheets. When done cutting, align neatly, and put on a clamp to hold the sheets in place.

That’s the paperwork done! Now let’s turn all those sheets into a little book.

  1. Take one stack of sheets. Fold the cover sheet along its centerline, put it back on the stack, and reapply the clamp. Check the alignment one last time.
  2. Next, we need to make some holes for the thread that’s going to hold our books together. Put your piece of wood on the table. Put the stack of sheets on top, with the cover facing up. Grab your nail, and put it in the middle of the centerline. With the hammer, punch a hole into the stack.
  3. Repeat the punching along the centerline, for a total of seven holes, evenly distributed.

stacked sheets + cover sheet lying on a piece of wood. They're clipped together. A nail is sticking through the middle, and a small hammer is lying next to them.

  1. Time to sew! Thread your needle, and start going through the holes. Just up through one hole, and down through the next – in the simplest way possible. Leave about 10cm of thread hanging out the end.

a notebook in the process of sewing

  1. When you’ve reached the end of the row of holes, go around the outside, and turn back the way you came. This time, if you went down through a hole on the way there, you’ll go up through that hole on the way back.
  2. Fold your notebook. The result should look like this.

Close-up of a notebook, focusing on the seam

 

Congratulations! You’ve made a bunch of notebooks.

I usually keep only one of these notebooks active at a time, to avoid confusion. It lives in my back pocket. When I go out, I usually carry a small pencil along – those short ones from Ikea work great.

By the time the notebook is filling up, the covers will often look quite bent and crumpled. My wonderful partner has made me a perma-cover out of an old bicycle inner tube. This makes the notebook a bit thicker, but it keeps it well protected. It also looks pretty cool.

Enjoy your notebooks!

Finding the sun

(February 2025)

It’s been grey and overcast here for a while. Last Saturday I simply couldn’t take it anymore. Something had to be done! So I put on my hiking boots, and went up a mountain. If the sun didn’t come to me, I would just have to go and
find the sun!

The Brünnstein is a not-terribly-high mountain nearby, peaking at 1634m. I picked it because a) I hadn’t been there before, and b) the relevant apps offered a tour that looked
like what I wanted.

When I parked the car at the trailhead, everything was still depressively grey. Not so much weather, more like an absence of weather. The path soon led me into the forest, and took on a substantial grade.

There was still a lot of snow on the ground, and I was happy to have my trekking poles. The forest felt a little mysterious. Finally, I approached the upper edge of the fog that’s been plagueing us for weeks:

Hiking into the sunlight was magical. The rays on my face felt great after such a long time. And the view above the clouds was beautiful:

There are two routes to the summit. One is a very easy via ferrata. I had brought a band sling and a couple of carabiners, so I could improvise a climbing harness. But I’m not a very experienced mountaineer, and all that snow on the ground didn’t inspire confidence.

So I decided to save the via ferrata for spring, and took the easier — if slightly longer — path to the summit. This turned out to also be something of a climb. Not really dangerous or difficult, but interesting enough that the local hiking club had fixed a bunch of substantial steel cables to the rocks,
so climbers could secure themselves.

Arriving at the summit was just perfect. I mean, look at this view!

The mountain has two peaks. The one that’s visited most is what you see in the picture, just by the little chapel. The actual, slightly higher peak (by maybe 2 meters, if that) is a little away over a ridge. I dithered whether I should
risk the snow-covered, narrow ridge. In the end I decided that I would be really annoyed with myself if I didn’t. So I went, and it was fine!

I went home the way I had come. Only much happier. Mountains are good for the soul.

Freeing up disk space on Debian

[This post is above all for my own reference, so I’ll know what to do the next time this problem occurs.]

My Thinkpad’s SSD has an impolite tendency to run out of disk space, even though I might not really be adding lots of data. It seems to be mostly cruft that Debian accumulates, perhaps out of a desire for thorough record-keeping.

Looking for ways to free up disk space, I found this StackExchange post. It has bunch of ways for giving my hard drive a good scrub.

Let’s see what they do!

Helpful commands

  1. Start by emptying your Trash bin.

2. Clean up logs – this freed about 3GB of disk space.

sudo journalctl --vacuum-size=300M # reduces the logs to 300 MB

This freed about 3GB of disk space.

More log cleaning. Did not have any visible impact:

sudo logrotate /etc/logrotate.conf # compresses or (?) deletes system logs

3. Delete cached packages. I did this before starting a more systematic analysis, so I can’t say how much space it freed up. But it was easily more than one GB:

sudo apt clean # deletes packages that were cached for installation

4. Remove unused packages. Freed up a cool 1.9 GB:

sudo apt autoremove # removes unused packages

That’s all the straightforward commands that the linked post provided.

Finding large files

In addition, it told me how to find large (<100MB) files, so that I can check whether I want to delete them:

sudo find / -mount -type f -size +100M -exec du -h {} \; | sort -n

But most of the results looked like they were at least somewhat important, so I didn’t actually go and delete any of them.

Remember to floss regularly

Maybe I should simply put all these commands into a little script, and run that as a cron job? Once a month or so?

Airdrop for the rest of us


Serving files from an iPhone via http

Those of us living in Apple’s golden cage know that the fruity phones offer a pretty decent user experience. But try rattling the bars, and you’ll find out that Cupertino has done a solid job of locking you into their system.

One of the nicer functionalities of iOS is Airdrop. This lets us transfer files between devices over Bluetooth. It’s as easy as sending a file by Signal. But disappointingly, it only works with Apple devices. This both a fact of life, and really stupid.1

For example, I sometimes find interesting ebooks on the internet. My ebook reader is in the non-aligned camp, because what I’m reading is honestly none of Jeff Bezos’ fucking business. When I find a book I like, e.g. on Project Gutenberg, I often download it to my phone.

So, how do I transfer that epub file to my ebook reader?

http to the rescue

I could just copy it to my computer, connect the ebook reader with a cable, and copy it over. This works, but it’s cumbersome: When I get time to read, I’ve usually just managed to tear myself away from the computer. So I don’t want to turn around and fire up the time-wasting box again.

Much better to waste time in a more interesting way! Turns out it’s really not hard to start a http server on my iPhone, direct the ebook reader’s browser to download the epub file from there.

(Of course, this works with literally any sort of file. Let’s just stick with my use case for now for simplicity’s sake.)

Important: This will only work if your iPhone and your ebook reader are on the same wifi network. If your reader doesn’t have wifi, then sorry, it’s cables for you.

Preparations

You only need to do this stuff the first time. We’re following these instructions.

On the iPhone:

  1. download the iSH app. It’s a Linux shell, more or less.
  2. start iSH, and install Python 3:

    apk add python3

  3. open your Files app, and hit “Browse”. In the top right corner there’s a circle with three little dots in it. A menu pops up, and you select “Edit”. This will show you a bunch of places where your phone can store files, iSH among them. Make sure iSH has a green toggle.

=== ADDED ===

Instead of installing Python and then using the http.server package, you can also just install darkhttpd, like so (still in iSH):

apk add darkhttpd

and then run it with

darkhttpd .

The dot is for the current (root) folder. If you’re feeling fancy, use another path where your files are stored.

(Thanks jacksonchen666 for the pointer!)

=== end of addition ===

Oh, and download the epub file you want to transfer to your reader. It doesn’t matter where you get it from, nobody’s judging you.

Transferring files

  1. On your iPhone, figure out where the downloaded file is stored. Just open the Files app, click on “Recent”, and it’ll probably sit right at the top.
  2. Copy the epub file to iSH’s root directory:
    • Long press on the file > copy.
    • Then hit “Browse”, and under “Locations”, you should see “iSH”.
    • Tap on “iSH”, then on “root”
    • long press somewhere on the empty screen. A context menu pops up, and you select “paste”. That’s it.
  3. On your iPhone, open iSH and fire up the web server:

    python3 -m http.server

If all is well, you should now get a message in iSH like “Serving HTTP on 0.0.0.0 port 8000”.

Do you see it? Congratulations, you’re running a web server on your phone!

But where, in network terms, is your phone? Let’s go find out your local IP address. On your iPhone:

  1. Open Settings
  2. Tap on “Wifi”. You’ll see the network you’re connected to. There’s a little “i” in a circle. Tap that, scroll down a bit, and you’ll see your phone’s local IP address. Mine is currently 192.168.178.47. Yours should look similar.

Now let’s transfer the file.

On your ebook reader, fire up the web browser. In the address bar, enter

http://< your IP address >:8000

for example

http://192.168.178.47:8000

Then hit “Enter”. You should now see a very plain directory listing that contains the epub file!

Just tap on the file to download it. My ebook reader decided to store it in its library and open it right away; I’m not sure how yours will do it. But you’ll figure it out.

Done!

Congratulations! You did it. That’s all. Repeat the steps from the “Transferring files” section as often as you like.

When you’re done, go to iSH on your phone, tap “^” and then “Z” to stop the server.

Of course, this process isn’t limited to ebooks. Open protocols like http are among the finer things in life, right up there with food and sex. Enjoy them!

You can just put any file in iSH’s root directory, and access it from any device on your network that speaks http.

Feedback, please

Did this work for you? Cool!

Oh, it didn’t work? Please let me know on the Fediverse, and I’ll see what I can do to help.I’m fully aware of how capitalism works. We’re writing from the user’s perspective here, ok?

  1. I’m fully aware of how capitalism works. We’re writing from the user’s perspective here, ok? ↩︎