Welcome to the lab.

Better YouTube thumbnail images

[Tweet : ADN : nvALT]

This is an in-case-you-didn’t-already-know tip, and is probably common knowledge to anyone who started writing YouTube scripts after v3 of the YouTube API came out. The gist is that in addition to the tiny thumbnail images that have always been available at a url containing the video id, you can also get a range of qualities and sizes.

Here’s an example url that will grab the largest image size available for video id M5avz98UJXM:


The quality/size is specified in the name of the requested JPG. Other options include:

  • default.jpg (120x90 pixel default thumbnail)
  • mqdefault.jpg (320x180)
  • hqdefault.jpg (480x360, letterboxed)
  • sddefault.jpg (640x480, letterboxed)
  • 0, 1, 2, or 3.jpg (small start, middle, and end frame thumbnails)

The default thumbnail can be set on your own videos using the video dashboard in YouTube. For other people’s videos, all of the above options will return whatever they’ve set or YouTube has chosen automatically. I haven’t seen an option to get higher quality versions of the 0-3 frames.

Note that the maxresdefault.jpg and mqdefault.jpg options do not have letterboxing (black stripes at top and bottom) added, but hqdefault.jpg and sddefault.jpg do.

I updated the JavaScript portion of my Lazy YouTube plugin for Jekyll (details) to use maxresdefault.jpg a while ago. I’d love to find an option to load @1x and @2x sizes based on screen resolution detection, but for now it’s max quality or bad quality.

Web Excursions for February 05, 2016

[Tweet : ADN : nvALT]

This week’s web excursions brought to you by the January 2016 Mac Bundle from Creatable.

My Bathroom Mirror Is Smarter Than Yours — Medium
This is by far the best bathroom augmentation I’ve seen since installing my (inexpensive and quite wonderful) dual rainfall shower head.
I’m a fan of creative placeholder images when mocking up websites in the browser. This service offers a bit of control over content, overlay text (plus font and color), size, and even image effects.
A Beginner’s Guide to Kerning Like a Designer – Design School
For designers, a great guide to kerning basics.
A CLI interface for the Pinboard API. I built something similar but never published it. It was mostly for the purpose of easily renaming and merging tags from the command line. My old friend Elliott Cable made a more polished one with broader usage.
An easy system for building Git commits as you work and then running a commit without having to edit the commit notes. I’m also intrigued by the idea behind Commit Comments. (Via OneThingWell)

Check out the January 2016 Mac Bundle with 10 great Mac apps for $15.

Slogger with Day One 2

[Tweet : ADN : nvALT]

Day One 2 is out1, and I’m very happy to say that the team there has offered an easy way to keep Slogger working with it. If you’re not familiar with either, check out Day One on the App Store and Slogger in my projects.

Previously, Day One used a folder of XML files as the entries in a journal. It’s moved to a database format now, but there’s an “Auto Import” folder created for each journal. Because Slogger was built around the XML pile, some of the features that allow searching and modification of journals will stop working, but I doubt many people besides me used those much anyway.

To get Slogger working with the new version, you simply need to change your storage path directly to the auto import folder (stop using the “icloud” value as that won’t work anymore). Here’s an example:

storage: /Users/[username]/Library/Group Containers/5U8NS4GX82.dayoneapp2/Data/Auto Import/Default Journal.dayone/

The /Library/Group Containers/5U8NS4GX82.dayoneapp2/Data/Auto Import/Default Journal.dayone/ portion should remain constant, so only your system username needs editing.

Note that only the Default Journal is currently available for auto import. I’m hoping that a future version will be able to import to specific secondary journals using the same method.

I’ll look further into incorporating some of the newer features (such as multiple images, which are supported in both Tweets and Day One 2), but for now that one change will keep your current system running.

  1. Yes, I think they’re as conflicted about the naming convention as you are.

Recap: January

[Tweet : ADN : nvALT]

Some posts of interest from January:

First, thanks to the sponsors from January:

Workflows for animated GIFs (Jan 19th)
If you want to use animated GIFs on a blog, or already are, here are some tips for capturing, editing, and optimizing them. I updated the GIF tag plugin for Jekyll as well.
Quick reminders from Terminal (Jan 22nd)
A Bash script for creating quick, short-term alerts/reminders while working in Terminal.
HoudahSpot 4.1 (Jan 25th)
My very late review of the update to this excellent file searching tool for Mac.
Macstock 2016 (Jan 26th)
I’m going, are you?

Recaps are a quick, curated summary of each month’s posts on this site. You can keep up on the site with RSS, or subscribe specifically to the Recaps and get monthly summaries in digest format.

Macstock 2016

[Tweet : ADN : nvALT]

I always loved attending Macworld, and almost entirely because of the people I’d meet and friends I’d see. Until yesterday, I thought the days we could all get together for some Mac love with a ton of my favorite Mac people were over. Then I was informed that a new conference (this is the second year) called Macstock was running. I’m so out of the loop.

