IoT information security will never come under the prevailing business model

The business model for smart devices in the home is shaping up to be simple and bad: cheap hardware and no service contracts. That sounds great for consumers — after all, why should I pay $100 for a smart power outlet made of a $0.40 microcontroller and a $1 relay, and why should I have to pay a monthly fee to switch it — but it is going to have serious negative ramifications.

Let me start by saying that many bits have already been spilled about basic IoT security:

  • making sure that messages sent to and from your device back to the manufacturer cannot be faked or intercepted
  • making sure that your IoT device is not hacked remotely, turning it into someone else’s IoT device
  • making sure that your data, when it is at rest in the vendor’s systems is not stolen and misused

 

As things stand, none of that is going to happen satisfactorily, primarily because of incompatible incentives. When you sell a device for the raw cost of its hardware, with minimal markups and no opportunity for ongoing revenue, you also have no incentive for ongoing security work. Or any kind of work for that matter. If you bought the device on the “razor + blade” model, where the device was cheap, but important revenue was based on your continued use of the product, things might be different.

Worse than that, however, in order to find new revenue streams (immediately, or at potential future streams), vendors have strong incentives to collect all the data they can from the device. You do not know — even when the devices are operating as designed — exactly what they are doing. They are in essence little listening bugs willingly planted all over your home, and you do not know what kind of information they are exfiltrating, nor do you know who is ultimately receiving that information.

I think there is a solution to this problem, if people want it, and it requires two basic parts to work properly:

1.

We need a business model for smart devices that puts strong incentives in place for vendors to continue to support their products. This will never happen with the cheapie Fry’s Electronics special IoT Doohickey of the Week. Instead, we probably need a real engagement with sticks (liability) and carrots (enhanced revenue) that are driven by ongoing contractual engagement. That is, money should continue to flow.

2.

We need a standardized protocol for IoT that provides for a gateway at the home, and encrypted data on both sides of the gateway, but with the gateway owner having access to the encryption keys on the inner side of the gateway. The standardized protocol would have fields for the vendor name and hosts, as well as a human readable json-style payload — and a rule that nothing can be double-encrypted in the payload, keeping it from the eyes of the user.

Under such an arrangement, users, or their gateways acting as proxies for them, could monitor what is coming and going. You could program your gateway, for example, to block unnecessary information from http messages sent by your device.

Of course, the vendors, seeing the blocked information might decide not to provide their service, and that’s their right, but at least everyone would know the score.

 

Will this happen? Well, I think vendors with the long view of things would probably see #1 as appealing. Users will not, perhaps. But that is because users are not fully aware of the consequences of inviting someone else to monitor their activities. Perhaps people will think differently after a few sensational misuses of their data.

Vendors will fight #2 mightily. Of course, they could ignore it completely, with the potential antidote that a large number of users who insist on it becoming excluded from their total available market. With a critical mass of people using gateways that implement #2, I think we could tip things, but it right now it seems a long shot.

 

I am quite pessimistic about all this. I don’t think we’ll see #1 or #2 unless something spectacularly bad happens first.

 

For the record, I do use a few IoT devices in my home. There are two flavors: those I built myself and those I bought. For the self-built, they exist entirely within my network and do not interact with any external server. I obviously know what they do. For those I bought, they they exist on a DMZ style network up with no access to my home network at all (at least if my router is working as intended). This mitigates the worry of pwned devices accessing my computer and files, but does not stop them from sending whatever they collect back to the mothership.

 

machines don’t think but they can still be unknowable

I still read Slashdot for my tech news (because I’m old, I guess) and came across this article, AI Training Algorithms Susceptible to Backdoors, Manipulation. The article cites a paper that shows how the training data for a “deep” machine learning algorithms can be subtly poisoned (intentionally or otherwise) such that the algorithm can be trained to react abnormally to inputs that don’t seem abnormal to humans.

For example, an ML algorithm for self-driving cars might be programmed to recognize stop signs, by showing it thousands of stop signs as well as thousands of things that are not stop signs, and telling it which is which. Afterwords, when shown new pictures, the algorithm does a good job classifying them into the correct categories.

But lets say someone added a few pictures of stop signs with Post-It notes stuck on them into the “non stop sign” pile? The program would learn to recognize a stop sign with a sticky on it as a non stop sign. Unless you test your algorithm with pictures of stop signs with sticky notes on them (and why would you even think of that?), you’ll never know that your algorithm will happily misclassify them. Et voila, you have created a way to selectively get self driving cars to zip through stop signs like they weren’t there. This is bad.

