Paul Ryan is the best speaker of the House in a generation. When he speaks, we should listen.

Before Wednesday, the last noteworthy speech Ryan gave set a very smart agenda for fixing the Republican Party. But on Wednesday, he tackled an even bigger task: making our political discourse more civilized.

In a way, the entire speech was a long subtweet of Donald Trump. Ryan bashed politicians who use divisive and inflammatory rhetoric and pander to identity politics. Gee, who could he have had in mind? Instead, Ryan insisted, we need a battle of ideas. Politicians need to have greater self-respect and higher standards.

But the speech was about more than that. The most widely-noted part was his critique of himself for using the rhetoric of "makers" and "takers" when it comes to job creators and recipients of government assistance. Not only was that unnecessarily harmful to the body politic, it was wrong on the merits, Ryan said he learned. Indeed, one of Ryan's biggest pushes has been on poverty and criminal justice reform, concerns that by all accounts are genuine and deeply felt.

Ryan's points are true. They were also important to say, now more than ever. But he didn't go far enough.

The first reason is because his criticism of Trump's tone is one thing, but Trump is about much more than tone. Trump is about identity politics. He's about terrorism, economic desperation, and social insecurity. As Ryan ought to know better than anyone, responses to such problems don't just call for better messaging. They call for better policy. My colleague Paul Waldman thinks the only plausible answer to this dilemma is simply to copy the policies of the left. Paul Ryan would strongly disagree, and so would I.

But while we may believe conservative policy can address the problems that Trump points to, the time to put some meat on those bones is soon. Now, Ryan is still working on an ambitious policy agenda he wants to put forward, and he is decentralizing this process in the House, so he can't preempt his own process. But he can at least point to the depth of the problem. Meanwhile, the clock is ticking.

But the second reason he didn't go far enough was because his criticism of Trump was implicit. The hour is much too late for passive-aggressive tsk-tsks. As Ross Douthat pointed out, many GOP establishment figures are afraid to call Trump out and are instead trying to undermine him behind the scenes, but this approach is doomed to failure. Trump is too far along and the phenomenon much too big. It's put up or shut up time. It's important to call for civility and high-mindedness, but this is a blitzkrieg. While it's important to note that Nazis were bad people, moral proclamations alone can't stop a Panzer division.

In response to Ryan's speech, The Weekly Standard's Jay Cost tweeted a quote from Thomas Jefferson which seems perfectly apposite:

It's too late, too Trump for niceties.