And We’re Back
Published at 17:06 on 22 May 2023
Ubuntu Linux package manager badly botched a routine upgrade and hosed my database. Thankfully I take routine backups. It just was a matter of time until I could perform the necessary restore.
Musings of an anarchist misfit
Published at 17:06 on 22 May 2023
Ubuntu Linux package manager badly botched a routine upgrade and hosed my database. Thankfully I take routine backups. It just was a matter of time until I could perform the necessary restore.
Published at 20:37 on 25 April 2023
And by “Unix” I include Unix-like operating systems like Linux and MacOS. In fact, my experience is limited to Linux and MacOS in this regard, but I would be surprised if the various BSD and System V Unix systems out there with automatic power management differ much.
I have a simple alarm clock/reminder script I wrote in Python. The heart of it was the following logic:
def sleep_until(then):
delta = then - time.time()
if delta > 0.0:
time.sleep(delta)
return True
return False
Now, the time.sleep call in Python is implemented as a call to sleep in the C standard library, which in turn is implemented as via the alarm system call. All of these accept an offset in seconds, which in the former case specifies the amount of time to sleep, and in the latter the amount of time before an alarm signal is delivered to the process.
The logic above is simplicity itself, yet from time to time my reminders would come in late! Eventually, I linked it to those times when the system suspended itself due to lack of activity for a while; and my alerts were late by an amount that corresponded with the time the system was suspended. Apparently, when Unix and Unix-like systems suspend themselves, time as specified to alarm ceases to pass; that system call only counts seconds that transpire when the system is awake.
The cure is to break up the sleeping into chunks, and to repeatedly check the system clock:
MAX_SLEEP = 60.0
def sleep_until(then):
delta = then - time.time()
if delta <= 0.0:
return False
while delta > 0.0:
time.sleep(min(MAX_SLEEP, delta))
delta = then - time.time()
return True
At least, this seems to work. I implemented the change yesterday and alerts that spanned times when my computer was asleep got raised at the correct time. It’s a little ugly to replace a blocking with busy-waiting like this, but although the above logic busy-waits, it still spends most of its time blocked.
Note that this seems to affect other programs as well. In fact, one of my motives for writing this script was the frequent failure of the Gnome clock app to issue alarms at the proper time.
Note also that this assumes the computer will be in an awake state at the time the alert is scheduled. If the computer goes to sleep and stays asleep, it will issue no alerts during the time it is asleep. Remedying this state of affairs requires privileged system calls that one must be careful making. I decided that the safety of having a nonprivileged program was worth the slight chance of a missed alert; in my case, the problem almost always happens as a result of a system suspending itself on lunch break, with the alert time being while I am at my desk in the afternoon.
Published at 07:04 on 24 April 2023
It’s six weeks since I spent the money and decide to give Halide a whirl. It actually exceeds expectations. The manual focus feature it offers is still not as good as a traditional viewfinder and focus ring, but together with the focus peaking feature it’s pretty darn good. All of the close-ups in this gallery were taken with Halide.
iPhone plus Halide has basically become my camera of choice when I do not want to take (or simply do not have) my micro four-thirds outfit with me. It’s definitely a more capable close-up photography tool than a standard compact digicam.
Published at 19:48 on 19 April 2023
Per this, I think Rust makes the most sense for things you would have otherwise written in C or C++. It is a more modern, relatively low-level, language than either of these two (and is much cleaner than C++, which was an attempt to add all sorts of extra features onto C, and which suffered as a result of having to be a proper superset of that earlier language).
If you were not going to write it in C/C++, in other words if computing resource limitations are not a constraining factor, then writing it in Rust just doesn’t make sense. Use some other programming language with automatic garbage collection, so you don’t have to worry so much about memory management.
Which means, that for other than embedded systems, it is generally stupid to use Rust from the ground up. Use a higher-level language like Python. If the higher-level language proves too slow or too memory-inefficient, do some profiling, find the weak links in the chain, and rewrite those in Rust instead of rewriting them in C/C++. There’s already libraries out there to facilitate doing the latter.
And that is why I can’t feel much love for Rust: because I am right now not running up against any resource constraints that make Python, Java, or Kotlin impractical.
Published at 21:46 on 3 April 2023
Trump has far better chances of winning in 2024 than some informed observers seem to think.
It all rests on what the group No Labels does. They have been rightly castigated as being mostly a benefit to Trump, and boy could they ever.
You see, despite how the media loves to fawn over them as the rational and reasonable ones, centrists have a really seamy and dare I say even militant underside. They know what they want, they want it really bad, and they will act on those wants, even to the ultimate detriment of their preferences.
It is exactly the same criticism often made of the Left, but it applies to centrists even more. Those of us on the left are at least constantly being lectured to about the dangers of refusing to compromise. But the same chattering classes that never tire of sermonizing the Left tend to see the Center as intrinsically “responsible.”
Witness what happened to Humphrey in 1968 (lost votes on the left) and McGovern in 1972 (lost votes in the center). There’s no shortage of voices blaming Humphrey’s lost on voters to the left sitting it out. By contrast, when it comes to McGovern those same voices… blame left/liberal voters for having selected McGovern in the first place! In other words: if you don’t support our preferred candidate, it’s all your fault, and if we don’t support your preferred candidate, it’s also all your fault.
Many centrists are so beset with feelings of entitlement, and so coddled and pandered to by the media, that they are largely shielded from being confronted with the downsides of their own political behavior. And many of them to this day have trouble seeing their hypocrisy.
It is in this light that the seriousness of a threat by a centrist No Labels candidate can fully be seen.
To the above you can add that Republicans tend to be more extreme and inflexible in general, meaning it will be much easier for a centrist to peel votes away from the Democrats. No Labels itself is aware of this; here is one of their initial projection maps showing how they hoped to win. Note how most of the states they think they can flip went for Biden in the last election:
They probably won’t do that well, of course. All it would take is them failing to flip Texas and Florida and boom! Second Trump term.
Published at 08:45 on 31 March 2023
It matters because it breaks the precedent that presidents and ex-presidents are above the law.
It does not matter because of the seriousness of the charges. The particular charges of the indictment are still not known, but all sources claim they have to do with a fraudulent payment of hush money to keep Stormy Daniels silent about an affair she had five or more years ago now. An affair is really not a major political scandal (despite how much Republicans wish it was when Clinton was caught having one).
But the precedent is now broken. That having been done so, it becomes more likely that indictments might be filed over inciting the January 6th putsch and/or the attempted corrupting of the vote tabulating process in Georgia. Both of those, by contrast, are truly serious charges; they relate to acts that are direct attacks on democracy.
If other, more serious charges are not fired, it will be as Judge Luttig has said: a great disservice to democracy and to the rule of law.
And there is still a lot of moral rot in the system. I may have been wrong about Trump not being indicted for anything, but I am not wrong about that general observation. That there still is, is evidenced by a more serious indictment being a sufficiently unsure thing that Luttig is openly worrying that it might not happen. Luttig is a lifelong conservative. It is not personally convenient for him to come to the conclusions he has. It is much more convenient for a conservative to conclude that our existing institutions, representing the wisdom of tested experience, are functioning relatively well.
And Luttig is hardly the only conservative running around saying how alarming Trumpism is. There are enough of them, in fact, that a special term has arisen to refer to such individuals: never-Trump conservatives. It has long been a key insight of mine that when there is a significant group of individuals asserting something they are ideologically inconvenienced by, that something is almost certainly a relevant political fact that should be paid serious attention to.
Published at 17:40 on 30 March 2023
And I am very happy to be wrong. It means the disgusting precedent that the president is above the law is looking more and more like a has-been of a precedent. It means the danger of a transition to fascism is distinctly less than it was just this morning.
Nobody won USD $100 out of it, by the way, because nobody took me up on my offer. Which, of course, is now void now that the outcome is no longer in doubt.
Now we get to see a number of other questions be answered:
This is a precedent-setting moment, but there were really two options here:
Published at 20:45 on 27 March 2023
There are basically two types of Republicans left these days:
That’s it. There are effectively no other types of Republican. The ones who couldn’t stand Trump have, basically to a last person, left the party.
Therefore, if by some miracle DeSantis wins the primary, Trump will yell “Rigged!” and the Type 1 Republicans will either cast write-in, independent, or third-party votes for Trump, or sit at home and sulk on Election Day. Either action dooms the Republicans, who cannot afford to lose any votes.
So if DeSantis wins the primary, the Republicans lose the general. Guaranteed.
While if Trump wins, the odds are still against them (Trump has high negatives), but still not as dismal as if DeSantis wins. To reiterate, Trump managed to win once already, and he could do it again.
Published at 09:46 on 25 March 2023
You can find a lot of pundits arguing that DeSantis is even more dangerous than Trump, such as this one, this one, and this one. While it is clear that DeSantis has authoritarian, fascistic tendencies, and is more intellectually mature, and thus better able to strategize, than Trump, in one important aspect he falls far short of Trump. It is my contention that this aspect is a limiting factor that makes DeSantis less of a threat.
That aspect is capitalism. Specifically, the authoritarianism of capitalism, the contradiction between that authoritarian and the value of liberty professed by post-Enlightenment liberalism, Trump’s possession of capitalist status, and DeSantis’ lack of it.
Any capitalist democracy is in fact a weird amalgamation of public democracy and private fascism. The latter is not just socialist hyperbole; the model for the authoritarian fascist state was in fact the capitalist corporation. Mussolini called his system the corporate state for a reason.
But this presents a contradiction: could not workers use the democracy and openness of liberal society to advocate for post-capitalist economic systems that dispense with the arbitrary authority of the capitalist boss? And in fact this is not merely theoretical: every capitalist democracy, with the notable exception of the USA, has had a strong social democratic/democratic socialist party, that got where it is precisely by arguing based on this contradiction.
The solution is to indoctrinate people, starting in early childhood, as to the virtuousness and indispensability of the capitalist boss, whose authority must be held to be an unquestionable good. Instead of being a threat to liberty, it is held to be an expression of liberty; the capitalist must have the liberty to use his wealth to manipulate as many other individuals as possible.
Only the capitalist gets this special treatment. When a politician tries to coerce others, it is generally considered (and rightly so) to be oppression, not liberty.
It is into this value system that Donald Trump stepped. He actually wasn’t all that big a capitalist or that great at the capitalist game, but his media image was that he was; one can say that in politics, appearance Trumps substance. Perhaps even more critically, his media image is a celebration of the authority of the capitalist. Just ask yourself what the most famous two-word phrase from his role as the star of The Apprentice was if you have any doubts about my assertion.
By contrast, Ron DeSantis is an individual who has not spent so much as a single day of his adult life as the owner or manager of a business. He hasn’t even held a private sector job! He went from law school to a career in the military to a career as a politician. It might have been possible for him to avoid this problem if he had an acting career as a capitalist somewhere on his résumé, but alas for him he does not.
So when DeSantis acts authoritarian, or proposes doing so on the campaign trail, he is just a politician promising authoritarianism competing against a businessman promising same. He’s going to lose that contest.
Trump, by contrast, just might win it all again. He did once already, after all. Therefore Trump, and not DeSantis, is the more dangerous one.
Published at 09:04 on 22 March 2023
In the least surprising news since the Sun rising on time, Trump wasn’t indicted yesterday. This is for the simple reason that he will not be indicted. The system acts to protect the most powerful, even when those most powerful threaten the system itself. It is that rotten and corrupted.
I mean, really now, I am supposed to believe that a relatively minor hush money payment to a porn star is an indictable offense for someone whom the system refuses to indict for a fucking coup attempt? How is that the least bit plausible?
Get it straight. Trump was not indicted for the events of January 6th, he won’t be indicted for paying hush money to Stormy Daniels, and he won’t be indicted for anything else.
I am sorry that it greatly inconveniences some of you to believe the state of democratic decline in the USA is as severe as I have written it is here, time and time again, but all the best available evidence is thoroughly consistent with my thesis.
The old Republic has basically already died at this point. It is merely that the corpse has not started bloating and stinking yet, so many can still be in denial about it.
P.S. Nobody took me up on my USD $100 offer. That alone should serve as evidence that even though many won’t openly admit I am right, in the depths of their heart they know I probably am. Money talks, bullshit walks.