What caught my eye about this research is that the authors seem not to fully grasp that this is not a computer problem or an algorithm problem. It is a more general problem that philosophers, logicians, and semiologists have grappled with for a long time. I see it as a sign of the intellectual poverty of most programmers’ education that they did not properly categorize this issue.

Everyone has different terms for it, and I don’t know jack about philosophy, but it really boils down to:

  • Can you know what someone else is thinking?
  • Can you know how their brain works?
  • Can you know they perceive the same things you perceive the same way?

You can’t.

Your brain is wholly isolated from the brains of everyone else. You can’t really know what’s going on inside their heads, except so much as they tell you, and for that, even if everyone is trying to be honest, we are limited by “language” and the mapping of symbols in your language to “meaning” in the heads of the speaker and listener can never truly be known. Sorry!

Now in reality, we seem to get by.  if someone says he is hungry, that probably means he wants food. But what if someone tells you there is no stop sign at the intersection? Does he know what a stop sign is? Is he lying to you? How is his vision? Can he see colors? What if the light is kinda funny? All you can do is rely on your experience with that person’s ability to identify stop signs to know if he’ll give you the right answer. Maybe you can lean on the fact that he’s a licensed driver. However, you don’t know  how his wet neural net has been trained by life experience and you have to make a guess about the adequacy of his sign-identification skills.

These deep learning algorithms, neural nets and the like, are not much like human brains, but they do have this in common with our brains: they are too complex to be made sense of. That is, we can’t look at the connections of neurons in the brain nor can we look at some parameters of a trained neural network and say, “oh, those are about sticky notes on stop signs. That is, all those coefficients are uninterpretable.

We’re stuck doing what we have done with people since forever: we “train” them, then we “test” them, and we hope to G-d that the test we gave covers all the scenarios they’ll face. It works, mostly, kinda, except when it doesn’t. (See every pilot-induced aviation accident, ever.)

I find it somewhat ironic that statisticians have worked hard to build models whose coefficients can be interpreted, but engineers are racing to build things around more sophisticated models that do neat things, but whose inner workings can’t quite be understood. Interpreting model coefficients is part of how how scientists assess the quality of their models and how they use them to tell stories about the world. But with the move to “AI” and deep learning, we’re giving that up. We are gaining the ability to build sophisticated tools that can do incredible things, but we can only assess their overall external performance — their F scores — with limited ability to look under the hood.

 

Liberal Misogyny Detected

I really like insulting Donald Trump and his coterie contemptibles. They’re the worst. The whole administration is a brightly burning trash fire so yuge, it can probably be seen from space. Parliamentarian aliens receiving our radio transmissions on the planet Zepton are right now debating whether they should conquer (or vaporize) Earth on humanitarian grounds.

I really do not like these people.

I insult because I can, because it makes me feel a little better, and because it’s about the only power I have over this administration. In fact, I like insulting Trump so much that I wrote software so that I could insult him hundreds of times a day on each of thousands of other people’s computers. It’s the sort of thing that helps keep me going.

As part of that project, I’ve tried to maintain certain editorial standards for insults. I have three basic criteria:

  1. First and foremost, insults should be funny. Mean is fine, even encouraged, but funny is non-negotiable. That’s why I shamelessly stole the lion’s share of my insults from Jezebel, where a team of professional Trump trollers labor night and day for our benefit.
  2. The second requirement I have for my insults is that they should be specific to the person. A reasonably intelligent person should, with high confidence, know from the insult which despicable person is being insulted. This is reasonably easy for Trump. Nobody will be confused about “Orange Julius Caesar” or “Hairpiece Come to Life”. But it gets harder when you want to go after the rest of the swamp creatures. These are OK: “Angry Second-Assistant High School Football Coach” Pence, “White Nationalist Potato Sack” Bannon, “Apple-Cheeked Hate Goblin” Sessions, and “Eddie Munster Understudy” Ryan.
  3. The final requirement is that the insults not be racist, sexist, or any other kind of -ist. I think this is really a restatement of the first requirement: the insult should be about the person as an individual.

I’ve particularly struggled with Spicer and Conway. They are pathetic creatures, who literally lie for a living. But they are rather generic pathetic creatures, and it’s hard to come up with insults for either that would not be mistaken for someone else. That’s why, in my software, I have disabled them by default. The lists are too short and I’m just not proud of them. Most of the Spicer and Conway insults include references to their job titles or name, which is weak comedic sauce. (Others have lampooned them much more successfully than I have. Melissa McCarthy skewers Spicer brilliantly by showing the ridiculousness of his impotent, misdirected rage.)

