Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
21
Pulled up at a stop light Imagine flying an x-wing down a corridor, having to turn the plane sideways to fit, a missile on your tail and closing, hitting the turbo, feeling the g force, coming up on the end of the corridor, pulling back hard on the stick the second the corridor opens, turning 90 degrees and watching the missile continue straight. Tingles. Adrenaline. Release. Or if you don’t want sci-fi, imagine winter circa 1645 in America. Several of your group almost dead from lack of food, tracking a deer, spotting it, shooting it with your bow, hitting but the deer is trying to run, fast twitch muscles charging and leaping, plunging a knife into its heart and knowing at that moment everyone is going to be okay. Heart rate calming laying on the warm deer. The modern world doesn’t have any real experiences like this any more. Survival has become a technocratic plod, making the right boring and careful decisions. There’s only fake experiences like the above, video games, sports, and...
a week ago

More from the singularity is nearer

The Elon Swing Voter

I’m getting on a plane back to America tonight, been away for over 3 months. It sort of fills me with dread and anxiety. I remember going to the Apple store before I was leaving, the uhhhhhhh from the sales people was awful. 0 pride. Nobody cares. So different from the sales people at the Hong Kong Apple store. America has had its social fabric torn to shreds. I’ll be back for a month, and I will see if it’s how I remember it, but I’m really not bullish. Wokism is really just Protestantism evolved, it’s not an aberration. I don’t think still fundamentally religious US society will fair very well with AI when it becomes clear just how unspecial people are. Sidenote, I’m in 7th place on Advent of Code thanks to AI, and it is progressing so fast. A capability that was unknown to the world a few years ago. This is the only real issue that matters. It will change society more than you can possibly believe. I’m predicting Chinese religion, a “combination of Buddhism and Taoism with a Confucian worldview” will fair much better with AI. You can already see this in surveys of AI acceptance. In 2016 it was clear Trump became a kingmaker for the Republican party. While he couldn’t guarantee an election win, he could hand victory to the Democrats if he went against whoever the Republicans nominated. All three Republican nominees since have been Trump. Elon represents a similar force, but it’s easy to imagine him supporting the Democrats next election if things don’t go well this cycle. It’s possible Elon now actually has the complete power to choose the winner. I know I’m an Elon swing voter. While there’s things I don’t agree with him on, it’s hard to imagine the clowns in the political establishment offering something remotely compelling against him. If the Democrats want a chance next election cycle, they pick someone like Mark Cuban and get Elon’s support. I predict they won’t. Anti-Elon will not be a tenable political position, and this is a good thing. Godspeed to those who try. Even if I stay in the country, I’m leaving California. They need to turn around and get pro Musk people in government, or the mass exodus will continue. Also looking into moving my companies out of Delaware. Dead end. Now, within a everyone is pro Elon (pro-growth) political framework, there are still choices. Isolationism, tariffs, abortion, infrastructure spending, social safety net, etc… Once we are in that framework, politics can return, and there’s hope for America from a political standpoint. But if being anti-growth remains in the Overton window, there’s little hope. Does anyone think there’s hope for Europe? Culturally, there’s a far deeper problem. The soul isn’t real, and this will be a very hard pill for many westerners to swallow. There’s already so little social fabric and this will only make it worse. In rich Western society people’s expectations exceed their abilities. AI will pummel this even harder. All the clowns who worked jobs that were detrimental to society for fake money. The money is the map, not the territory! If you pervert a map you don’t change the territory, you are just lost. We’ll see how it is being back, but I’m leaning towards leaving and applying for residency here. Btw, how does the US still tax nonresidents? Will be nice when the empire decays to the point it can no longer do that, the influence of the US on the payment rails of the world needs to go.

a month ago 50 votes
The Soul

ugh the deep state didn’t come for me I just realized that what gets engagement is so boring. you wish there was a deep state that came for me. then at least there would be some adults in the room. I used to fantasize about being or kissing Skrillex the whole album is bangers btw. that’s my third quote from it. and now the blog post. Western society is predicated around the existence of the individual, and what really is the individual without the soul, or consciousness if you want the secular term. I used to believe in the individual, but I hadn’t really thought about it that much. You are a machine learning algorithm. You have some priors in your DNA. You learn on data, RL style because your actions affect the next data you see; the dataset depends on the model. There’s no room in this for an I. Control the DNA, control the data, control the outcome. Sad but true. How much of this graph is people starting to figure this out? (US religious affiliation) Can Christianity survive the death of the soul? Can liberalism survive the death of consciousness? How will it cope harder as progress in ML makes this belief more and more ridiculous? There will be everything on a continuous spectrum from logic gates to human level and beyond. Which models are individuals? People used to believe the sun rose cause some dude pulled it in a chariot. People still believe they aren’t computers. Like the chariot people, they are just as wrong.

