alternative social media, a six month report

Last July I wrote about moving away from the Big Three social media platforms, Facebook, Instagram, and Twitter. Yes, yes, there are others out there, but from my perspective that’s what I was on and those mattered to me. Since then I’ve deleted my Twitter account and put both my Facebook and Instagram accounts in private mode and have dropped down to checking on each no more than once/month, if that often.

The two new accounts, one on Bluesky and the other on Mastodon, have proven to be every bit as good as advertised. I really like the web interfaces on both.

Bluesky Web page — @whb.bsky.social

The Bluesky web interface is just fine, I just find it odd that it looks for the most part like the mobile interface, with the left and right side panels hidden but available as a single click on the app. The dog’s name, by the way, is Charlie and she’s a she.

Mastodon Web page — @wbeebe@mastodon.cloud

The Mastodon web page is a lot more complicated with four vertical columns. Again, you can see the same thing on the mobile app with simple touches on the main view, which on the web page is the second column from the left. It’s not a problem for me at all. What’s interesting with Mastodon is that you can have validated web locations, which in my case is this website and my GitHub location.

One key feature of both social platforms is the lack of an “engagement algorithm.” I don’t get anything I haven’t signed up for, and if I don’t like some replies to the accounts I do follow, it’s simple to just mute those replies (and the repliers) and not be bothered from there on out.

I’m planning to keep these accounts indefinitely. I can’t remember the last time before I joined Bluesky and Mastodon where I enjoyed being on social media as much as I enjoy being on these two platforms.

Links

it’s time for me to move away from social media

report #4 raspberry pi 5 — adding a pushbutton switch

Raspberry Pi 5 GPIO connected to LEDs and a push button switch

If it’s not obvious by now I’m sticking with Ubuntu 23.10 on my RPi 5 SBCs, so I won’t be including it in the post title anymore. In this report I add additional functionality as well as clean up the code. The simple circuit now has a push button that connects pin GPIO3 to ground when it’s pressed. This will trigger a button closure event that is monitored and used by the gpiozero Button instance in the Python script.

#!/usr/bin/env pythonfrom gpiozero import LED, Buttonfrom time import sleepfrom datetime import datetimefrom signal import signal, SIGINT, pausefrom sys import exitimport asyncioleds = [LED(22), LED(23), LED(24), LED(25)]button = Button(3)def sigint_handler(signal_received, frame):for led in leds:led.off()print()exit(0)signal(SIGINT, sigint_handler)def flash_leds():while button.is_pressed:for led in leds:led.on()sleep(.04)led.off()sleep(1)for led in reversed(leds):led.on()sleep(.05)led.off()sleep(1)def print_when_pressed():print(f"{datetime.now()}: Button pressed")flash_leds()def print_when_released():print(f"{datetime.now()}: Button released")for led in leds:led.off()button.when_pressed = print_when_pressedbutton.when_released = print_when_releasedpause()

The Python code used to flash the four LEDs in the circuit was cleaned up a bit by creating an array of the LEDs, and then the flash_leds function tightened up using for loop iterators as well as Python’s built-in reverse function, so that the lights flash in one direction, pause, then flash in the reverse direction. Finally, instead of a blind test for true, we check to see if the button is pressed and then flash if it is.

To make the code a bit more interesting the button was given a pair of callback functions to work with, one to print out when the button is pressed, and one when it’s released. This is a demonstration of the capability, nothing more. I put in in because I’ve seen the question asked about how to use this functionality on various fora. If you read the documentation (see the link below) it’s very simple, but none-the-less, here’s what I did after reading the fine manual online. For a lot of tasks, gpiozero Just Works. The fact that it works under Ubuntu 23.10 on the Raspberry Pi is the primary reason I’m sticking with Ubuntu on the Raspberry Pi.

Links

Latest gpiozero documentationhttps://gpiozero.readthedocs.io/en/latest/index.html

report #3 on using ubuntu 23.10 with a raspberry pi 5 — blinkin’ lights