My Experiences with the Bellair Airporter

Published at 18:33 on 13 February 2020

I’ve noticed their buses on I-5 for decades, so I presumed that, given this is a well-established business, it was a reliable option for getting to Sea-Tac. Given that the only flight to my destination originating from the local Bellingham airport left at 5:00 am, it was a relief to know I could take the bus to Seattle (at a sane hour of the day) instead of flying down and changing planes there.

So I go online and make my reservation. Their web site was a little dated-looking, but it seemed to work fine. I promptly got a message saying my reservation was confirmed.

Then I get another e-mail a few minutes later saying there was a problem with billing my credit card and to call customer service. So I call customer service. They can’t find my reservation at all. They make another reservation for me.

Then I notice that there are not one, but two charges from them on my credit card. So I have to call again to straighten that mess out.

The day of my trip comes, and I arrive early at the bus stop. The bus doesn’t show at the appointed time. Having learned the hard way how lacking customer service and quality control tend to be in American business, I call them and ask if there’s any problems.

“We didn’t even send the bus to that stop because there were no reservations from it.” Turns out that when they made the new reservation to me, they made it wrong, for a bus leaving an hour later.

So I had to hurry home and drive to the airport on the spur of the moment (through horrible Seattle traffic, and I hate driving in Seattle traffic) to save my flight.

And now I see that they failed to properly refund all the money for the reservation they botched.

That’s right, I’m now up to four interactions with them, for something that should have taken just one interaction, and literally every interaction has gone wrong (and at their fault) in some way.

I’m starting to realize why Alaska Airlines can get people to wake at o-dark-thirty to catch that 5:00 am flight of theirs.

Oh, Hell No

Published at 06:29 on 11 February 2020

From an article in today’s Washington Post:

The King Conservation District election is offering technology to any registered voter who wishes to cast their ballot from a mobile device or a computer. Voters can log in to a portal and vote. Their selections are then recorded in a PDF file, which election officials say will be printed to create a paper trail.

Sorry, this is not how “a paper trail” works.

For there to be a paper trail, it must start with the voter him or herself, who inspects a physical document representing his or her vote and approves it as correct. That happens in traditional hand-counted paper balloting (where the official ballot is itself the paper trail). It also happens in Washington state’s current vote-by-mail system (same reason, only this time the ballot is a computer form with inked-in ovals). It can even happen in a touchscreen system where the voter is presented with a receipt (which is collected and saved by the election authority) to inspect.

It most emphatically does not happen in the clusterfuck of a system described above, where the PDF is generated on a server somewhere, with an unverifiable promise that it will be printed sometime later. If the voter him or herself does not directly create or supervise the creation of the start of the paper trail, it is not in fact a proper paper trail.

The Double Standards of Moderates

Published at 12:35 on 8 February 2020

Of late, I’ve been pointing out some of Sanders’ shortcomings as a candidate, and urging my fellow leftists to open their eyes to some inconvenient truths. Time now to even out the score.

Now that Biden has done poorly in Iowa, and is doing poorly in the money department, the Biden Bros are stealing pretty much every line in the book the Bernie Bros have been reciting.

“But it’s not fair that Biden will get shit for what his son did.” Oh? And it’s fair that Sanders will get shit (rooted in memes about Cuba and the ex-USSR) for being a democratic socialist?

“Stop being so negative about our candidate, who is obviously the most electable.” Oh? And it’s just plain old “hard-edged realism” when Sanders’ flaws are talked about? But of course.

Always one set of standards for me, and another for thee.

The Pandemic is Here

Published at 08:02 on 7 February 2020

It was inevitable. Humanity has long been doing just about everything possible to pave the way for such a thing: gathering into ever-larger cities, doing virtually nothing to address the inequality that condemns multitudes to lives of filth and squalor, and aggressively globalizing the economy and thus enabling disease to spread faster.

Any reassurances from the dictatorship in China should be taken with not just a grain, but a block of salt. Dictatorships lie and conceal. China’s first response to the outbreak was to hush it up, engaging in reprisals against the doctor who first reported it, who has now perished from the disease.

The disease is known to have an incubation period of up to 14 days, during which people are both infected and highly contagious and furthermore entirely symptom-free. Cases have already popped up worldwide. How many more people are running around right now infecting others and not even knowing about it? Who knows, but the number has to be significant.

If you think I’m exaggerating above, well, many M.D.’s are saying the basically the same thing.

The toothpaste is out of the tube and it’s not going to be put back in.