2 months ago 40 votes
nuke/acc

I wrote a tweet about this but deleted it, since it’s a much more nuanced topic than can be discussed there. Nuclear weapons are the Chekhov’s gun on the world stage. When, if ever, are they going to be fired? When should they be? I suspect this is not a question a lot of people give much thought to, since it’s obvious nukes are terrible and we should never use them, right? Mutually assured destruction and all that. But what if you think about this in a long term historical context? Surely in the past some terrible weapon was created and there was a great moral panic about it, probably something today that we consider quaint. I suspect that in 100 years nuclear weapons will seem quaint. It’s so easy to imagine weapons that are way more horrible, think drone swarms and bioweapons. Oh that’s cute, it blows up a city. This new weapon seeks out and kills every <insert race here> person on earth and tortures them before they die. Even worse, these sort of weapons can be deployed tactically, where for nukes that’s actually kind of hard. Nobody wants an irradiated pile of rubble. With that understood, when do we want to fire the nukes? Firstly, they will not kill all humans. Probably around a third, on par with the black death or the Khmer Rouge. And they will not create a nuclear winter ending all life. They may change the climate, but not more than the asteroid that killed the dinosaurs. I understand the loss of short-term growth is a hard pill to swallow, but would we be better or worse off in 100 years if we fired all the nukes today? It is not clear to me that the answer is worse. The nukes will force systems to decentralize and become less complex, but in exchange those systems will become more robust. Will Google survive an all-out nuclear exchange? Will the Bitcoin blockchain? “If you say why not bomb them tomorrow, I say why not today? If you say today at 5 o’clock, I say why not one o’clock?” – John von Neumann The more I think about this, the more I think it’s not the worst idea. I’m not a terrorist, and will do nothing to actually further this cause, but it’s an interesting thought experiment. Once the gun has been placed on the stage, it will be fired. Now or later? If you are an accelerationist, you want whatever is going to happen to happen sooner. Welcome to nuke/acc

2 months ago 45 votes
A Place for Me

Have all the jobs been fake for years? Read this, a NASA critique from 1992. Basically society is run by useless people making work for other useless people so that together they can all alleviate their deep concern about not having a place in society. Elon has a bigger tent of types of people that can help on his mission than I do, and even that tent is too small to include most people. I think that’s the deep reason for the Elon haters, it’s that they don’t see their place in his society. I lashed out at a fan in Bangkok, when he told me his friend was a fan of mine, I replied with “why do I care?” I was already in a bad mood, normally I’d be nicer and if you read this sorry it was directed at you, but I do sort of stand by the point. Low commitment from lots of people is useless. I’m not going to milk you for merch sales. By the way, if you ever see me in public, I don’t care that you are a fan, I don’t understand why people think I would. If you want to talk, why would you open with that? Tell me something technical that I don’t know. Then we are having a conversation. We are in the middle of a revolution. Modern AI is the cherry on top, it’s just continuing the same trendline that had spreadsheets replace 4 bookkeepers with 1. The industrial revolution required labor at mass scale, hence we got liberal democracy. But I think it’s over. If we don’t have a society where there’s a place for most people, governance will have to change. Though don’t worry if you consider yourself one of those useless people, I do not think your life will become materially bad. Between the fact that it’s cheap to keep people alive, fed, and entertained, and that everyone no matter how secure believes they may be useless, it will be a lot more like retirement. UBI is a double edged sword. If you take it, you are no longer meaningfully a citizen. It remains to be seen how this will all shape up, but the unprofitablity of the average person in rich countries cannot be ignored for too much longer. Their expectations exceed their market value, hence why protectionist economics to bring manufacturing back to America will not work. Every society has its problems, but as I’ve been spending more time in China I think they are living in the future. Your average American has no idea how nice the cities are here. Walkable. I can’t get over how quiet the roads are, Chinese brand electric cars with big touch screens. High trust society. I also learned that the ubiquitous mobile payments are not due to heavy handed government policy, but rather free market choice. And after you have used Alipay for a bit it really is convenient. Unlike credit cards, you can send money phone to phone by scanning a barcode, and I don’t think there’s a 3% fee sapping the economy. Of course, a strong government is a devil’s bargain. When things are good they are really good, but when things go bad they can go really bad. However, things are good now, and it’s anyone’s guess how it plays out. If Yudkowskian AI safety is a real concern, you might need a strong government to have any hope. Here’s a simple chart that shows where life will improve. These blog posts have become a bit of a travel diary. But these questions are way too big to ignore, and I think about them a lot. The optimism after the election was short lived, we are going to get bullshit protectionism and obstructionism. Are we ready to strike a new deal restructuring Western society? I suspect not. The neoluddites still think they have a chance. But structurally they can’t ever succeed, they can just choose if they want to bring the West down with them or not.

