Skip to main content

Senior WordPress platform developer. Open web / Music. DJ (under @CloudseerDJ). Tall Dutch guy.

twitter.com/svandragt

github.com/svandragt

mixcloud.com/cloudseer

macOS doesn't use a swap file when running from an external SSD

1 min read

So I was seeing graphical glitches, freezes and Activity Monitor indicated memory pressure. Turns out macOS doesn't mount a swap file, as I am running from an external SSD install.

This is easily fixed. I can't believe it is a problem though.

By the way I had to change the end of line 4 (because the command in the Ask Different answer returned multiple results) to:

VM_VOLUME=$(/usr/sbin/diskutil list | grep "VM" | awk 'NR==1{print $7;exit }')

It's easy to add the launch item using Lingon X and start it with sudo ./mountvm.sh for the current session.

Stop OpenPGP passphrase prompting on login

1 min read

As a security conscious person I setup my OpenPGP keys with a passphrase, however on OpenSUSE Leap 15 this causes a login prompt to appear that delays the network connection from initiating. The same issue also blocks software updates and means a browser restart due to DNS cache stopping connections to websites. This is fairly annoying.

It turns out that this can be fixed by sharing the network connection via Connections > open the connection > General Configuration > All users may connect to this network. This causes NetworkManager to cache the required  authorization tokens (this is my understanding).

Note that other software such as Kontact might set a daemon to startup by default, causing the same prompt. This can be unticked in its settings.

If everything else fails, then you could remove the passphrase for the PGP key but this is not recommended as this means someone can take on your identity should your key be exposed for any reason.

On doing good work

1 min read

Aka why I keep having bad customer experiences.

Assuming the idea of a business (and us when we represent it) is to stay in business then it should aim to make the customer (a fellow person) happy as happy people are loyal.

This means the person needs to understand what the other person wants from the transaction to be happy. It also means both parties must understand the details of the transaction to know how this makes them happy. The product must be understood  to ensure maximum happiness.  And finally if the product or service offered is not making the customer happy then it’s the responsibility of a good business to help the customer find happiness another way. 

Doing good business is about understanding people, and having empathy. 

This is also why why car dealerships keep disappointing me. Stop pushing product. Start making people happy. 

Updating Known

1 min read

I wrote a quick and dirty upgrade.sh script that sits in the parent directory of my Known site. I'm using the following directory structure:

config.ini  
Uploads/
known/
upgrade.sh 

The offical Known git repository is checked out in known/. The config.ini and Uploads folder have been moved to the folder to sit alongside it.

The contents of the upgrade.sh script are as follows:

rm -rf old
cp -R known old
cd known
git pull
cd ..
ln -sf `pwd`/config.ini `pwd`/known/config.ini
ln -sf `pwd`/Uploads `pwd`/known/Uploads

It's not elegant but it makes updating to the latest Known changes pretty seamless.

Spotify how to hide the "Find friends" bar

1 min read

On Linux operating systems, Spotify does not always show the file and view menus. This makes it harder to hide the "Find Friends" bar as there is no close button on the sidebar itself.

However there's another way: Click on the chevron in the top right corner next to your spotify username, then on Settings > Display Options > untick Show Friend Activity.

Install Python 3.7.1 on OpenSUSE Tumbleweed

1 min read

After another hour of resolving issues with pyenv and a personal project that requires Python 3.7 I thought it best to note the steps I used to install Python 3.7.1 on OpenSUSE Tumbleweed:

# Install requirements for compiling Python
sudo zypper in zlib-devel bzip2 libbz2-devel libffi-devel libopenssl-devel readline-devel sqlite3 sqlite3-devel xz xz-devel 

# Compile Python
cd ~/Downloads
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz
tar xf Python-3.7.1.tar.xz
cd Python-3.7.1
./configure
make

# AltInstall ensures 3.7.1 is installed alongside your system python
sudo make altinstall

# Fix dynamic library loading
sudo ln -s /usr/local/lib64/python3.7/lib-dynload /usr/local/lib/python3.7/lib-dynload

I've updated the Common build problems · pyenv/pyenv Wiki page to reflect the updated required packages. Thanks to Andrew Cooke for the dynamic library fix

The Milk Chocolate Peanut

1 min read

Aaron Gustafson wrote back in 2008:

Getting into the progressive enhancement mindset is quite simple: just think from the content out. The content forms the solid base on which you layer your style and interactivity. If you’re a candy fan, think of it as a Peanut M&M:

The Chocolatey Layers of Progressive Enhancement

JavaScript first websites have the peanut inside out!

Hide Trackbacks 1.1.3

1 min read

Hide Trackbacks is a WordPress plugin that hides pingbacks and trackbacks from your website comments.

I’ve updated the plugin to indicate it works correctly with WordPress 4.9.9 and earlier. It's now also up to PHP 7.2 compatible, and has a number of small fixes to improve code legibility and alignment with the WordPress Coding Standards.

Transitioning to Gutenberg

1 min read

The WordPress Project says:

The Classic Editor plugin will be officially supported until December 31, 2021.

[...]

Since the Classic Editor plugin is central in this transition, we are considering including it with upgrades to WordPress 5.0.

In the context of my professional work with WordPress it would be beneficial to see the Classic Editor plugin be included by default into the installation package. This would signal to plugin and theme developers that we are in a transition phase but supporting the existing installations, until Gutenberg is more fully accepted by the wider community. Not doing do could put pressure on smaller developers to just test their updates for Gutenberg only, resulting in a lot of broken sites or a security nightmare where people won’t be able to update to the latet versions of WordPress or their plugins until the teams and processes are ready.

Taking back control

2 min read

Recently, I've come to the conclusion that it's the nature of realtime social media to cause drama and upset. In the search for ever increasing thirst for gossip, instant reactions are stimulated so heavily that  there is no time to research or read about the context of a story, and open discussion isn't possible when group mentality means we must be outraged or be part of the problem.

At the same time, people have never engaged so little with web content, being the metaphorical frogs in the pressure cooker of Facebook and Twitter that is modern society. We are the product that is monetised by the advertising dollars that demand page views in a broken system of inflatable viewership figures.

In the music scene, the illusion of hyper promotion and like-networking results in a feed of people and content I have little interest in following, in the hope that they will listen to what I have to say.

Pointless and bad for my health. So therefore I'm distancing myself more from social media now.

If you want to follow what I have to say about technology, read vandragt.com. If you are interested in my music visit cloudseer.me. They will soon have a mailinglist and RSS feeds without advertising and like buttons.