How I make my YouTube videos - 100K Office/Studio Tour

Early this year, I passed a major milestone on my YouTube channel—100,000 subscribers!

I've had a channel since 2006, but never really devoted time to it until last year, and I'm blown away by the positive response I've gotten publishing videos on Raspberry Pi, Kubernetes, Ansible and more.

How I make my YouTube videos - 100K YouTube subscriber silver play button

To celebrate the milestone, I created a 'how it's made' video where I go behind the scenes and show how I made—from start to finish—my Argon One M.2 Raspberry Pi Case review video.

How I livestream with OBS, a Sony a6000, and a Cam Link

.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

A few weeks before this year's pandemic started affecting the US, I started live-streaming on my YouTube channel.

In the past, I've helped run live streams for various events, from liturgies in a cathedral to youth events in a stadium. (I even wrote a blog post on the topic a few weeks ago.)

For larger events, there was usually a team of camera operators. We also had remote control 'PTZ' cameras, and dedicated streaming hardware like a Tricaster.

For my own livestreams, I had a very limited budget, and only one person (me) to operate the camera, produce the live stream, and be the content on the live stream!

How to livestream Masses or other liturgies on YouTube

Note: I also posted a video with more information and a demonstration of how I live stream.

I've been working on video streaming on a tight budget for years, and have scrambled to get live-streaming going for some liturgies on short notice, so I figured I'd put together a video showing a few options from 'cheap using what you already have' to 'a little more expensive but within a reasonable budget'. Note that if you plan on having regular video streams for the long term, it's better to invest in a proper streaming system with remote-controlled PTZ cameras and hard-wired connections.

All of the options in this post will require at least a smartphone or computer (laptop preferred) with a good WiFi connection. Ideally, you can also plug your phone or laptop into power so the battery doesn't run out in the middle of the stream

The Raspberry Pi 4 needs a fan, here's why and how you can add one

December 2020 Update: Lo and behold, the Pi Foundation tacitly acknowledges the Pi needs a fan in the official case, because now they sell the Case Fan!

The Raspberry Pi Foundation's Pi 4 announcement blog post touted the Pi 4 as providing "PC-like level of performance for most users". The Foundation even offers a Raspberry Pi 4 Desktop Kit.

The desktop kit includes the official Raspberry Pi 4 case, which is an enclosed plastic box with nothing in the way of ventilation.

How to focus stack a set of images in Photoshop

I recently rented a Nikon 105mm VR Macro lens for a weekend, and wanted to experiment with different types of macro photography.

One of the things I was most interested in was focus stacking. See, there's a problem with macro photography in that you're dealing with a depth of field measured in millimeters when reproducing images at a 1:1 ratio, even stopped down to f/8 or f/11. And, wanting to avoid diffraction at higher apertures, there's no way to take a straight-out-of-camera picture of a 3D object that's sharp from front to back.

One frequent subject of my close-up photography is the Raspberry Pi single board computer. You can see the problem when taking just one photo:

Converting a non-Composer Drupal codebase to use Composer

A question which I see quite often in response to posts like A modern way to build and develop Drupal 8 sites, using Composer is: "I want to start using Composer... but my current Drupal 8 site wasn't built with Composer. Is there an easy way to convert my codebase to use Composer?"

Convert a tarball Drupal codebase to a Composer Drupal codebase

Unfortunately, the answer to that is a little complicated. The problem is the switch to managing your codebase with Composer is an all-or-nothing affair... there's no middle ground where you can manage a couple modules with Composer, and core with Drush, and something else with manual downloads. (Well, technically this is possible, but it would be immensely painful and error-prone, so don't try it!).

Use Ansible's YAML callback plugin for a better CLI experience

Ansible is a great tool for automating IT workflows, and I use it to manage hundreds of servers and cloud services on a daily basis. One of my small annoyances with Ansible, though, is it's default CLI output—whenever there's a command that fails, or a command or task that succeeds and dumps a bunch of output to the CLI, the default visible output is not very human-friendly.

For example, in a Django installation example from chapter 3 of my book Ansible for DevOps, there's an ad-hoc command to install Django on a number of CentOS app servers using Ansible's yum module. Here's how it looks in the terminal when you run that task the first time, using Ansible's default display options, and there's a failure:

Ansible 2.5 default callback plugin's not quickly digestible—and this is one of the shorter error messages I've seen!

Using Ansible through Windows 10's Subsystem for Linux

Ever since I heard about the new 'Beta' Windows Subsystem for Linux, which basically installs an Ubuntu LTS release inside of Windows 10 (currently 14.04), I've been meaning to give it a spin, and see if it can be a worthy replacement for Cygwin, Git shell, Cmder, etc. And what I was most interested in was whether I could finally point people to a more stable and friendly way of using Ansible on a Windows workstation.

In the past, there was the option of running Ansible inside Cygwin (and this is still the best way to try getting Ansible working in an older Windows environment), but this always felt kludgy to me, and I hated having to recommend either that or forcing Windows users to do a full Linux VM installation just to run Ansible commands. I finally updated my PC laptop to the latest Windows 10 Anniversary Update, and installed the Windows Subsystem for Linux, and lo and behold, Ansible works!

Remove a single Certbot (LetsEncrypt) certificate from a server

I've been using Certbot to generate and renew Let's Encrypt certificates for most of my smaller sites and services, and recently I needed to move a site from one server to another. It was easy enough to build the new server, then generate the certificate on the new server and use it in Apache or Nginx's configuration.

However, on the old server I no longer wanted to have the old certificate get renewed every week/month/etc. during the certbot-auto cron runs, so I looked to see if there was a way to simply have Certbot delete a certificate. It turns out there's not, but there is an issue—adding -delete option to remove the cert files—to add this functionality.

How I record my own conference presentations

At this year's php[tek] conference, I decided to record my own sessions (one on a cluster of Raspberry Pis, and another on tips for successfully working from home). Over the years, I've tried a bunch of different methods of recording my own presentations, and I've settled on a pretty good method to get very clear audio and visuals, so I figured I'd document my method here in case you want to do the same.