2 months ago 51 votes

More in programming

Adding auto-generated cover images to EPUBs downloaded from AO3

I was chatting with a friend recently, and she mentioned an annoyance when reading fanfiction on her iPad. She downloads fic from AO3 as EPUB files, and reads it in the Kindle app – but the files don’t have a cover image, and so the preview thumbnails aren’t very readable: She’s downloaded several hundred stories, and these thumbnails make it difficult to find things in the app’s “collections” view. This felt like a solvable problem. There are tools to add cover images to EPUB files, if you already have the image. The EPUB file embeds some key metadata, like the title and author. What if you had a tool that could extract that metadata, auto-generate an image, and use it as the cover? So I built that. It’s a small site where you upload EPUB files you’ve downloaded from AO3, the site generates a cover image based on the metadata, and it gives you an updated EPUB to download. The new covers show the title and author in large text on a coloured background, so they’re much easier to browse in the Kindle app: If you’d find this helpful, you can use it at alexwlchan.net/my-tools/add-cover-to-ao3-epubs/ Otherwise, I’m going to explain how it works, and what I learnt from building it. There are three steps to this process: Open the existing EPUB to get the title and author Generate an image based on that metadata Modify the EPUB to insert the new cover image Let’s go through them in turn. Open the existing EPUB I’ve not worked with EPUB before, and I don’t know much about it. My first instinct was to look for Python EPUB libraries on PyPI, but there was nothing appealing. The results were either very specific tools (convert EPUB to/from format X) or very unmaintained (the top result was last updated in April 2014). I decied to try writing my own code to manipulate EPUBs, rather than using somebody else’s library. I had a vague memory that EPUB files are zips, so I changed the extension from .epub to .zip and tried unzipping one – and it turns out that yes, it is a zip file, and the internal structure is fairly simple. I found a file called content.opf which contains metadata as XML, including the title and author I’m looking for: <?xml version='1.0' encoding='utf-8'?> <package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="uuid_id"> <metadata xmlns:opf="http://www.idpf.org/2007/opf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:calibre="http://calibre.kovidgoyal.net/2009/metadata"> <dc:title>Operation Cameo</dc:title> <meta name="calibre:timestamp" content="2025-01-25T18:01:43.253715+00:00"/> <dc:language>en</dc:language> <dc:creator opf:file-as="alexwlchan" opf:role="aut">alexwlchan</dc:creator> <dc:identifier id="uuid_id" opf:scheme="uuid">13385d97-35a1-4e72-830b-9757916d38a7</dc:identifier> <meta name="calibre:title_sort" content="operation cameo"/> <dc:description><p>Some unusual orders arrive at Operation Mincemeat HQ.</p></dc:description> <dc:publisher>Archive of Our Own</dc:publisher> <dc:subject>Fanworks</dc:subject> <dc:subject>General Audiences</dc:subject> <dc:subject>Operation Mincemeat: A New Musical - SpitLip</dc:subject> <dc:subject>No Archive Warnings Apply</dc:subject> <dc:date>2023-12-14T00:00:00+00:00</dc:date> </metadata> … That dc: prefix was instantly familiar from my time working at Wellcome Collection – this is Dublin Core, a standard set of metadata fields used to describe books and other objects. I’m unsurprised to see it in an EPUB; this is exactly how I’d expect it to be used. I found an article that explains the structure of an EPUB file, which told me that I can find the content.opf file by looking at the root-path element inside the mandatory META-INF/container.xml file which is every EPUB. I wrote some code to find the content.opf file, then a few XPath expressions to extract the key fields, and I had the metadata I needed. Generate a cover image I sketched a simple cover design which shows the title and author. I wrote the first version of the drawing code in Pillow, because that’s what I’m familiar with. It was fine, but the code was quite flimsy – it didn’t wrap properly for long titles, and I couldn’t get custom fonts to work. Later I rewrote the app in JavaScript, so I had access to the HTML canvas element. This is another tool that I haven’t worked with before, so a fun chance to learn something new. The API felt fairly familiar, similar to other APIs I’ve used to build HTML elements. This time I did implement some line wrapping – there’s a measureText() API for canvas, so you can see how much space text will take up before you draw it. I break the text into words, and keeping adding words to a line until measureText tells me the line is going to overflow the page. I have lots of ideas for how I could improve the line wrapping, but it’s good enough for now. I was also able to get fonts working, so I picked Georgia to match the font used for titles on AO3. Here are some examples: I had several ideas for choosing the background colour. I’m trying to help my friend browse her collection of fic, and colour would be a useful way to distinguish things – so how do I use it? I realised I could get the fandom from the EPUB file, so I decided to use that. I use the fandom name as a seed to a random number generator, then I pick a random colour. This means that all the fics in the same fandom will get the same colour – for example, all the Star Wars stories are a shade of red, while Star Trek are a bluey-green. This was a bit harder than I expected, because it turns out that JavaScript doesn’t have a built-in seeded random number generator – I ended up using some snippets from a Stack Overflow answer, where bryc has written several pseudorandom number generators in plain JavaScript. I didn’t realise until later, but I designed something similar to the placeholder book covers in the Apple Books app. I don’t use Apple Books that often so it wasn’t a deliberate choice to mimic this style, but clearly it was somewhere in my subconscious. One difference is that Apple’s app seems to be picking from a small selection of background colours, whereas my code can pick a much nicer variety of colours. Apple’s choices will have been pre-approved by a designer to look good, but I think mine is more fun. Add the cover image to the EPUB My first attempt to add a cover image used pandoc: pandoc input.epub --output output.epub --epub-cover-image cover.jpeg This approach was no good: although it added the cover image, it destroyed the formatting in the rest of the EPUB. This made it easier to find the fic, but harder to read once you’d found it. An EPUB file I downloaded from AO3, before/after it was processed by pandoc. So I tried to do it myself, and it turned out to be quite easy! I unzipped another EPUB which already had a cover image. I found the cover image in OPS/images/cover.jpg, and then I looked for references to it in content.opf. I found two elements that referred to cover images: <?xml version="1.0" encoding="UTF-8"?> <package xmlns="http://www.idpf.org/2007/opf" version="3.0" unique-identifier="PrimaryID"> <metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf"> <meta name="cover" content="cover-image"/> … </metadata> <manifest> <item id="cover-image" href="images/cover.jpg" media-type="image/jpeg" properties="cover-image"/> … </manifest> </package> This gave me the steps for adding a cover image to an EPUB file: add the image file to the zipped bundle, then add these two elements to the content.opf. Where am I going to deploy this? I wrote the initial prototype of this in Python, because that’s the language I’m most familiar with. Python has all the libraries I need: The zipfile module can unpack and modify the EPUB/ZIP The xml.etree or lxml modules can manipulate XML The Pillow library can generate images I built a small Flask web app: you upload the EPUB to my server, my server does some processing, and sends the EPUB back to you. But for such a simple app, do I need a server? I tried rebuilding it as a static web page, doing all the processing in client-side JavaScript. That’s simpler for me to host, and it doesn’t involve a round-trip to my server. That has lots of other benefits – it’s faster, less of a privacy risk, and doesn’t require a persistent connection. I love static websites, so can they do this? Yes! I just had to find a different set of libraries: The JSZip library can unpack and modify the EPUB/ZIP, and is the only third-party code I’m using in the tool Browsers include DOMParser for manipulating XML I’ve already mentioned the HTML <canvas> element for rendering the image This took a bit longer because I’m not as familiar with JavaScript, but I got it working. As a bonus, this makes the tool very portable. Everything is bundled into a single HTML file, so if you download that file, you have the whole tool. If my friend finds this tool useful, she can save the file and keep a local copy of it – she doesn’t have to rely on my website to keep using it. What should it look like? My first design was very “engineer brain” – I just put the basic controls on the page. It was fine, but it wasn’t good. That might be okay, because the only person I need to be able to use this app is my friend – but wouldn’t it be nice if other people were able to use it? If they’re going to do that, they need to know what it is – most people aren’t going to read a 2,500 word blog post to understand a tool they’ve never heard of. (Although if you have read this far, I appreciate you!) I started designing a proper page, including some explanations and descriptions of what the tool is doing. I got something that felt pretty good, including FAQs and acknowledgements, and I added a grey area for the part where you actually upload and download your EPUBs, to draw the user’s eye and make it clear this is the important stuff. But even with that design, something was missing. I realised I was telling you I’d create covers, but not showing you what they’d look like. Aha! I sat down and made up a bunch of amusing titles for fanfic and fanfic authors, so now you see a sample of the covers before you upload your first EPUB: This makes it clearer what the app will do, and was a fun way to wrap up the project. What did I learn from this project? Don’t be scared of new file formats My first instinct was to look for a third-party library that could handle the “complexity” of EPUB files. In hindsight, I’m glad I didn’t find one – it forced me to learn more about how EPUBs work, and I realised I could write my own code using built-in libraries. EPUB files are essentially ZIP files, and I only had basic needs. I was able to write my own code. Because I didn’t rely on a library, now I know more about EPUBs, I have code that’s simpler and easier for me to understand, and I don’t have a dependency that may cause problems later. There are definitely some file formats where I need existing libraries (I’m not going to write my own JPEG parser, for example) – but I should be more open to writing my own code, and not jumping to add a dependency. Static websites can handle complex file manipulations I love static websites and I’ve used them for a lot of tasks, but mostly read-only display of information – not anything more complex or interactive. But modern JavaScript is very capable, and you can do a lot of things with it. Static pages aren’t just for static data. One of the first things I made that got popular was find untagged Tumblr posts, which was built as a static website because that’s all I knew how to build at the time. Somewhere in the intervening years, I forgot just how powerful static sites can be. I want to build more tools this way. Async JavaScript calls require careful handling The JSZip library I’m using has a lot of async functions, and this is my first time using async JavaScript. I got caught out several times, because I forgot to wait for async calls to finish properly. For example, I’m using canvas.toBlob to render the image, which is an async function. I wasn’t waiting for it to finish, and so the zip would be repackaged before the cover image was ready to add, and I got an EPUB with a missing image. Oops. I think I’ll always prefer the simplicity of synchronous code, but I’m sure I’ll get better at async JavaScript with practice. Final thoughts I know my friend will find this helpful, and that feels great. Writing software that’s designed for one person is my favourite software to write. It’s not hyper-scale, it won’t launch the next big startup, and it’s usually not breaking new technical ground – but it is useful. I can see how I’m making somebody’s life better, and isn’t that what computers are for? If other people like it, that’s a nice bonus, but I’m really thinking about that one person. Normally the one person I’m writing software for is me, so it’s extra nice when I can do it for somebody else. If you want to try this tool yourself, go to alexwlchan.net/my-tools/add-cover-to-ao3-epubs/ If you want to read the code, it’s all on GitHub. [If the formatting of this post looks odd in your feed reader, visit the original article]