Because I am in constant need for fresh insults, particularly for the back-benchers, I created this web form to let fans of Detrumpify help me out. So far, I’ve received more than 500 suggestions. There have been real gems in there (eg: “King Leer”), but also a lot of dreck that fails on the requirements above.

Among all the suggestions, the ones for Conway have been the worst by far, and I’ve not accepted any of them into Detrumpify. Without exception, they refer to how ugly she is, or her sexual organs, or her sexual behavior, or her lack of suitability as a sexual partner, or something cruel (and sexual) that the author would like to do to her. None of this is remotely OK.

Many suggested insults relating to her appearance. I’ve got mixed feelings on this. Very many of the Trump and Trump boot licker insults are linked to appearance. Trump really is orange, and that will always be funny. Sessions really does resemble a Keebler Elf and Bannon does resemble a corpse. Does that mean it’s okay to make fun of Conway’s appearance, too? Yes, I think it does. However, in practice, it’s hard to do so in way that is more specific than simply calling her sexually unworthy.

What kills me is that this crap is coming from my team, the supposedly unsexist one, or at least the less sexist one. Or, at the very very least, the one that is embarrassed of its own sexism and is consciously working against its check own unconscious biases? Oh, no? That’s not happening? Oh, shit. I guess that means we get to squander half our collective talent pool and make massive “Trump Sized” mistakes indefinitely.

So, as we endlessly debate whether sexism was a factor in the 2016 presidential election, I have new reason to feel common cause with women everywhere who have direct “no duh”-level data that sexism is alive and well on the left. I’ve got a spreadsheet full of direct evidence, supplied willingly by sexists who hate Trump. In the words of Der Gropenführer: sad.


PS – Though we don’t see all that much of her these days, I do still very much want to insult Ms. Conway. She certainly deserves it. Who can crack this nut?

 

Tragicomedy of the Contraposicommons

I was going to call this entry the “Tragedy of the Anticommons” but economists have already coined anticommons to refer to something entirely different than what I want to talk about. (An anticommons is something that would be socially beneficial as a commons, but for reason of law or raw power, is controlled by a private actor to the detriment of most. For example, patent intellectual property.)

Today’s post is about resources that actually become more valuable as more people that use them. This is something like the network effect that many Internet services enjoy, but applies broadly to many societal projects. I’m talking about things like schools and insurance markets, libraries, emergency preparedness, etc that benefit from wide participation.

I decided to write this post after I found out that several of our son’s primary-grade compatriots will not be returning to public school next year. Instead, they will be going to various private institutions. Interestingly, some of the parents took the time to write messages to the left-behinds explaining that their decision was not due to any kind of inadequacy of the school, but just a desire to do “what’s best” for their child.

It’s difficult to argue that a parent should not do “what’s best” for his or her kid, but I’m going to take a shot at it anyway, because that approach to parenting taken to its logical endpoint, is deeply antisocial. And while I think US history doesn’t have many examples of destructive trends continuing “to their logical endpoints,” I fear that this time may be different.

Your child in school is not just consuming an education — he or she is part of someone else’s education, too. In important ways, school is a team sport, and everyone does better if more people participate. This is not only true kids whose parents have lots of spare time and resources to participate in school activities. It is just as true among kids whose parents do not have the time or money to participate heavily. All children bring a unique combination of gifts, talent, and complexities that enhance the learning experience for others. Attending a school with rich participation across the socioeconomic spectrum enlarges everyone’s world view, to everyone’s benefit.

Now, am I asking people with the ability to opt for a private education to altruistically sacrifice their children for someone else’s benefit? I guess the answer is a definite “kinda.” Kinda, because I think it is a sacrifice only if everyone acts unilaterally, and that is the essence of the problem.

You see, there is a prisoner’s dilemma type of situation going on here. If we all send our kids  to public school, we are all invested together, and we will want the appropriate resources brought to bear on their education. The result is likely a pretty good school. But if enough people “bail” the school will be deprived of their children’s participation. Furthermore, “exiters” have a strong incentive not to continue to have significant resources provided to the school. Such resources come from taxes and exiters and their children will derive no direct benefit from them. Perhaps nobody they personally even know will derive any such benefit. (There are plenty of indirect benefits to educating other people’s kids, but that’s another article.) As more and more people peel off, the school is diminished and the incentive to peel off becomes ever greater — the dreaded death spiral. At last the school is left only with the students from families unable or uninterested in leaving. (NB: I am not suggesting that the “unable” and “uninterested” go together in any way, only that that’s who will be left at such a school.)

