Wonders and mysteries of the M1

I’m starting 2021 with a very nice laptop upgrade.

I made the mistake of using my 2018 MacBook Pro in the proximity of my 1½-year-old son, and amidst his toy-flinging the poor laptop’s screen got smashed. Only 80% of it works. Well, the thing was due for service anyway due its glitchy keyboard. But in a fortuitous turn of events, the new M1 MacBook Air that I ordered several weeks ago got delivered on the very same day.

It is a such a nice little computer. The M1 seems as powerful as people have been extolling and overall it feels great to use — running cool and fast. Having a physical function key row is a nice bonus. While I never hated the touch bar, it didn’t seem all that useful: what good is a small display in the keyboard that you never look at? Its value always seemed geared toward novice users who don’t know keyboard shortcuts.

Of course, getting Doomsday up and running was among the first things I did on it. I now have a native M1 build of Doomsday 3 that seems to work well enough. It took me three days after receiving the computer to resolve the immediate issues.

Continue reading Wonders and mysteries of the M1

A tale of model definition bug hunting

After updating all code that deals with DED Model definitions to use the new Record based storage, I was slightly disappointed — although not surprised — to see that loading up a resource pack and trying to use it would result in a crash.

This is a pattern that I’ve come to accept as the norm: after working on a set of significant changes, my initial design and plan are shown to be valid, but I have to spend a couple of hours tracking down bugs that, in the end, prove to be trivial. In other words, one can’t expect to write bug free code.

Continue reading A tale of model definition bug hunting