What is Going on with the Attacks on Biden and Warren?

Published at 11:06 on 4 February 2020

The Biden attacks began circulating first.

It was understandable. Despite how the Establishment pundits have universally proclaimed him as likable and easily-electable, he’s neither. He’s a gaffe machine. He’s one of the rubes who voted for the Iraq War. He’s a clueless old fool who still entertains decades-dead notions of bipartisanship, so he’d be an ineffectual president. He’s basically the Hillary v.2.0 candidate, and we all know how well Hillary v.1.0 failed against Trump. As such, he’s a far riskier candidate than the conventional wisdom proclaims.

These are all valid reasons to be concerned about the possibility of a Biden nomination. They are all valid points to be brought up by the other primary candidates.

Then I noticed something curious: with only a few rare exceptions, the attacks were not coming from the Sanders campaign, the Warren campaign, or the campaign of any other Democratic candidate. Most of them were coming from no easily-identifiable source whatsoever. The ones that had a source attribution tended to come either from obscure sources, or from right-wing sources allied with Trump. And the attacks were often really vicious, the sort of things that would be difficult to recover from later should the attacked candidate be the eventual nominee.

Then the attacks on Warren began. Those were even stranger. Why was the No. 3 candidate, one who also had strong progressive credentials, suddenly getting so much hate in progressive circles? Wouldn’t Harris or Klobuchar have been more logical targets, given their past as tough-on-crime attorneys general? It just didn’t make sense. Why be so divisive against someone ideologically close to you, someone whose people you will probably have to kiss and make up with later on? And again, the attacks weren’t coming from any of the other campaigns. They were coming from the same sketchy sources as the anti-Biden attacks.

Well, consider Exhibits A and B.

Exhibit A. Polls over time.
Exhibit B. Party loyalty.

Put those together and what does it mean? First, like it or not, Biden is probably going to be the Democratic nominee, for the simple reason that he’s consistently been the leading candidate. Second, every nominee needs a running mate. Third, nominees frequently choose their running mates to broaden their appeal. Fourth, of the votes he has a chance of attracting, Biden’s biggest appeal problems are on the left (he already appeals to moderates and to disaffected Republicans, and he doesn’t have a ghost of a chance of appealing to hardcore Trumpers).

So, if he is smart, Biden is likely to choose a running mate that will help him appeal to left-leaning voters. Who is he most likely to choose?

First of all, not Sanders. Sorry, Bernie Bros. Sanders isn’t even really a Democrat. That is, of course, one of the things that makes him appealing to those of us on the left, but get real: party loyalty is a thing, and Biden will use it as a reason to punish Sanders. It’s harsh, but it’s the truth.

That leaves Warren as the most obvious choice. Unlike Sanders, Warren did run as a Democrat for her political career, so she has the party loyalty checkbox ticked. Plus, she will be a help from the identity politics standpoint, carrying appeal as only the third female vice-presidential candidate in US history. Another box ticked.

Well, look at that. Those mysterious attacks, mostly coming from identifiably pro-Trump sources, or coming from no identifiable source at all, are being targeted precisely at both the most likely candidates and the Democratic voters most likely to sit the election out as a result of those most likely candidates getting the nomination. How convenient. Convenient for Trump, that is.

And remember, the Trump campaign is well-known for its social media savvy.

It’s all enough to make one go “Hmmmm.”

Remember, whatever their warts, having Biden and Warren in the White House is vastly preferable to having Trump and Pence there for four more years. If you can’t realize that, you’re not my ally. You’re a fool and a rube, and approximately as much a danger to the continued existence of an open and free society as the gang in the red hats.

Bloomberg, Not Bernie, Is Trump’s Dream Opponent

Published at 12:34 on 2 February 2020

Or rather, he should be, because Bloomberg is a far weaker candidate than either Sanders or Biden.

Whether or not Bloomberg actually is Trump’s dream opponent depends on how well the Trump campaign understands that the centrists in the DNC have their thumb on the scale in favor of a pro-Establishment candidate. My guess is that they understand that pretty well, given that they are working for someone who was himself a party outsider and therefore had to contend with the Republican version of the very same thing.

That means I was wrong when I answered my question about Sanders being Trump’s dream opponent in an earlier post.

Trump’s main goal when attacking Biden is to elevate not Sanders but Bloomberg, because Trump is fully aware that this will prompt the Democratic Party elite to do everything within their power to elevate Bloomberg.

If Sanders Concerns You, Oppose Bloomberg

