App Confines

I feel this:

"In short: in relation to the Grand Strategy of Technopoly, the essential purpose of apps is to eliminate the sphere of the tactical. It is to make the kind of improvisation I celebrated in my essay on Albert Murray impossible. It is to transform us all into drones, and then to make us like it – to make us (a) accept a universal strategic imperative as desirable, and (b) promise that our lines never shall wander."

The last decade or so has been about finding the right app for this or that, which has led us away from experimentation, away from using things in different, unintended ways. "There's an app for that" is a genius marketing line, but also confines our imagination to something that someone else has made. I've been under that spell as well, so it's not me pointing fingers, it's me recognizing what has happened to come up with a way to get out of it again. To not be trapped in the "marketplace of ideas". 🤮 To break the software paradigm of the 21st Century. And no, the way forward can't be for everyone to learn how to program. That's ridiculous. The way forward is to make things that people of all stripes can extend, modify, and repair without having to become technical experts themselves.

Providence Chapter 5

I'm reading Providence by Alan Moore and Jacen Burrows right now and I'm really enjoying it. It's a moody, dark masterclass in atmospheric horror. The art fits the story very well and I like the various in-world texts at the end of each chapter: diary entries, mostly, but also pamphlets and even drawings. The world feels very "alive", if you know what I mean. I'm just halfway done with it, but thre is a structural thing in Chapter 5 I noticed that I wanted to write about before I move on. I'm not going to be too spoilery about it, but I have to talk a little about the thing to talk about the thing. That's your final warning.

Do you want to continue?

Great, here we go. By chapter 5 the main character Robert Black has started to lose himself in the New England scenery he's trying to research. He's exhausted. He's seen some stuff that he's not sure about, he's talked to strange people, and his notebooks entries indicate that his beliefs about the world are starting to shift ever so slightly. In this chapter every scene ends with the Black having a conversation with someone else conveyed in captions. These captions lead into the next scene, where we get to see who he is talking to. Now, this is not how any of the previous chapters have worked. It's very noticeable, if you pay attention. You might even miss it because it's a pretty standard way to move between scenes. Comics have worked like this for ages, it's a very common thing. Now, halfway through the issue, Black wakes up in his bed, not sure whether he is in a dream, or whether everything before this point was a dream. And this is where it gets interesting: Because this issue is told in this slightly different way, the reader feels disoriented as well. We've come to trust in the reality of Blacks world, but as I said, he's starting to lose his grip a little. He's not sure, and neither can we. Time in dreams is compressed sometimes; you may talk to someone in one spot and find yourself somewhere without an explanation or justification, which is exactly what these captions do mechanically. Up until the halfway point, you read them as another stylistic flourish, an economical way to get through the next bit of story. After the halfway point, you are not sure anymore. You are not sure anymore about anything because this might be a dream. This might be all in Blacks head. Or it might be a sideffect of encounting the Lovecraftian horrors (it's the last one, obvs). Whether you noticed it or not, you feel unsettled because the way the narrative is presented shifted. Very, very little, for sure, but enough to make you doubt the reality of the narration. And that's great horror. Moore and Burrows take something ordinary, the way a story is told in sequential art, and turn it into something sinister, foreboding.

I'm really looking forward to the depths this thing will go from here.

Emacs Reloaded

I'm back trying out emacs. Yeah, I know. I've just had it with corporate control. Some number of events, both personal and global, happened over the last few years and I just don't feel comfortable anymore. Well, I'm very comfortable on this platform, and that's sort of the problem, isn't it? I've been on the Mac for almost twenty years now, so there are so many little thing that I rely on every single day So many nice interactions, affordances, and features. I still love the Mac, I just don't really like Apple anymore. I don't like that they got into advertising. I don't like that their services strategy enshittifies everything I like about this platform, so I intend to get off it. Get out of the entire corporate controlled environment. But it'll take time. I just bought this new Macbook Pro last year (yeah, I know) and at this point I intend to keep it for at least a decade. I fully intend to be off macOS way before then. When exactly? I don't know. But I'm keeping a close eye on the Asahi project. I'll keep longingly eyeing Uxn and SerenityOS, dreaming of building my own version of something like that. If only I had the time and energy...

So, emacs. It's...hard. It has all kinds of things and knobs and whathaveyou and I'm still flailing about. I'm using doom this time and it's markedly better than the last time. It makes it possible for me to use this thing. I still haven't figured out how to write a basic theme or how to get a word count in the status bar. I think once I get that working I will have something I feel more comfortable in. Comfort. There is that word again.

