h1

Proofuction

March 12th, 2024
For some time now I have been using a new word “Proofuction” which is a portmanteau of “Proof of concept” and “Production”. It describes a system which is designed as a proof of concept that is immediately deemed so useful that it is put straight into production without any effort to productionize it, i.e. make it robust, usable, secure, scalable, maintainable, and/or recoverable.
h1

Augmenting my Mastodon instance with S3-compatible object storage

December 28th, 2022

I run my nerd.megahuge.com personal Mastodon instance on an inexpensive virtual private server such as the ones you can find via LowendBox.com. The CPU and memory specs are absolutely more than enough to manage a single-user instance, however Mastodon’s cached media files can grow into the tens of gigabytes, even with cron jobs removing any cache over 3 days old and culling accounts on a regular basis.

I found these instructions very useful in helping me to move my Mastodon public/system folder to S3-compatible object storage. Since I have modest needs and the object storage I chose doesn’t charge egress fees, I didn’t go to the extra length of putting an nginx cache/proxy in front of it.

Finally, I installed Restic to back up my entire VPS to a separate S3 bucket. All in all, a couple of hours well spent!

h1

Understanding Mastodon Birdsite Gateways

November 18th, 2022

I see a lot of people on Twitter up in arms that there are “impostor” Mastodon accounts pretending to be them, rushing to report this “abuse” and decrying the criminality of reposting their tweets without their consent. It’s a bit confusing to people who are not familiar with the Fediverse, but I’ll try to clear it up.

Some people who get a Mastodon account choose to quit using Twitter. I’m not sure why people think this has to be an either/or choice when they can easily maintain both, but sure, do that if you like.

These ex-twitter folks sometimes still want to be able to see what certain people are saying on Twitter. Rather than signing into twitter to do that, they can ask a Twitter-to-Mastodon gateway to get the tweets for them and deliver them to their Mastodon feed.

There are a few servers in the Fediverse that provide this service. Most are named birdsite.xxx.xxx because the software is named Birdsite. All you have to do is subscribe to @twitter_username@birdsite.xxx.xxx and you will have a porthole out of Mastodon that can see the tweets of that user. This works for ANY twitter user. This is a connection directly to the actual feed from that twitter user, not pretending to be anything else, not inserting ersatz tweets, not stealing any identity.

To recap, Birdsite servers provide a service to Mastodon users allowing them to follow Twitter users. This service is also of benefit to the Twitter users as it gives them extended reach outside Twitter to the Fediverse while maintaining integrity of their identity and content.

As for the people complaining that these feeds are “unauthorized” or “rogue” or demanding “permission” be sought, I’m unclear why they tweet if not to be exposed to the widest possible audience. There seems to be a lot of comparison to re-publication of books or news articles, but I don’t follow the connection as tweets are not meant to be a scarce good so extending the range of a tweet does not reduce or impair the content provider’s ability to benefit, rather it improves it.

I will absolutely concur that there is a lot of confusion and the UI of a birdsite doesn’t do a lot to explain the situation clearly enough to stop non-technical, incurious or impatient people from jumping to nefarious conclusions.

Hope that helps.

h1

Coming Full Circle?

October 31st, 2022

A lot of people are wondering what to do. Twitter may have run its course, as its new Chief Twat flexes his tailfeathers early on, and the idea of a centralized social communication platform loses its shine.

Many have already sought refuge in the Mastodon fediverse – a federated network of twitter-like servers that approximates the familiar experience. Not wanting to miss the chance to reserve my preferred handle, you can find me there as @bashley@nerd.megahuge.com.

Others are waiting to see what comes of Jack Dorsey’s BlueSky social internet initiative with its AT protocol. In the long term, a shift in focus from platforms to protocols is the right technological direction, as best expressed in Mike Masnick’s great essay Protocols not Platforms.

Let’s not all forget, in the rush to find something shiny and new, that there is a mature, robust engine of distributed federation with a 23 and a half year patina of trustworthiness called RSS. If Google hadn’t killed their RSS reader 10 years ago and seriously affected its momentum, it may well have remained the prime way to propagate social information and connections. It’s not too late for a resurgence – don’t underestimate the power of simplicity.

I recommend you start using a newsreader (I use NewsBlur) and start subscribing to feeds. There’s no better place for leading edge information on RSS than Dave Winer’s Scripting.com, so I recommend that as your first subscription. Oh, and mine, too.

h1

Key to the door

March 28th, 2022

Not that I have been keeping up with blogging much of late, but it’s interesting to note that my blog is now old enough to drink in the USA.

h1

New Horizons

November 28th, 2019

You may have heard that I have joined the team of intrepid adventurers at Arctiq, where I’ll be doing my part Scouting Over the Next Hill into the rarefied air of new and exciting cloud technologies.

I’ll try to cross-post any new technology ramblings here for my doggedly loyal audience.

h1

Effective Script Naming

November 1st, 2017

The Task:

Find all scripts in a directory tree that contain a shebang (the first line of the script starts with a #! comment to tell it how to execute it), but the script is not set as executable, meaning the shebang is ineffective.

The Script:

#!/bin/sh
# $1 is the path to search
for file in $(find $1)
do
  if [ -f $file ]
  then
    if [ ! -x $file ]
    then
      head -n 1 $file | egrep "^#!" >/dev/null 2>&1
      if [ $? = 0 ]
      then
        echo $file
      fi
    fi
  fi
done

Naming the script
There is only one name for a script whose entire purpose is to generate a list of weak ineffective shebangs: whung

h1

Homemade Hummus

November 15th, 2016

I love making my own homemade hummus. It’s so simple.

Ingredients:

– Chick Peas (This usually takes about a 19oz can or not quite two 14oz cans)
– Tahini (it’s essentially sesame butter, just ask at the grocery store)
– lemon juice (real or concentrated)
– olive oil
– garlic
– water
– optional parsley

Instructions:

In a food processor with the sharp cutter blade, fill it about half way with chick peas.

Add tahini, about 1/4 to 1/3 the amount by volume of the chick peas.

Add crushed garlic (I like it quite garlicky, about three cloves) and if you like, a small handful of chopped up parsley.

Start blending on high. It will be pretty gloopy and mix slowly. As it slows down, add a couple of tablespoons of lemon juice and 2 or more oz of olive oil. It will start to speed up and then bog down again, at which point you add water carefully only until it comes up to speed and is just fluid enough to mix well.

At this point, I add more chick peas to bring the blender up to about 3/4 full, and then mix the hell out of that stuff for a few minutes. You want it smoooth, so add little bits of water until it’s just right.

Put it in a container with a tight sealing lid, and enjoy some of it warm and fresh, then put the rest in the fridge.

Enjoy!