5 hours ago 3 votes
Non-alcoholic apéritifs

I’ve been doing Dry January this year. One thing I missed was something for apéro hour, a beverage to mark the start of the evening. Something complex and maybe bitter, not like a drink you’d have with lunch. I found some good options. Ghia sodas are my favorite. Ghia is an NA apéritif based on grape juice but with enough bitterness (gentian) and sourness (yuzu) to be interesting. You can buy a bottle and mix it with soda yourself but I like the little cans with extra flavoring. The Ginger and the Sumac & Chili are both great. Another thing I like are low-sugar fancy soda pops. Not diet drinks, they still have a little sugar, but typically 50 calories a can. De La Calle Tepache is my favorite. Fermented pineapple is delicious and they have some fun flavors. Culture Pop is also good. A friend gave me the Zero book, a drinks cookbook from the fancy restaurant Alinea. This book is a little aspirational but the recipes are doable, it’s just a lot of labor. Very fancy high end drink mixing, really beautiful flavor ideas. The only thing I made was their gin substitute (mostly junipers extracted in glycerin) and it was too sweet for me. Need to find the right use for it, a martini definitely ain’t it. An easier homemade drink is this Nonalcoholic Dirty Lemon Tonic. It’s basically a lemonade heavily flavored with salted preserved lemons, then mixed with tonic. I love the complexity and freshness of this drink and enjoy it on its own merits. Finally, non-alcoholic beer has gotten a lot better in the last few years thanks to manufacturing innovations. I’ve been enjoying NA Black Butte Porter, Stella Artois 0.0, Heineken 0.0. They basically all taste just like their alcoholic uncles, no compromise. One thing to note about non-alcoholic substitutes is they are not cheap. They’ve become a big high end business. Expect to pay the same for an NA drink as one with alcohol even though they aren’t taxed nearly as much.