I'm making progress, though. This entry was written with it. I keep a journal on my computer, it's all just straight markdown files in a directory. Boring stuff. (No, I don't need org-mode for that, thank you.) But I started doing it in emacs this week. The hardest part has been to not automatically open a BBEdit window when I sit down to write it. I haven't written much code with it yet, but that's next.

This is going to become a major theme of this blog going forward. I'll still write about the game (when I find time to work on it) and all kinds of other crap, but this is what's on my mind right now. This, and some personal stuff I will write about when the time comes (uhh, cryptic).

So, emacs. I'm back with it. Yeah, I know.

*Mumbles* Motivation

Well, you know. I keep doing little things here and there, but nothing concrete. Last week the kids were sick as well, so there was even less movement on anything, really. I did do some text editing and had a couple of ideas for the text interface. I think I'll have to put the video stuff aside for the time being, I'm really not making enough progress on that right now. I think the text stuff will be easier and it will be a good thing to have a little programming win. We'll see.

I can do this.

Blender Motivation

I managed to work on a Blender object this past week. It's not much, but it's progress. That's my new thing now. It's not much, but it's something. The journey of it all. But I actually hate that everything is called a journey now, so...I dunno. The experience? That's used up as well. Fucking marketing people. Anyway, I've been working on some Blender stuff and I like that. This week I will keep working on Blender stuff when I find the time to do and otherwise stare at the ffmpeg code until it falls over, I think.

I can do this.

Tuesday Motivation

I'm so tired, I don't even know how to write anymore. Is this a sentence? Maybe. But is it a good one? Not so sure. As you can tell I'm pretty loopy, and I've started this update from scratch a few times already and I'm not even sure if this is going to be the final version. I've been working on the game in the few hours I have to myself every night. I'm not making a lot of progress, but at this point any progress is a win. I've realized that doing the work itself, the process, is more important to me and my mental health than reaching any sort of goal. So, I've decided to abandon all time tables and just keep on working whenever I find the time. The spare pockets, the awkward pauses. The times that we all give in to social media. The time kids decide to get up at 5am for a week straight for no apparent reason. I do my best work when I'm not under pressure. Stress is my biggest enemy, always has been.

I've had a research breakthrough. One of the more important objects in the game will be an old-school reel-to-reel tape, but I only have a few photos of it. They're all grainy, and tiny, and I haven't had any luck figuring out the exact make and model. Well, after going through the pictures yet again, I found a photo where the thing is slightly bigger in the frame than it is in the other ones. One image lookup later I found the exact machine! Now I can model it in Blender, which makes me happy.

On the coding front I'm still trying to incorporate ffmpeg. At this point it's stubbornness. At least I figured out that the problem is my inadequate understanding of pointer lifecycles, so that's something. I can work with that. As I said, not a lot of progress, but even a little bit gets me closer to a finished game.

I'm not giving up. I will finish this stupid game.

I can do this.

Live And Learn

I set out to add the video player straight into the game, but I've had no luck so far. I'm hitting on these cases where it just doesn't play nice with what I have so far, so for the next few days I will try to isolate the code and just build a little test harness. A video player that I can drop in afterwards. I think that's the saner approach. I should've done that from the beginning, but sometimes you make these assumptions that turn out to be completely false. I was just so enamored with the ease with which you can add SDL to a project that I thought I might do the same with ffmpeg. Oh well, obviously not. Live and learn, right?

Monday Motivation Resumes

I'm back! Yesterday I wrote the first commit on my game after a two months long absense and it felt great! It was an annoying bug that crashed the the game on launch. I'm still trying to integrate ffmpeg for video playback, and it's harder than I had hoped. This bug was not directly to do with ffmpeg, but with a change that I made to accomodate it. Now I can start the game at least, which makes it much easier to figure out why the SDL_Texture I use for the video doesn't display anything...😵‍💫🥴

On Hold

I've fallen in the trap that I have to have something substantial to say before I can post something on here. That's ridiculous, of course. It's my website, I can do whatever I want.

It's been six weeks with the new job now and I'm starting to slowly, very slowly, claw back some energy on the evenings. These 40 hour work weeks are so draining on me and I'm glad when I can muster enough energy to do something with the kids on the weekend or write a little bit here or there. I think two more weeks and I can realistically start thinking about doing work on the game. I'm itching to get back, but I know that I don't have enough energy for the next few steps and I'm afraid I might hurt my motivation in the long run if I open up a bunch of issues all over the place. So I'm basically in waiting position.


It's been a minute since I posted something on here. I've started a new job, and the first few weeks are almost always the most stressful and draining ones. I think I'm over the hump now and regular posting will commence soon. I basically did no work on the game for a month and it will be interesting to see how I will get back into it. I'm still determined to finish it. I won't have as much time as previously, which means I will have to find a way to make the most of the time I do have. I also kind of decided to get rid of as much corporate software in my life as possible, but that's a bigger story for another day...

Monday Motivation 27

This week I'm going to take a break. I'll start my new full-time position next Monday and I need to charge up before then. I have to go to Munich for a week of orientation on Sunday, in fact. It's been an eventful year and I need some time processing. I'm super proud that I keep posting these updates. This might be the longest continuous stretch of time I worked on a game project like this, and I don't see myself stopping even when I'll have more to do starting next week. It's giving me strength and hope for a better future.

I can do this.

Boring Control

I've been playing Control on and off for a couple of moths now, and it's fine. There are moments that are fun, and moments that are boring, but overall it's a decent game that presents you a pretty belabored, but inoffensive sci-fi narrative. The thing is, there is potential here, but it doens't do anything interesting. It's all just mushed together, sanded-down versions of other good things. That's a lot of games, and movies, and basically everything now, so I don't know why it grates me with this game so much. Maybe because I remember the buzz when it came out and how it was "inspired by David Lynch" in therefore how "daring" and "artistic" it is. Now, David Lynch is my favorite film-maker of all time, so I'm biased, but I'm here to tell you: That's bullshit. It's just some random shit that looks like a Lynchian nightmare at first glance, but if you actually look, you see that it's all just artificial nonsense. It's manufactured to elicit a response in you, worked over by a team of people with the set goal of making it "Lynchian". That works for a surprisingly broad set of people, but it leaves me feeling empty. Again, the gameplay is fine, the story is just not as deep as the marketing would have you believe.

The thing that makes Lynch's art so unique, is him. Like, literally him. The person, the auteur, if you will. What he's got going on in his head. I don't imagine him sitting down and thinking "how can I make this weird? ah I know, I give him a red suit and cast a small person!". No, he's inviting us to a tour of his subconsciousness and some of the things in there are weird. Some are funny. Some are just exceedingly good advice. But they're all about what goes inside his head. He has help, because film is a collaborative medium, but they're all working towards a singular vision. I don't feel like I'm playing the vision of anyone in this game. That's by design, of course. These AAA games are so expensive now that they need to sell so many copies that it's nigh impossible to do anything daring with them, unless you come from Japan and don't give a shit.

Death Stranding is actually a good counter-example: released in the same year, also inspired by movies and the way they tell stories, but so genuinely weird, genuinely interesting, because it's a game by Hideo Kojima and he got to tell the story he wanted to tell. Again, collaborative medium, everyone is important not just as a creative, but as a person, but they're all working towards the shared goal of bringing his version to life. With so many other AAA games it feels like the teams are just working towards the goal of bringing the highest level of shareholder value to life, adding just a sheen of something deeper to get good press. We don't need to ignore all the hundreds of people who work on these big projects, but we don't need to have bland, designed-by-consensus stories either.

I think we can do better.

Ai Mistake

So, I made a mistake. I got swept up in the hype cycle like a lot of people and was a bit more optimistic about these new "AI" technologies than I should have been. I saw right through the crypto nonsense (ask anyone who saw me do stand-up circa 2014), so it's doubly bad that I didn't catch the issues here.

I will not be using these newfangled things for my projects. because they are fundamentally against what I want to use my own computer for: a personal tool to create interesting and weird art. Communicate with the outside world. Sometimes with other people, sometimes all by myself. But certainly not with a strange, unreliable simulacrum of a person. One that is run by giant corporations to extract even more of our time and energy.

I got obsessed with computers because they were magical devices that could put pictures, sounds, and text on screens. I wanted to understand how they work and that was the coolest thing about them: I could. I got lucky that I wasn't born ten years later, when all the major platforms became incredibly locked-down. I could learn how computers work and make my own tools, toys, and everything in between. Software is amazing. "AI" is not interested in helping me with that. In fact, the people selling "AI" right now want the exact opposite: they want people to use their stuff without understanding it. That's the promise of every single "AI" presentation. Don't worry about the details, the computer will do it for you. You don't have to learn anything. Just trust us. That sucks. This whole mindset sucks. It sucks that I can't run all the software I want on iPad, it sucks that everything is in the cloud now with seven different layers between me and what I actually want to do, and it sucks that the next "frontier" of software will be a further abstraction away from the cool bits. Does that make me old and cranky? Maybe, but I don't think so. I still want to work with computers, want them to do amazing things, I just want more thoughtful humans in the loop. Star Trek had that right decades ago. And we can still get there. We just have to be more human, not less.

Monday Motivation 26

I'm still working on adding a video player. This is such a big detour now. If I had a hard deadline I wouldn't do it, but I don't, so I keep going. I'm learning a bunch. Last week I felt as if I was too dumb to understand threads; turns out I was just too dumb to understand pointers. That's fair. Pointers are hard. Well, the thing is, I'm trying to work as much in "modern" C++, but all the lower level stuff (SDL, ffmpeg) are C libraries which...don't. And I didn't feel like I have enough time to properly abstract them, but now I'm thinking that I might need to. It's becoming increasingly annoying to deal with raw pointers. Of course, that woud be another big detour. Another delay. Anyway, I'm still having fun, I'm still satisfied with the actual work. I keep on going, because

I can do this.

P.S. yes, it's Tuesday. I was busy. 😅

Kottke Anniversary

I understand why people complain about tech and the internet all the time now. A lot of what we do today is mediated by massive corporations, unhinged venture capitalists, casino mechanics, addicting algorithms, and an all-devouring, constant surveillance machine. But the good parts are still there, too! Case in point, is 25(!) years old now. That's longer than I have been on the web, longer than a lot of people have been alive. Kottkes writing has been a mainstay in my RSS readers over the years, and I'm glad to see him continue offering fine hypertext products. Human curation for a human web is good actually. Who'd a thunk it?