Recent Blog Posts

Apple's Photos for macOS taking forever to scan photos for People?

I recently migrated around ~50,000 photos and videos from Aperture to Photos (see my blog post on the process), and have also in a short amount of time upgraded my personal and work Mac laptops (both from older MacBook Airs to newer MacBook Pros).

On both of my new laptops—which were at least 3x faster than my older Airs—I noticed that Photos started completely fresh in its photo analysis for the 'People' album that shows everyone's faces. And after three weeks of seeing one of my CPUs stick around 100% all day every day (while plugged in), I started getting sick of this.

I would leave the Mac on all night, and check in the morning, and only 20-30 new faces would be recognized.

macOS Sierra Photos - People Scanned slow and stuck
Some days it seemed it would take forever...

Re-save all nodes of a particular type in an update hook in Drupal 8

I recently needed to re-save all the nodes of a particular content type (after I had added some fields and default configuration) as part of a Drupal 8 site update and deployment. I could go in after deploying the new code and configuration, and manually re-save all content using the built-in bulk operation available on the /admin/content page, but that would not be ideal, because there would be a period of time where the content isn't updated on the live site—plus, manual processes are fragile and prone to failure, so I avoid them at all costs.

In my Drupal 8 module, called custom, I added the following update hook, inside custom.install:

Can't upload more than 20 files using Media Image Entities in Drupal 8?

After migrating an older Drupal 6 site with 20,000 media items to Drupal 8, I found a strange problem with image uploads. On the Drupal site, using Image FUpload and Adobe Flash, I could upload up to 99 images in one go. On the new Drupal 8 site, I was only able to upload 20 images, even though I didn't see an error message or any other indication that the rest of the images I had selected through the Media Image upload form were not successfully added.

I could choose 21, 40, or 500 images, but only 20 were ever added to an album at any time.

There were no apparent warnings on the screen, so I just assumed there was some random bug in the Media Image Entity or Media module suite that limited uploads to 20 files at a time.

But due to an unrelated error, I glanced at the PHP logs one day, and noticed the following error message:

Testing redirections using Behat and the Behat Drupal Extension

One project I'm working on needed a Behat test added to test whether a particular redirection works properly. Basically, I wanted to test for the following:

  1. An anonymous user accesses a file at a URL like
  2. The anonymous user is redirected to the path

Since the site uses Apache, I added the actual redirect to the site's .htaccess file in the docroot, using the following Rewrite configuration:

<IfModule mod_rewrite.c>
  RewriteEngine on

  # Rewrite requests for /profile_images to public files directory location.
  RewriteRule ^ pictures/(.*)$ /sites/default/files/pictures/$1 [L,NC,R=301]

Testing with curl --head, I could see that the proper headers were set—Location was set to the correct redirected URL, and the response gave a 301. So now I had to add the Behat test.

Drupal VM Tips & Tricks - brief remote presentation for DrupalDC

Yesterday I presented Drupal VM Tips & Tricks at the DrupalDC meetup, remotely. I didn't have a lot of time to prepare anything for the presentation, but I thought it would be valuable to walk through some of the neat features of Drupal VM people might not know about.

Here's the video from the presentation:

Some relevant links mentioned during the presentation:

I returned my 2016 MacBook Pro with Touch Bar

tl;dr: After two weeks of use, I returned my 2016 13" MacBook Pro with Touch Bar and bought one with Function Keys instead. Read on for detailed Battery stress tests, performance tests, and an exploration of how Apple's botched this year's Pro lineup.

I've owned almost every generation of Mac desktop and laptop computers, and have survived many transitions: 680x0 to PowerPC, Classic Mac OS to OS X, to the PowerPC to Intel switch. I've also owned almost every generation of iPhone and iPad. I even maintain a huge list of all the Macs I've owned! I could justifiably be labeled an 'Apple fanatic'.

I use a Mac as my daily driver, and have rarely made a tech-related purchase I regretted. And I've never returned a Mac, until today.


Subscribe to Jeff Geerling's Blog