Tuesday, January 13

My primary critique of Abundance echoes this one from Sandeep Vaheesan: essentially, Democratic industrial policy is stuck in a rut. Democrats do not believe in the public production of goods. Instead, we give private producers of goods public dollars and pray they won't raise prices, because Democrats are also against price controls. From postsecondary education to healthcare and housing, it is painfully obvious to any American suffering for want of housing, healthcare, and education — and unwilling, or unable to pay additional rents in the form of interest on top of inflated prices — that this does not work. Or, to be more accurate: it delivers temporary benefits before making everything more expensive. Private interests in capitalism are profit seeking: if you give them money, they are required by the logic of the system to try to get more of it. The cronyism decried by libertarians and neoliberals is not an aberration, it is a competitive adaptive behavior inherent to the exigencies of the economic system itself.

www.bostonreview.net The Real Path to Abundance To deliver plentiful housing and clean energy, we have to get the story right about what’s standing in the way.

This service is now... tertulia.social!

tertulia: f. Reunión de personas que se juntan habitualmente para conversar sobre algún tema.

It's getting late and I'm out of steam, but accomplishments: domain name ✅ big Apollo Auth refactor is mostly completed also, I should soon be able to override its templates by overriding the new ApolloTemplates case class:

case class ApolloTemplates(
auth: (String, String, Option[Flash]) => Html,
forgotPassword: (String, Option[Flash]) => Html,
resetPassword: (String, Option[String]) => Html
)

object ApolloTemplates {
def defaults: ApolloTemplates = ApolloTemplates(
auth = (csrf, focus, flash) =>
html.authForm(csrf, focus, flash.map(f => (f.cssClass, f.message))),
forgotPassword = (csrf, flash) =>
html.resetRequestForm(csrf, flash.map(f => (f.cssClass, f.message))),
resetPassword = (csrf, error) => html.changePasswordForm(csrf, error)
)
}

object Apollo {
def apply[F[_], U, I, E](
config: ApolloConfig[F],
services: ApolloServices[F, U, I, E]
): Apollo[F, U, I, E] = Apollo(config, ApolloTemplates.defaults, services)
}

I fixed a few bugs also where POSTs to Apollo endpoints would render immediately instead of redirect to GETs on error.

🎉

Monday, January 12

click my profile photo ;)

Ah, before this becomes a question: yes, I'm using LLMs to work on this project. Apollo, the authentication framework for Http4s I used as the backbone of this application, has been written almost entirely by me personally. It is the result of years of studying functional programming and web application software, e.g. servers, frameworks, and protocols. It has cool, funky type signatures like `OptionT[F, Throwable, Option[Post]]`, and `Kleisli[F], Request[F], Response[F]]`, and I know exactly what problems they help to solve, how they work, and why they're there. However, recently I've been using Claude Opus 4.5. A lot of the code for this microblogging platform in particular was generated by Claude, although the application itself was my idea, and I've made the decisions about architecture and libraries, etc. Claude's a pretty good designer and UI/UX engineer. I've also written a non-trivial amount of its code too: Claude is good, but it still whiffs often enough and I have to intervene.

So, thanks for the help, Claude and Anthropic!

Why are young Americans rejecting the two major political parties?

A hypothesis:

The Republican Party doesn't reflect their values.

The Democratic Party doesn't meaningfully change anything: its preferred tools, supply-side handouts, predictably increase costs, invite regulatory capture and rent-seeking, and eventual political rollback. We find ourselves surviving from crisis to crisis because our ‘fixes’ are expensive, unstable stopgaps rather than durable, structural solutions.

apnews.com Young Americans are increasingly rejecting the Democratic and Republican parties, a new poll shows New polling from Gallup shows that Americans are increasingly identifying as political independents and rejecting the labels of the two major political parties.

Iran is a victim of American imperialism. In 1953, democratically-elected Prime Minister Mohammad Mosaddegh was overthrown in a coup d'état orchestrated by the United States and the United Kingdom, at the behest of British Petroleum after Mossadegh nationalized Iran's oil resources and refused to concede a more profitable arrangement to the western powers. The Americans — the CIA — called this Operation Ajax.

This is peak Cold War logic: oil, an important natural resource, had been nationalized; the United States has, historically, frequently rejected nationalization as a form of theft (cue protest by Pierre Proudhon); the U.S. wanted access to that natural resource, or, at least to ensure it was inaccessible to its rivals, and thus it acted to "secure its interests."

Read the whole note →
Sunday, January 11

I made a few little updates today: posts now show the time of the post, and you can get a post's permalink by clicking on the time it was posted. I added OpenGraph metadata to the single post view too, for platforms that render link previews.

US Justice Department serves Federal Reserve with grand jury subpoenas

The threat of criminal charges is a consequence of the Federal Reserve setting interest rates based on our best assessment of what will serve the public, rather than following the preferences of the President. — Jerome H. Powell
www.federalreserve.gov Statement from Federal Reserve Chair Jerome H. Powell Good evening. On Friday, the Department of Justice served the Federal Reserve with grand jury subpoenas, threatening a criminal indictment related to my testi