JSON is dangerous (and slow)

Okay, so, I ranted a bit on YouTube. Oops. Here’s an accompanying longread, to waste even more of your life. Here’s the TLDR(oW) version: JSON is a ubiquitous structured data format, used for both data storage and exchange. But it’s slow, and what’s worse, it’s dangerous. We should use other formats, probably MessagePack. JSON is a weird accident of history. It grew out of Douglas Crockford’s need to be able to send messages between server and browser.

GUI Toolkits Suck - But they don't have to

For years, graphical widget sets, or UI toolkits, or whatever you want to call them, have sucked. They suck for a wide variety of reasons, but broadly speaking there are a few classes of problems that UI toolkits fail at some or all of: Platform specificity: They don’t work on all platforms. Language specificity: They’re written in a language that is either difficult to make bindings for (like C++, because name mangling), or is interpreted, making binding to it undesirable if not practically impossible.

Relocated - for now

In mid-December, I left Iceland. Not forever, not exactly on vacation either. Not with a concrete plan, but a loose one. Flexible to my needs and desires. Basically, being in Iceland was getting to me. Between the cold and the darkness, and the feeling that I had somehow gotten into an unhealthy pattern of working too much and my only non-work activities being socializing with alcohol or playing the occasional game.

Parsing XML

XML is, as formats go, terrible. If we think about what it’s doing, it’s outlining a hierarchy of nested nodes, each of which can have a number of attributes. Nodes can additionally contain CDATA or PCDATA, which practically speaking are typically treated as their own nodes. A few magic nodes exist, mostly for compatability with SGML. It’s a tree. There are lots of other ways of describing trees textually. Some are bad, some are good.

2022 in books

The books I read in 2022, in order of date of completion: Innovation and Entrepreneurship, Peter Drucker Stolen Focus, Johan Hari The Call of the Wild, Jack London Brave New World, Aldous Huxley Breakfast at Tiffany’s, Truman Capote Metamorphosis, Franz Kafka The Law, Frederic Bastiat The Curious Case of Benjamin Button, F. Scott Fitzgerald Data Oriented Design, Richard Fabian The Strange Case of Dr Jekyll and Mr Hyde, Robert Louis Stevenson How to Avoid a Climate Disaster, Bill Gates Putinomics, Chris Miller The Dawn of Everything, David Graeber and David Wengrow Phreaks, Matthew Derby Master of the Senate, Robert Caro Airframe, Michael Crichton The Passage of Power, Robert Caro Caffeine, Michael Pollan Say Nothing, Patrick Radden Keefe The Black Pages, Nnedi Okorafor Fall, Neal Stephenson Global Brain, Howard Bloom Gathering Moss: A Natural and Cultural History of Mosses, Robin Wall Kimmerer Ethiopia, Wendy McElroy The Lathe of Heaven, Ursula Le Guin Mr.

Busy little Hobgoblins

Emerson wrote that a foolish consistency is the hobgoblin of little minds. Arguably, a complete lack of consistency is another hobgoblin, a Puck by whom I am mischievously harassed, at least insofar as this weblog is concerned. Since last post, I’ve been working hard, but also getting in some play. I went with my siblings to California for a bit, and got some time in Vestmannaeyjar and Spain and what not.

Going home

Sitting at an airport, awaiting a flight, is a fundamentally unenjoyable experience. You know that you still have to sit through the boredom of the flight in an uncomfortable seat, in full knowledge that they’d make you stand if only they could do so while maintaining mirage of safety. You know the face mask you’re wearing will hug your face for way more hours than it is designed to be effective, and that this does not matter anyway, since it’s largely a performative gesture.

In Belgrade

It is really alarming to see the nonsense on the front pages of the Serbian media today, with claims that Ukraine has attacked Russia. Come the fuck on, really. As much as I like a lot of people in Serbia, I cannot for the life of me understand the profound aversion to truth that appears so commonplace here. Thankfully, there are some excellent people trying to promote truth. I shall visit with some of them later.

In Serbia

Working on the road is always a bit of a double edged sword. Today I’m in Kragujevac, Serbia, where I’ve just emerged from an 8:30 hour marathon meeting, conducted in three languages, discussing complex topics relating to physics, chemistry and engineering. My brain is melty. Despite this, I’m feeling a strong urge to get some more work done tonight. Perhaps some code later. Perhaps. Tomorrow to Belgrade, and then back home on Wednesday.

Notes from Goa Project talk

Some weeks ago I gave a talk at The Goa Project. I ran into my notes from the event and although I don’t have much time to process them into something coherent at this point in time, I figure it doesn’t hurt to put these somewhere more useful than oblivion. The warning implicit in such notes is of course that they were written out hastily and are lacking in context; the real context exists only in the recordings of the event where these notes were used.