Category Archives: Uncategorized

Balisage 2022, Closing Notes

Balisage 2022 is over, and I had a great time.

I’ve said it before (I think) but the real power of Balisage is that it invigorates me because it reminds me of what I love about my chosen field.

Most years, following the closing of the conference I go back to work, straight away. Yup. Could be a particularly tricky problem, or maybe an alternative to something I have been pondering, but most years it’s just been sheer inspiration. I like what I do, and I like talking to, and listening to, people in my field. They provide inspiration, and they make me want to do more.

It’s a wonderful thing when a conference can remind me of all this, and it’s what Balisage does.

Balisage 2022 Is Upon Us

It’s the first day of Balisage 2022 (online only), and I’ve been enjoying every minute.

Now, my holiday ended yesterday. I’m still in holiday mode. Lots of golf, relaxing, BBQs, meeting friends and family. Stuff. And I have not been particularly interested in markup, beyond some initial XProc and XQuery (and a few bugs I needed to sort out) during week #1. I was not super happy to start working again, and let’s not talk about this morning.

Luckily Balisage is online and a six-hour time zone difference away, so I worked the day and then logged on to Balisage for today’s talks. There’s been a few interesting ones. My favourite so far was a talk on Invisible XML or iXML, as they call it. It wasn’t as much a talk as it was an overview of where the standard (yes; I do consider Community Group specs standards) is now. I specifically liked the demos, with every single implementation astonishingly good. Did I already use “super”?

I can’t find fault with the other talks today, but you do get favourites. Mine was this, but also a chat session afterwards.

See, following the last talk for the day, I logged on to a “birds of a feather” session about conversions from and to MS Office and Open Office formats. It was a bunch of people talking about MS Office (etc) conversions and their approaches, tools, etc for doing the job. Right then and there I rediscovered my love for what I do for a living.

We all share an understanding about markup and the use of angle brackets, and the session was all about that. Tricks, tips, libraries, tools, shared experiences. Enough to make me remember what it is that made me choose this path in the first place. For a first day back at work, I could not be happier, and it’s what Balisage is all about.

Audio and Lossless Formats

Recently got fed up with Spotify. Not the Rogan thing, mind. I think that one is an overreaction – cancel him just because he invites contrarians and uses the N-word? Or that -god forbid – you disagree with him? Seriously? But I digress.

I’ve grown accustomed to the Spotify ecosystem and their playlists, their ever-so-subtle big brother watching me to generate new playlists based upon flawed metadata on the songs themselves, because every now and then they do offer something new that’s genuinely good. Well, not new, just something I missed. That part isn’t perfect but I like it.

The problem is their abysmal sound quality.

They’re running Ogg Vorbis files on a maximum of 320 kbps, which they label as “very high”. A true 320 kbps source losslessly reproduced could be a decent start, but I think that’s never happening. I think their audio is a compromise directed at people who don’t care.

They announced a “Spotify HiFi” about a year ago, though, and there were whispers about hi-res before that, so I’ve been patient. The music I cared about I bought on CD or better, and I sort of made do on that “very high” setting. But 2021 went by and morphed into 2022, and a few days ago or so, I had enough. I’m not exactly sure why; I simply had enough.

I’ve been fed with Tidal ads the last year or two on all of my social media. Big Brother does know me. So I did a couple of Google searches. Tidal was certainly one, but so was Qobuz. The other day I installed them both on my Android phone with one-month trials.

My Android phone, a Pixel 6 Pro, produces decent sound on my wireless Bluetooth Sennheiser cans, so both sounded good enough on a first listen. The Qobuz Windows app on my work laptop sounded even better – a dedicated DAC and a decent set of speakers powered by a Denon pre-amp goes a long way – so I was suitably impressed, especially when playing hi-res FLAC tracks. Classical music, to me, is a necessity, much of the time, and now I found myself discovering music again. Vivaldi, Mozart, Wagner… so many recordings to choose from, and all of them sounded better than Spotify ever could.

And no – I don’t like laptop soundcards. They’re all inferior and noisy and low-res. I bought a FiiO DAC last year to avoid them. My trusty PC sound system – Cambridge Audio, 25 or so years old – gave up the ghost early last year and after an eternity of procrastination (three weeks), I bought a set of Dali speakers and revived a Denon pre-amp I had kept because I knew I’d need it some day. Call it an awakening, but soon after I realised I’ll need a proper DAC to bypass the laptop soundcard. Enter the FiiO DAC, and enter the winter of discontent with Spotify while writing XSLT.

My personal laptop is a Linux box. The Qobuz install on Windows was fabulous, so how would it fare on Linux?

