Stalin, Trump, and the cult of personality

Великий Сталин — знамя дружбы народов СССР!

Great Stalin - banner of friendship of the peoples of the Soviet Union!

After reading about U.S. President Donald Trump’s “Number 1 fan”, Gene Huber, I was struck by the similarities between the adoration of Trump and that of Soviet leader, Josef Stalin. Throughout his tenure as General Secretary of the Communist Part of the Soviet Union, a cult of personality developed around Stalin. He was often called Великий Сталин (Great Stalin.) Propaganda posters depicted Stalin as a benevolent steward of the needs of the people.

A following similar to that of Stalin is emerging in the U.S. Gene Huber, a used car salesman from Florida left his business to promote Trump full-time. According to reports, Mr. Huber has a life-size cutout of Trump in his home and each day salutes the image and utters his adorations.^[Huber is reported to speak encouraging words to the Trump cutout: “Good morning, Mr. President. I pray for your safety today. I thank you for what you do and let’s have a great day. Thank you, sir."]

The similarities between Trump’s cult of personality and that of Stalin could not be more striking. But history points out a difference. Stalin had a complex and possibly conflicted view of the cult surrounding him. Privately he could be quite self-deprecating. Openly, too, he wrote that the cult of adoration was inconsistent with Marxist ideals. Trump’s need for adoration, on the other hand, knows no bounds. His non-stop campaign-style rallies, held long after his election represent little more than opportunities to solicit the adoration that his cult willingly offers.

Ultimately, Krushchev came to denounce the cult of personality on Stalin’s death. But the process of de-Stalinization required considerable efforts on the part of Party leadership. How much will it take to undo Trump’s hold over his cultish following?

A software debouncing class for rotary encoders

Rotary encoders are notoriously difficult to get right. Although I haven’t used this new encoder class yet, it looks very interesting. From active Teensy forum user Theremingenieur, it allows initialization with upper and/or lower limits. You can find the code in this thread.

Implementing a simple menu interface on OLED display

While working on a project to automate environmental control in our greenhouse, I needed to implement a menu interface on a small OLED display. In this sub-project, meant to test the concept, I’ve used a Teensy 3.1, a small I2C-driven 0.96" monochrome OLED display and a rotary encoder. Bill of materials: Teensy 3.1 - the Teensy 3.1 is no longer available, but you can easily find the compatible Teensy 3.

Carl Sagan's tools for detecting baloney

Carl Sagan’s “Baloney detection kit” is arguably more important now than ever. His 9 rules for critical thinking work for science and they can work to detect political baloney, too. Arguments from authority carry little weight — “authorities” have made mistakes in the past. They will do so again in the future. Perhaps a better way to say it is that in science there are no authorities; at most, there are experts.

Resetting the Syncthing index

I use Syncthing^[No, there’s no iOS client. I’m OK with that.] to keep my laptop, desktop, and workshop computers in sync.^[Why don’t I just use Dropbox like everyone else? I trust peer-to-peer syncing because I’m in control. I don’t know what Dropbox is up to.] At least 99.9% of the time it works perfectly. Rarely, it seems to choke because of some edge case that I’ve never been able to sort out.

Displaying Cyrillic fonts on a 128x64 OLED display

Recently I picked up a couple inexpensive 128x64 pixel OLED displays with an I2C interface. It turns out that displaying Russian text on these displays is not difficult. But it’s non-obvious. This is a brief description of how to make it work. First, there’s a variety of these little displays and they’re all seemingly configured a little differently. I used this device for this test. There are two options for libraries to simplify communicating with SSD1306 boards:

Reading data from Si7021 temperature and humidity sensor using Raspberry Pi

The Si7021is an excellent little device for measuring temperature and humidity, communicating with the host controller over the I2C bus. This is a quick tutorial on using the Raspberry Pi to talk to this device. If you are unfamiliar with the conceptual framework of I2C or how to enable I2C access on the Raspberry Pi, I suggest starting here. Otherwise, let’s jump in. You are probably working with the device mounted on a breakout board.

RF communication between Arduino Nanos using nRF24L01

In this tutorial I’ll go through a simple example of how to get two Arduino Nano devices to talk to one another. Materials You’ll need the following materials. I’ve posted Amazon links just so that you can see the items, but they can be purchased in a variety of locations. Arduino Nano 5V/16 MHz, or equivalent (Amazon) Kuman rRF24L01+PA+LNA, or equivalent (Amazon) About the nRF24L01+ The nRF24L01+ is an appealing device to work with because it packs a lot of functionality on-chip as opposed to having to do it all in software.