Tag: english

OpenTTD revisited

OpenTTD is the open source clone of Transport Tycoon Deluxe. It’s an amazingly addictive time sink that you absolutely should not start playing unless you’re ready to come to half a day later realizing it’s 5am and you haven’t gotten any sleep yet. It’s fun just playing around too, but things get real when you set a goal like “connect every primary industry.” I haven’t played against AI or people, but I’m not that interested in that either just yet. This is actually my second time playing—I spent insane amounts of time on the game during university (too).

A junction that ended up way more complicated than intended

Homeworld 2 (remastered)

I had fond memories of Homeworld 2 from my childhood. Mostly along the lines of “it was pretty,” but fond nonetheless. (I must’ve not played the campaign then…) The remastered edition lived up to my expectations regarding the visuals. The various colorful areas of space with occasional clouds of dust and massive runs of massive things, with my massive (though tiny in comparison) Mothership cruising comfortably are a rich source of pretty screenshots.

My tents

The first time I spent nights in the mountains was back in 2018, when I hiked from Mt Kobushi all the way to Mt Mizugaki. At that point I was staying in mountain huts, so I didn’t need a sleeping bag or mat. I think my first time sleeping in a tent in the wild was actually in the foothills of Elbrus in 2019 (not counting sleeping in a tent during summer festivals back in Hungary). Then it was even later, the summer of 2020 that I first stayed in my own tent during a multi-day trip. It was soon after that I actually hiked up a mountain, Mt Kai-koma to stay in a tent at altitude.

Breaking bad, or versioning is hard

Rich Hickey will tell you that breaking changes are horrible and versioning is stupid. The idea is nice. No breaking changes, ever. You get the API design of whatever you’re building perfectly at the first try. Oh wait. Obviously no one can do that, and no one could ever do that.

The question then becomes just how long exactly are you willing to carry the dead weight of code you don’t really want to carry anymore. Or rather even, how long exactly are you able to pay the costs of maintaining a possibly very problematic old API design.


Sitting in the field

Title: Sitting in the field
Creator: PascalsProxy


I read some of the Dune books back in high school. I enjoyed the setting of the world, the vast desert of Arrakis, the ruthless political scheming, the cool tech – but at the same time I really disliked the idea of genetic memory and all the plot devices that arise from it, and I felt that the use of gholas is a very cheap writing trick. I was still looking forward to the new Dune movie directed by Villeneuve, mostly because I was impressed by the trailer and also because I loved his Arrival.

Training for Denali

Of the Seven Summits, there are two I am (was) particularly concerned about. Puncak Jaya (the Carstensz Pyramid) because of how technical it’s said to be, got me to start bouldering and practice moving around on more “exciting” rocky terrain. The other is Denali.

Moving on snow in a rope team for crevasse safety isn’t the issue. Climbing up on steep slopes or along knife-edge ridges with fixed lines isn’t the issue. Those are skills that you can “just” learn and they become another useful wrench in your toolbox. Having the physical fitness to load carry up to the 14000 (feet) camp was what worried me.

What’s the deal with types?

I’ve never used Haskell. I won’t claim I’m good at Rust. I mostly work with Ruby and Clojure, both dynamic languages where you don’t really need to worry about types. But then of course that’s not true. Even if you put Rails’s magic aside, it’s way too easy to write code that accidentally works (in an absolutely unintended fashion).

low-angle photography gray building

What’s an ideal database?

I’ve been reading about and considering language design choices (for my new pet project), and one thing I really like (though I rarely actually use in action) is Clojure’s transducers. I couldn’t find it in the talk introducing them, but I vaguely recall someone vaguely recalling that Rich Hickey said Clojure’d have much less laziness if he’d found the idea of transducers sooner.

Then in a completely different thought process (maybe there could be transducers, process transformations for thought processes as well?) about databases. I was considering databases I used so far, things I tried to achieve with them, the difficulties and nice things.

Writing a lisp-ish compiler in Rust

It was a while back that I got a notice from Shibuya lisp that the 100th event is coming up. It’s a (Common) Lisp/Clojure meetup in Tokyo (though since covid, online). I don’t know if it’s a common thing among lispers, but everyone there seems to at least try writing their own lisp (and talk about it) somewhere down the path.

Before I wasn’t that interested. I could do most of what I wanted to do in Clojure without too much pain. Then I tried writing a (performant) wrapper around Netty and it got a bit more painful. Things like nth calls on function argument lists started showing up on my flame charts (testing with 100 million requests) and rough edges around interop cut my hands (hello proxy and abstract classes).