Published at 10:18 on 2 February 2020

(Even if Sanders doesn’t concern you, and you consider Sanders to be the most viable candidate, you should oppose Bloomberg. But that really doesn’t need to be said; most of us on the left already oppose Bloomberg, for ideological reasons. This post is directed to centrists who claim to be opposing Sanders for what they perceive, and with some justification, as the practical reason of his electability.)

Centrists should oppose Bloomberg because Bloomburg is basically a centrist version of what centrists claim to be the most concerning about Sanders.

You dislike Sanders because he’s never run for office as a Democrat. Quite the contrary: he’s run as an independent or a socialist, and never been shy about why he cannot consider himself a Democrat. You worry about that past history alienating centrists and career Democrats.

Well, Bloomburg never ran for office as a Democrat: he ran twice as a Republican and once as an independent. Start worrying about that past history alienating leftists, liberals, and even quite a few plain old career Democrats.

If you worry about Sanders’ lack of appeal because he is too far left, you should worry about Bloomberg’s lack of appeal because he’s too far right.

If you worry about Sanders’ past history of branding himself as “socialist,” you should worry about Bloomberg’s past history of branding himself as “Republican.”

In one candidate — Bloomberg — we have additively combined the significant risk levels of both Sanders and Biden, two candidates that are already troublingly risky.

Bloomberg is thus an exceptionally risky candidate choice. It takes the standard (and very plausible) risk of running a centrist (remember, Democrats, you ran a centrist against Trump in 2016 and she lost), and raises that to the Nth power.

Of all the candidates that have even a ghost of a chance, nominating Bloomberg is probably the surest-fire way to get four more years of Trump.

Is Bernie Trump’s Dream Opponent?

Published at 06:16 on 31 January 2020

Never Trump conservatives are fond of repeating it as if it were a mantra, but it is unwise to take such assertions at face value. It can be very difficult to distinguish what one firmly wants (a moderate and not a leftist in the White House, in the case of Never Trumpers) from what one actually believes.

This does appear to be a testable claim, however. There is some evidence that Trump is in fact salivating at the opportunity of running against Sanders. One merely has to consider who he has evidently trained most of his efforts at tearing down: Sanders’ chief rival in the polls, Biden. The whole Ukraine scandal was, after all, prompted by a desire on Trump’s part to smear Biden.

This theory that Trump actually wants to run against Sanders is bolstered by the fact (recently discussed here) of Bernie’s branding issues.

It is important to point out that Biden is hardly the slam-dunk candidate many centrist pundits seem to think he is, however. Rachael Bitecofer (one of the few analysts to correctly predict both the Trump win in 2016 and the size of the 2018 Democratic wave) has pointed out that Biden has some real risks, risks completely related to his political centrism, that are being overlooked by centrists. (I’ve pointed those risks out, too, but most people are likely to take a professional like Bitecofer more seriously.)

What to do about it all? It depends on who leads in the primary. If Biden is the clear leader, it’s worth supporting Bernie as a foil to Biden’s risky pro-Establishment proclivities. That probably won’t make Biden want to nominate Sanders as his VP,* but it will motivate Biden to tack left and embrace a few populist points, and hopefully nominate Warren to be his running mate.

Thankfully, given his front-runner status, Biden seems as if he might finally be getting it. That ad I just linked only mentions Trump in passing, talking mostly about what Biden says he will do if elected. That’s the sort of campaigning it took for the oppositions in Venezuela and Italy to finally have some measure of success against Chávez and Berlusconi, respectively.

* He’s never in a million years going to nominate Sanders to be his running mate. No Democrat would. After all, Sanders isn’t even a real Democrat. He’s always run as an independent or a socialist, and never been short on words with which to disrespect the Democratic Party. Yes, this is all for good reason (the Democrats have earned every bit of disrespect they receive from the left), but it’s also not precisely going to endear him to those whom he disrespected. Trust me, he won’t be nominated to be veep.

Why Swing? Why not JavaFX?

Published at 22:53 on 30 January 2020

I recently decided to finally take a serious crack at developing a GUI application.

My first choice was to make it a native Mac application, and write it in Swift. I soon was reminded, by fresh personal experience, of what I had discovered the last time I tried to code a native Mac application: that Macs are approximately as programmer hostile as they are user friendly. Documentation was patchy and incomplete. Interfaces were bizarre and counter-intuitive. Worse of all, things change radically from release to release of the OS, to the point that most of the documentation out there is basically useless, because it is for MacOS releases prior to Catalina.

