markjgsmith

Leo Laporte on AI

In a recent This Week in Tech episode Leo Laporte really nails some of the major issues with the AI gold rush. (0:15:22)

We have problems on both sides. One is garbage content generated by these AIs, because they can’t distinguish between a joke and a genuine suggestion. The other is they are disintermediating the original source of all this content so that users don’t have to click through, they can just read the generated page. And by the way these AI companies are burning money because the creation of these LLMs is so hideously expensive, they can’t possibly generate enough revenue to pay for it. So the whole thing is a house of cards.

He then goes on

It feels like we’ve replaced a system that could never work, the internet, with an even more chaotic system that requires an interlocking payment system, with money out but no money in. It feels like it’s not making it better, it could make it worse.

And finally

It does feel like it’s almost a Ponzi scheme, where they're just going to keep shifting the responsibility for payment, and nothing ever really gets fixed. It’s like Uber. Eventually it feels like it’s going to collapse in on itself.

The full discussion is really insightfull. There are a lot of issues people are ignoring. Real fundamental things like how the making of the content actually gets paid for.

Static site generator archives plugin update

I got the latest archives plugin, which now supports the everything page, fully working in staging yesterday. It was pretty difficult not only because of string headwinds from a very warpathy world, but also because it was technically quite a challenge. The everything page is built from a dataset created by merging multiple datasets. What this means is that it's no longer so trivial to build the correct urls on each page because the data could be in many different locations depending on which item it is.

One cool thing I was able to improve on the original implementation is to use the regular data source primitive, but modify it so that's where the data merging occurs. I had tried this initially but, for whatever reason, I had hit a wall. Perhaps there was another bug blocking at the time, who knows. In any case I ended up implementing the data merge in another part of the render process. It worked but was a bit clunky. I guess some of the housekeeping and refactoring from the past few weeks must have cleared the path, because when I tried to create a merged data source it all worked wonderfully.

It's nice when that happens. It's a sort of validation that the system's primitives, the basic building blocks that you combine together, are the right shape. It makes things much more clear to understand, rather than have these special cases that get around the fact that the primitives don't provide the needed functionality.

There was still quite a bit of tedious work after that, both removing the special casing, and updating the code to use the merged data. Of course I ran into build minute issues again and, though I was able to really improve the module caching logic, in the end it wasn't enough, and yesterday evening I basically ran out of build minutes again. I think I've still got a few to publish the odd post on the website, but basically actually merging and deploying the new archives plugin will now have to wait until next month when my build minutes reset.

It's so frustrating, you pull out all the stops, physically put your body through lots of pain, battle through tsunami after tsunami from a world constantly on the warpath, only to find you haven't quite got enough resources. And it's made worse by bizare bugs in Github Actions that cause jobs to occasionally get stuck when you aren't looking, wasting precious build minutes.

Anyway, roll on July, looks like it will be a 4th of July release for the completed everything page including archive pages.