It’s close enough to me that I can drive (Chicago area), and the price for a 2-day pass and ticket for the BBQ is very reasonably priced at $150. Plus, there’s early bird pricing until February 29th, using the code macstock50off to save $50.

The speaker list is wonderful:

  • Victor Cajiao (Terratech Podcast)
  • Dr. Robert Carter (the Tech Doctor Blog And Podcast)
  • Wally Cherwinski (Magic 22)
  • Adam Christianson (The MacCast)
  • Melissa Davis (themacmommy)
  • Dave Ginsburg (Suburban Chicago Apple Users)
  • Allison Hartley (The Tech Doctor Blog And Podcast)
  • Matt Hillyer
  • Chuck Joiner (MacVoices)
  • Julie Kuehl
  • Don Mcallister (ScreencastsOnline)
  • Tim Robertson (TechFan)
  • Mike Schmitz
  • Kirschen Seah
  • Guy Serle (mymac.com Podcast)
  • Allison Sheridan (nosillacast)
  • Jodi Spangler (Lakeshore Mac)

The conference runs from July 16th–17th. I’ve already booked my ticket and reserved lodging. The more the merrier, so go grab a ticket and join me!

HoudahSpot 4.1

[Tweet : ADN : nvALT]

I’m months late in writing about HoudahSpot 4.1, which is odd because it adds the one feature I’d always wanted: the ability to save HoudahSpot searches as Finder Smart Folders. I’ll get to that in one second. Full disclosure, Houdah has sponsored this blog, but this review is 100% unpaid and prompted by love.

For people who haven’t used HoudahSpot before, it’s a spectacularly powerful way to locate, analyze, and work with all of the files on your Mac. It’s everything Spotlight can do, amplified by at least double.

I wrote about the 4.0 release when it came out, but here’s a short list of features I love:

  • Visual criteria builder similar to Finder search, but with more flexibility (hundreds of options)
  • Snippets: Individual search criteria (or groups of criteria) that you can save and then drag into new searches
  • Search multiple locations at once, and exclude folders within selected locations
  • Quickly create searches using familiar Spotlight syntax (e.g. “kind:PDF date:today”) and then extend them
  • Automation via AppleScript and integration with LaunchBar, Alfred, Butler, and more

I backhandedly requested the ability to save searches as Smart Folders a while back, and developer Pierre Bernard was gracious enough to include the feature in v4.1. Because HoudahSpot provides search capabilities beyond what Spotlight does by default, not all of the criteria can be exported as Smart Folders, but a majority of my common searches work wonderfully. It provides both an easy way to create Smart Folders, and easy access to the results right from within Finder.

Most of the other updates in 4.1 are refinements to some of the existing features. For me, the handiest of these is the ability to disable individual search criteria. In combination with HoudahSpot’s template features, it allows you to have a set of “potential” criteria in a template that you can enable as needed, rather than having to create multiple templates for efficient searching.

The built-in text preview can now jump through highlighted matches within the text, which makes HoudahSpot not only great for finding files, but also for drilling all the way down to the info you need within a file. 4.1 also brings additional options when searching by file extension or file type (“kind” Spotlight searches).

HoudahSpot has a feature that allows search results to be copied as Tab Delimited text, and that option now includes column headers for easy incorporation into spreadsheet documents or other parsing.

If you’re a HoudahSpot user, you’re probably already enjoying these refinements (as it’s a free upgrade for v4 owners). If you haven’t tried it, there’s a free trial available and I highly recommend it for anyone who’s accumulated enough data on their Mac to spend time in Spotlight tracking it down (which I think is anyone who’s had a Mac for more than 6 months, but I don’t know how “normal” people work…).

HoudahSpot 4.1 is $29 US for a single license. Find more info and grab the free trial at Houdah.com.

Quick reminders from Terminal

[Tweet : ADN : nvALT]

Here’s a script for creating simple delayed alerts from Terminal. It doesn’t use system notifications, Calendar, or Reminders, just the sleep, afplay, and say commands (making it Mac-only), and optionally LaunchBar large text display.

To use it, just save the script as dontforget in your path and make it executable. Then run a command such as dontforget take a break and stand up in 30m to create a reminder to stretch in half an hour. Your computer will ding and say “take a break and stand up” when the timer runs out. If you set DF_LAUNCHBAR to true, it will also provide a visual alert using LaunchBar’s large text display. In your bash profile, add the line export DF_LAUNCHBAR=true.

It parses a certain amount of natural language, so you can run dontforget to let my dog inside in 10m and after 10 minutes it will say “let your dog inside.”

You can cancel the last added reminder with dontforget cancel. Running dontforget with no arguments will list the upcoming alerts.

Note that this just uses the Unix sleep command to background the reminder for a set interval. If you quit the Terminal session, you won’t get your reminder. It’s designed for short term use while you’re working, not for important, farther-future dates.

Grab the script from this gist.

Update: Via Nick in the comments, a version for Linux using ogg123 and espeak.