In the language of game theory, we reach a Nash equilibrium. Everyone who cares and has the means has defected, and the public schools are ruined. The interesting thing about Nash equilibria is that a better and cheaper outcome is possible for everyone if participants trust each other and cooperate. (After all, private school costs a lot and serious studies show that they underperform public schools.) So, I’m not suggesting altruism per se, but something more akin to an enlightened model of cooperation.

But today’s blog post isn’t even about public primary education. It is about the general phenomenon, which I fear is widespread, of people “pulling the ripcord” on important societal institutions and resources — bailing out, to varying degrees, based on their ability to do so. Consider:

  • Gated communities, private security forces, and even gun ownership for protection, represent people rejecting the utility of civil policing.
  • Water filters and bottled water are people rejecting the need for a reliable water supply.
  • Skipping vaccinations are people rejecting the public health system
  • Sending kids to private colleges and universities is pulling the ripcord on state university systems, and the many, many societal benefits that come with them (open research, an educated populace, etc)
  • Uber, and eventually, self-driving cars represent rejecting transit (perhaps shredding a ripcord that was pulled long ago with the widespread adoption of the automobile)
  • Pulling out of subscription news outlets, leaving them to cheapen and become less valuable

Here are some you may not have heard of that I think are coming:

  • Private air travel as an escape from the increasingly unpleasant airline system, with decreased investment, safety, and reliability of the latter over time
  • Completely energy self-sufficient homes (with storage) as an escape from the electric system, with a total cost well in excess of an integrated electric system

Another example: as many of you know, I’ve also been dabbling quite a bit in amateur radio. In that hobby, I have discovered a large contingent of hams who are prepping for TEOTWAWKI — The End Of The World As We Know It. They are stocking up on food, water, and ammunition in preparation for society’s total collapse. What I find upsetting about this is that such prepping probably makes collapse more likely. These people are not pouring their resources into community emergency prep groups nor or they the types to advocate for taxation to pay for robust emergency services. Instead, they’re putting resources into holes in their backyards.

All of these are rational decisions in a narrow sense (even the anti-vax thing) and probably cause little or no harm assuming few others make the same decision. However, once many people start to make these decisions, things can unravel quite quickly. (Regarding anti-vax, these effects can already be seen in outbreaks in certain communities with a high penetration of opt-outs.)

Perhaps some of these are “OK”, even better than OK. People abandoning broadcast television for subscription media is bad for broadcast television, but maybe that’s fine; we certainly don’t owe TV anything. (On the other hand, major broadcast networks that had to satisfy a huge swath of the populace at once were forced into compromises that had certain societal benefits: like everyone getting more or less the same news.)

But I worry that we are in a time of dangerously anti-social behavior, enhanced by a party whose ideology seems not only to reject socialism but to reject the idea that “society” exists at all. In the process, they seem willing to destroy not only social programs that deliberately transfer wealth (social insurance, etc), but also any social institution built on wide group participation. Even among people not predisposed to “exit,” growing inequality and the fear of its consequences may encourage — or even force  — people to consider  pulling the ripcord, too. The result, if this accelerates, could be disaster.

Marketing Genius

Over the past couple of months, in stolen moments and late night coding sessions, I’ve quietly been inventing a little piece of ham radio gear intended to facilitate using one’s radio remotely.

I thought it would be a good way to try my hand at designing a useful product, from start to finish, including complete documentation, packaging, etc.

I posted about it to a few ham radio forums and it turned out nobody was interested, so instead of making a product, I’m just throwing it up on github for people to ignore forever.

I’m no marketing genius.

 

 

Rigminder 2017-2017 RIP

Cold Turkey

This morning, I started my regular morning ritual as usual. I got up, complained about my back, put bread in the toaster, water in the kettle, and then went to my phone to see what’s happening.

Except that last thing didn’t work. Facebook wouldn’t load.

Why? Because my better half convinced me that it was time to take a Face-cation. Last night we logged into our accounts and let each other change our passwords. As a result, we are unable to access our own accounts, locked in a pact of mutual Facebook stasis.