There was no Linux app. The web player was unreliable at best – it would keep the lower-res settings if running mixed-resolution lists, so I had to do a lot of tweaking, every time. No fun if you want to listen to a playlist while working. Adding it to Strawberry, my media player of choice, was no fun either. The bitrates would be correct but finding songs… just no.

Tidal was no better. There most certainly isn’t a Linux solution, and their desktop is limited to “HiFi”, which is not the hi-res option but the one below.

And here’s where this story took a dark turn familiar to anyone as invested in open source as I am. See, Tidal reserves its highest-quality settings and subscription fees to something usually appearing as “MASTER” or just “M” next to their listings. I tested some of them, and sure enough, I thought I did hear a difference. There was no bitrate given, though, nothing that actually gave the stream settings away, which I thought was a bit weird.

So I did another Google search while listening to Tidal versions of the Qobuz recordings I already had compared to Spotify. This is where I found out that MQA, the audio format behind Tidal’s master quality, is proprietary. You cannot independently verify any of its claims because you cannot access the format itself. That is to say, you cannot access the digital, bit-by-bit, output. You cannot read the specification. You just have to trust them.

Now, I don’t like closed source. I’m not opposed to people making money on their inventions, but I also don’t like unverifiable claims. The MQA format is unverifiable. You cannot read the spec, and you cannot access an output MQA digital stream to compare it to the source of that same stream. You just have to trust the people who sell you the licenses.

This was not OK, so I did some additionsl research. Long story short, here’s what you should watch next:

I’m not a bit-by-bit audiophile, I just listen very carefully because I have perfect pitch. I also care about open source, a lot. The former is because  have no choice; the latter is all about conscious decisions the last 27 years or so. Open source is what allows me to write this in the first place, and this is where I’m now. Tidal is out, Qobuz is in, and at least my music sounds better.


Lenovo Customer Support, Part Two

After a month of very little action but me being sent back and forth between support and sales at Lenovo to address what should have been a trivial problem for them to solve, I decided to write a review. See, they’ve sent me these “Following your recent purchase…” emails about once a week after I bought the laptop in April, asking for a few words to be published on their website, and I decided to comply:

Great Laptop But Abysmal Customer Support
The laptop as such is great, but Lenovo’s customer support is among the worst I have ever experienced. They’re slow, they like to pass around your case to each other to cover their tracks and play the blame game, and they don’t respect European consumer legislation. You’d think paying for 3-year premier support would help you avoid this sort of thing, but apparently not.

Of course, they turned it down. I replied to ask them what they thought was inaccurate in my review, but of course, the reply-to email address bounced. They encouraged me to write more content, though, so I copied the original review and my follow-up questions into one, and hit Publish.

They refused it again, using the same form letter and the same no-reply address, so I figured it’s all worth a blog post, at the very least. Lenovo, if you’re reading this, I will make my best effort to spread the word.

It’s been a year…

I’ve not posted for almost a year. I blame work, markup conferences, and golf, not necessarily in that order.

Re work: I’m back to being independent again, which is great. I couldn’t ask for a better boss, and I have a couple of interesting projects to complete.

Re markup conferences: XML Prague is over. I had a paper accepted with Geert Bormans, and what a paper it was. We had so much fun presenting it. Go find the video stream on Youtube if you’re interested.

Re golf: The winter’s been so mild that technically, we never had one.For the first time since I started playing some 20 years ago, I’ve not paused for the winter. It doesn’t help, though – I’m never going to be Tiger Woods.


So many changes already.

I said no to this year’s Göteborg Film Festival, having worked at film festivals since 1987 (and since 1990 at the Draken).

I didn’t submit a paper to XML Prague this year. I was there, though. Naturally.

Blogging Is Boring?

Well, it’s either that or that I’m lazy. I have been busy in real life, though, and it’s sometimes hard to prioritise a blog post, even when I have something I actually want to say.

Which I really don’t, right now.

At the Movies, Part 2

This is where I wanted to do a thorough write-up on The Hateful Eight, the new Quentin Tarantino film I watched in 70mm Ultra Panavision at the Imperial in Copenhagen, Denmark. Unfortunately, life got in the way and I’ve had no time to spend on my occasional blog, so here are the highlights:

The film itself is a typical Tarantino film, relying heavily on dialogue and actors doing what the director tells them to do. This, however, means closeups and not much else, which brings me to my next point.

Ultra Panavision is, well, ultra wide. Among the so-called letterbox formats, it’s ridiculously wide. As it’s a 70mm format, the resolution is, at least theoretically, ridiculously high, bringing me to my third point.

There are very few shots that actually require that resolution. Most of them don’t, and even though I know there are people who will disagree with me, this film would have fared better without the 70mm format. So here’s my fourth point.