I could have persevered, but it was clear that MacOS app development is a dark art that takes a lengthy and painful initiation process to cultivate. No thanks; I just want to get my app coded and finished. Would have been nice to have a native app that dovetailed as nicely as possible with the rest of the system, but being able to finish it in a timely manner takes priority.

I had in the past year ran across Kotlin, which struck me as a well-designed effort to modernize Java (or, alternately, Scala done right: a more modern language for the JVM that avoids the pitfall of creeping featurism that led Scala to be excessively complex). Java has long supported portable GUI application development, and since Kotlin is a JVM language, you can easily call any of the Java libraries from Kotlin. So Kotlin it was.

It didn’t take that much research to determine that the new and supposedly preferred way to code graphical user interfaces in Java was JavaFX. So I went to the JavaFX web site, downloaded JavaFX, and typed in the “Hello, World” example listed on that site.

It didn’t work. After double- and then triple-checking what I had done, I could see zero discrepancies between what I was doing and what the tutorial was telling me to do.

Noticing that the current release of JavaFX hadn’t been out all that long, I tried regressing to the previous version now on long-term support status. The code still didn’t work.

I tried posting a query on Reddit as to what I was doing wrong. Nobody had any idea.

I reported the bug via the project’s GitHub page. That prompted a curt, incomprehensible, acronym-laded response to file the bug report some other way (and my bug report on GitHub was perfunctorily closed).

Eventually, I got the example code to produce the output it should, by regressing to the version of JavaFX that was distributed with JDK 8. Then I started investigating how I’d code my program in JavaFX.

It quickly became apparent that one of the things I needed to do would probably involve a lot of work in JavaFX, but that there was a Swing UI component that did basically all I wanted, and that it was easy enough to embed Swing components in a JavaFX application. While doing that, I ran across yet another bug in JavaFX.

But why? I had already established that JavaFX is full of bugs, insufficiently documented, and has a development team whose attitude about quality is lacking. Now I learn I can’t even code it all the “new way” even if I desire to, because JavaFX is lacking in basic features as well.

Moreover, it didn’t take much research to uncover that Oracle (the single most important player in the Java development process) makes massive internal use of Swing, and has no plans to remove support for Swing anytime soon. In other words, Swing is definitely here to say; rumors of its deprecation have been greatly exaggerated.

So that’s what I used. Maybe, in a few years, if I have occasion to write another graphical user interface, I will investigate if JavaFX is any closer to being ready for the prime time than it currently it is.

I can tell that some of what JavaFX is trying to accomplish would be a real improvement. It’s a pity that the current state of that project is evidently so lacking in features and quality control, but there you have it.

The Problem with Bernie

Published at 09:48 on 27 January 2020

Some never Trump conservatives are having a field day playing concern troll, using this to back their assertions up.

I’ve debunked such things before, and I’ll do it again. That poll does not show the public’s ideological proclivities. It shows their ideological labeling proclivities; it is asking people what ideological label they prefer to see attached to themselves.

Most people are not strongly ideological, yet most political pundits are strongly ideological (it tends to be a big part of what motivated them to become political pundits in the first place). Pundits, like everyone else, tend to often make the blunder of projecting their own circumstances onto others. In other words, they tend to conclude that the average American is more of a political animal than he or she actually is.

Interesting things happen if you dig a bit deeper: many of those self-professed “moderates” and “conservatives” are actually sympathetic to many distinctly leftist ideas about inequality and economic justice. There’s plenty of self-professed “conservatives” who seriously distrust the wealthy and powerful.

So there is actually plenty of space for leftist success in electoral politics. But (and this is an important), labeling matters. Many of these same quite-open-to-leftist-ideas people aren’t even aware that they are potential leftists; their idea of what the political left consists of has been shaped by omnipresent anti-left propaganda in the media and education systems to the point that they see the so-called “left” mainly in negative terms.

Who wants to attach a negative label to themselves? Nobody, that’s who. So those people instead label themselves “moderate” or even “conservative.”

And it is here that Sanders has an Achilles heel. He has chosen to embrace a political label (“socialist”) that is toxic to many voters. Yes, it’s rapidly becoming less toxic. But it’s still toxic to many. It’s an exercise in labeling that creates an unfair battleground for Bernie.

Bernie will be able to cope with that self-imposed handicap to a remarkable degree (he’s repeatedly won the votes of many self-professed “conservatives” in rural Vermont for decades). But don’t kid yourself that it’s not a liability at all. It very much is.