I can say, that several times already today I have pretty much instinctually opened a tab to read FB. In my browser, just typing the first letter ‘f’ is all it takes to open that page. Each time I’ve been greeted by a password prompt. Poor me.

Well, if FB is my heroin, let this plug be my methadone. We’ll see how that goes.

How long until this nightmare is over?

I’m tired of this president already. What an awful combination of idiocy and cunning. To wit, just today from the Moron in Chief’s mouth:

This is more work than in my previous life. I thought it would be easier.

Jeebus.

Anyway, in anticipation of never having to hear about Trump every again, I wrote another little Chrome plugin yesterday. It tells you how many days until this is all over.

You can get it here: Trump Time Remaining

Normally, it’s just a little icon that tells you how much of Trump’s term remains. Here is it set to percent:

If you click on that icon, you get some more information:

That’s really all there is to it. You can change your reference date (election or inauguration) and you can adjust the expected number of terms (please, G-d, let it be just one), and you can change what is shown in the icon: days remaining, days passed, etc. Note that icons can only reliably show three digits, and we have more than 1300 days left, so days remaining may not work nicely in the icon on your computer.

So, how long until this nightmare ends? Well, 1362 days, give or day. Now you know.

 

Musings on success

Traveling back to my native New Jersey usually casts me into a bit of melancholia, and this trip was no different. I guess it’s cliche, but visiting the place of my boyhood makes me want to mark my actual life against the plans I had for it back then. Unsurprisingly, they’re not very similar.

That caused me to further ponder my working definition of “success,” which, perhaps due to an extended soak in Silicon Valley, involves a lot of career advancement and lots of money (or at least a house with an upstairs), maybe inventing something appreciated by millions. However, I left SV because I wanted to work on energy policy be able to say that when it mattered I did something to measurably reduce climate change. So far at least, so much for any of that.

While doing this pondering, two people I knew while growing up kept persistently popping into mind. Both were Scoutmasters from my Boy Scouting days. David Millison was my Scoutmaster when I started Scouting in Troop 7 in Fairfield, NJ. George Berisso was my Scoutmaster in Troop 9 in Caldwell.

I met Dave when I was a wee one, just starting in Scouting. As he told the story, his initial involvement in Scouting leadership was pure coincidence. The local troop was looking to borrow a canoe and he had one. That somehow snowballed into running Troop 7 for 46 years and influencing the lives of hundreds of boys. Dave was the person who first planted in me the seeds of outdoor adventure. He talked in excited tones about Philmont, the scout ranch in the Sangre De Cristo mountains of New Mexico. One of the most profound things I learned from Dave is that discomfort can simply be set aside when necessary. You might be camping in the rain, your tent and sleeping bag soggy, eating cold oatmeal with no fire to warm you. No matter — you can still enjoy fellowship and adventure in such circumstances. You’ll be home to a hot shower in a day or two, so why not decide to carry on and have fun? I can’t say I always live that way, but I try to. Dave also was the master of situational ethics, encouraging us to carefully consider the ethical implications of the most trivial decisions. Are you going to tell the waiter he forgot to put your soda on the bill? Should you let your friend hold your place in line? I still wonder about some of these questions 30 years later.

Mr. Berisso taught AP Biology in my high school and sponsored our Environmental Protection Club. He also ran the troop I was in when I completed my Eagle. He was a demanding teacher and expected students to think carefully and to be skeptical and analytical. As an adult now, I am not quite certain how he could devote so much energy to his day job (science education) and still have energy left over for his family and extracurriculars like scouting. Mr. Berisso was the Scoutmaster who eventually took me to Philmont. Once, when was 17, I think, and rather advanced in Scouting, I did something that should have gotten me kicked out of Boy Scouts for good. Mr. Berisso did kick me out, but provided a path for me to be reinstated. He turned my stupidity into a character building lesson.

I don’t think either of these men were huge successes by the measures mentioned above. They didn’t have fancy cars or big houses or powerful positions. But they were exceedingly successful in other ways, which I now see are just as important, if not more so. They were well respected and appreciated by their communities and loved by their families. Furthermore, they both made indelible marks on hundreds, maybe thousands of young people. I don’t think anyone who knew either man will ever forget him.

It is very sad that both Dave and Mr. Berisso have passed away. I want to introduce them to my family, and to tell them what profound impacts they had on me as examples of character and service. It angers me that I cannot do this. Nevertheless, remembering them helps me to recalibrate my notion of success. I hope I can one day be half as successful as either of them.