The Hateful Eight, also known as H8, would have been a better movie, at least a more enjoyable one, if filmed in a less extreme format. As things stand, the ultra wide screen is a distraction, and the resolution, while nice, is not needed. The story is there regardless, but the format is, well, abused. Which brings me to my fifth point.

It is in the nature of the format itself that it lends itself better to the kind of film that makes actual use of its grandeur. It is also a format that no-one could run unaided today; the company had to provide cinemas with projectors and lenses and whatnot, or the shows would have been limited at best, even for the cinemas that do have their 70mm equipment intact. See, Ultra Panavision requires a special kind of lens that no-one has today, and very few had in the 60s when the format was last used at all. It’s not your garden variety 70mm, it’s, well, ultra special.

So to my last point: H8 does a disservice to every filmmaker wanting to film in 70mm since it uses the format wrong, in my humble opinion. It happened because Tarantino had the clout to do it, not because it was required. As a result, the presentations, including that at the Imperial, were lacking, sometimes severely, because it’s the one format that no-one can screen without help.

The film itself? Well, typically Tarantino. Think Reservoir Dogs with lots of money and hype.

At The Movies, Part 1

I’ve been at the movies twice in the last two weeks, which is extraordinary for me, these days. There was a time when I watched hundreds of movies every year but then I got kids, work got in the way, and all that. I’m now part of the lost generation, as the cinema owners call it. Before October (hmm, November?) of last year, the last one I watched was in 2008.

Anyway, first I saw the new Star Wars with my wife. I enjoyed every minute of it, to be sure, but when the end credits rolled I was disappointed, nevertheless. First and foremost, in a single stroke, they had undone everything Luke Skywalker stood for in the first three movies in one swift stroke. What took him two and a half movies took Rey the Jedi Savant about one minute. Learn about the Force? Nope, you don’t need a master, just do our Lightning Course. Nope, you don’t need to train, all you need is a first, um, victim. Nope, no need to plan ahead. Build it and they will come. Just do it, as the commercial says.

Second, the script, um, wasn’t. What I saw was rearranged from (mostly) the first three movies, you know, that best kind of flattering. Probably why people approved of the thing, probably why they thought it was what #4 should have been. And probably why I was screaming inside for all of it, in spite of enjoying it.

See, JJ Abrams is talented. Really talented. He knows how to tell a story, he knows what is going to get you. He did it twice with the Star Trek reboot and he did it now. Because a reboot it was, no doubt about it. It was disguised as a sequel but very thinly, and he rewrote the business rules in one efficient stroke.

And third, the coincidences and happy accidents that framed the story, from the stupid robot landing within bargaining sight from Rey the Savant to Han Solo and the wookie to encountering right after lift-off (with the bloody Millennium Falcon!), they were a bit much.

I miss George Lucas’s attention to detail, his sense about what all this means. Sure, I don’t miss Jar-Jar, but c’mon, he was *never* important.

Of course, I will watch #8, and if the director is as good as JJ, I will enjoy it, but the battle was lost in this one.

4k Screen and Other Linux Woes

I’ve had my gorgeous 4k screen replaced twice since August, both times because of dead pixels. It’s what they call a premium screen, so apparently one dead pixel is enough. Still, that sort of thing will happen and I’m not terribly upset.

Far worse is the mediocre support for 4k screens in Linux. The new Ubuntu version, 15.10, is a prime example. For example, there’s a Unity bug where the display scaling setting is not respected when drawing the mouse pointer over Unity components, shrinking it to its original, unscaled HiDPI size. Forcing the scaling of the pointer had to be done in 15.04, too, by adding Xcursor*size: 48 last in /etc/X11/Xresources/x11common, but in 15.10, it’s no longer enough. Unity has to be reloaded before the pointer size is on par with the rest of the desktop.

There are also GUI components and other software that still ignore the scaling altogether: the scroll bars are ridiculously thin, and, of course, most Java components, from toolbars to radio buttons and menus, remain tiny. I’m not a software developer so I don’t know what is required to handle something like that properly, but what I do know is that it all works in Windows 10 and it all works in OS X.

To make matters worse, Ubuntu 15.10 upgrades the kernel to 4.2. This would normally be a good thing, but apparently there has been some small change in the kernel that breaks the Nvidia Optimus support: the Nvidia DKMS build fails, stating that the kernel is not supported.

So here I am, making do with the Nouveau drivers while waiting for updates, and reloading Unity after every reboot. I much prefer Linux to the alternatives, but I am a bit disappointed. I went from being a dist-upgrade junkie running Debian Unstable to a vanilla Ubuntu user because the bleeding edge sometimes bleeds a bit too much and I simply wanted to run Linux as my production environment using recent hardware.

I’m not giving up, though; a Windows session is enough to remind me why.