2 days ago 5 votes
It burns

The first time we had to evacuate Malibu this season was during the Franklin fire in early December. We went to bed with our bags packed, thinking they'd probably get it under control. But by 2am, the roaring blades of fire choppers shaking the house got us up. As we sped down the canyon towards Pacific Coast Highway (PCH), the fire had reached the ridge across from ours, and flames were blazing large out the car windows. It felt like we had left the evacuation a little too late, but they eventually did get Franklin under control before it reached us. Humans have a strange relationship with risk and disasters. We're so prone to wishful thinking and bad pattern matching. I remember people being shocked when the flames jumped the PCH during the Woolsey fire in 2017. IT HAD NEVER DONE THAT! So several friends of ours had to suddenly escape a nightmare scenario, driving through burning streets, in heavy smoke, with literally their lives on the line. Because the past had failed to predict the future. I feel into that same trap for a moment with the dramatic proclamations of wind and fire weather in the days leading up to January 7. Warning after warning of "extremely dangerous, life-threatening wind" coming from the City of Malibu, and that overly-bureaucratic-but-still-ominous "Particularly Dangerous Situation" designation. Because, really, how much worse could it be? Turns out, a lot. It was a little before noon on the 7th when we first saw the big plumes of smoke rise from the Palisades fire. And immediately the pattern matching ran astray. Oh, it's probably just like Franklin. It's not big yet, they'll get it out. They usually do. Well, they didn't. By the late afternoon, we had once more packed our bags, and by then it was also clear that things actually were different this time. Different worse. Different enough that even Santa Monica didn't feel like it was assured to be safe. So we headed far North, to be sure that we wouldn't have to evacuate again. Turned out to be a good move. Because by now, into the evening, few people in the connected world hadn't started to see the catastrophic images emerging from the Palisades and Eaton fires. Well over 10,000 houses would ultimately burn. Entire neighborhoods leveled. Pictures that could be mistaken for World War II. Utter and complete destruction. By the night of the 7th, the fire reached our canyon, and it tore through the chaparral and brush that'd been building since the last big fire that area saw in 1993. Out of some 150 houses in our immediate vicinity, nearly a hundred burned to the ground. Including the first house we moved to in Malibu back in 2009. But thankfully not ours. That's of course a huge relief. This was and is our Malibu Dream House. The site of that gorgeous home office I'm so fond to share views from. Our home. But a house left standing in a disaster zone is still a disaster. The flames reached all the way up to the base of our construction, incinerated much of our landscaping, and devoured the power poles around it to dysfunction. We have burnt-out buildings every which way the eye looks. The national guard is still stationed at road blocks on the access roads. Utility workers are tearing down the entire power grid to rebuild it from scratch. It's going to be a long time before this is comfortably habitable again. So we left. That in itself feels like defeat. There's an urge to stay put, and to help, in whatever helpless ways you can. But with three school-age children who've already missed over a months worth of learning from power outages, fire threats, actual fires, and now mudslide dangers, it was time to go. None of this came as a surprise, mind you. After Woolsey in 2017, Malibu life always felt like living on borrowed time to us. We knew it, even accepted it. Beautiful enough to be worth the risk, we said.  But even if it wasn't a surprise, it's still a shock. The sheer devastation, especially in the Palisades, went far beyond our normal range of comprehension. Bounded, as it always is, by past experiences. Thus, we find ourselves back in Copenhagen. A safe haven for calamities of all sorts. We lived here for three years during the pandemic, so it just made sense to use it for refuge once more. The kids' old international school accepted them right back in, and past friendships were quickly rebooted. I don't know how long it's going to be this time. And that's an odd feeling to have, just as America has been turning a corner, and just as the optimism is back in so many areas. Of the twenty years I've spent in America, this feels like the most exciting time to be part of the exceptionalism that the US of A offers. And of course we still are. I'll still be in the US all the time on both business, racing, and family trips. But it won't be exclusively so for a while, and it won't be from our Malibu Dream House. And that burns.

2 days ago 6 votes
Slow, flaky, and failing

Thou shalt not suffer a flaky test to live, because it’s annoying, counterproductive, and dangerous: one day it might fail for real, and you won’t notice. Here’s what to do.

3 days ago 7 votes
Name that Ware, January 2025

The ware for January 2025 is shown below. Thanks to brimdavis for contributing this ware! …back in the day when you would get wares that had “blue wires” in them… One thing I wonder about this ware is…where are the ROMs? Perhaps I’ll find out soon! Happy year of the snake!

3 days ago 5 votes