Nostalgia: Airspace Edition. The end of the road for VORs

The FAA is in the process of redesigning the Class B airspace around SFO airport, and it signals an interesting  shift in air navigation: the requirement that everyone in the airspace be able to navigate by means of GPS.

They are undertaking the redesign primarily to make flying around SFO quieter and more fuel efficient. The new shape will allow steeper descents at or near “flight idle” — meaning the planes can just sort of glide in, burning less gas and making less noise. As a side benefit, they will be able to raise the bottom of the airspace in certain places so that it is easier for aircraft not going to SFO to operate underneath.

As far as I’m concerned, that’s all good, but I noticed something interesting about the new and old design. Here’s the old design:

This picture, or one like it, will be familiar to most pilots. It’s a bunch of concentric circles with lines radiating out from it, dividing it into sectored rings. The numbers represent the top and bottom of those sections, in hundreds of feet. This is the classic “inverted wedding cake” of a Class B airspace. In 3D, it looks something like this, but more complicated.

This design was based around the VOR, a radio navigation system, that could tell you what azimuth (radial) you are relative to a fixed station, such as the VOR transmitter on the field at SFO. A second system, usually coupled with a VOR, called DME, allows you to know your distance from the station. Together, you can know your exact position, but because of this “polar coordinate” way of knowing your position, designs intended to be flown by VOR+DME tend to be made of slices and sectors of circles.

The new proposed design does away with this entirely.

Basically, they just drew lines any which way, wherever it made sense. This map is almost un-navigable by VOR and DME. It takes a lot of knob twisting and fiddling to establish your exact position if it is not based on an arc or radial. Basically, this map is intended for aircraft with GPS.

All of this is well and good, I guess. GPS has been ubiquitous in every phone, every iPad and every pilot’s flight bag for a long time.

I learned to fly in a transitional era, when GPS existed, but the aircraft mostly had 2 VOR receivers and a DME. My flight instructor would never have let me use a GPS as a mean of primary navigation. Sure, for help, but I needed to be able to steer the plane without it, because the only “legal” navigation system in the plane were the VORs. I still feel a bit guilty when I just punch up “direct to” in my GPS and follow the purple line. It feels like cheating.

But it’s not, I guess. Time marches on. Today, new aircraft all have built-in GPS, but a lot of older ones don’t. And if they’re going to fly under the SFO Class B airspace, they’re going to need to use one of those iPads to know where they are relative to those airspace boundaries. And strictly, speaking, they probably should get panel-mounted GPS as well.

 

 

Nixon was right

 

When the president does it, that means that it’s not illegal.

Like most Americans, I’m familiar with this infamous quote, from a Nixon interview with David Frost in 1977. I always considered it an example of the maniacal hubris of Richard Nixon.

The thing is, I’ve come to understand that, at least from an functional standpoint, it is basically true.

What happens if the president breaks the law? Well, he might use his executive powers to direct law enforcement not to pursue it. But if he didn’t, presumably, he could be brought up on charges and a court could find him guilty. If it were a federal crime, he could just pardon himself, but if not, I guess he could even go to jail.

But, can he lose the presidency over a crime?

It seems, not directly. As far as I can tell — and I hope legal types will educate me — the Constitution contains precisely two ways to get rid of a president:

  • an election
  • impeachment

Both of these are obviously political processes. There’s certainly nothing there saying that if you commit a crime of type “X”, you’re out.

Conventional wisdom expects that if the president does something even moderately unsavory, political pressure will force the House of Representatives to impeach him. I would have taken comfort in that up until a few months ago, but now … not so much.

Today’s House of Representatives is highly polarized, and the party in power (by a ratio of 240 / 193) is poised to make great strides towards realizing its long-held agenda. Would they let a little unlawful presidential activity get in the way of that? I don’t think so.

What if their own constituents don’t care about a president breaking some laws that they think are pointless or unjust? Let’s say Trump’s tax returns show up on Wikileaks, and forensic accountants come up with evidence of tax fraud. Are we sure voters will not see that as a mark of genius?

Congress will move to impeach if and when the pressure from that activity gets in the way of their agenda, and not before. That time could, in theory, never come.

I’m afraid that people holding their breath for an impeachment based on the emoluments clause may pass out waiting.

Donald Trump once said this:

Also, probably one of DT’s more truthful statements. (Though my legal team informs me that murder is not a federal crime, so he would not be able to self-pardon.)